Asynchronous Parallel Coordinate Minimization for MAP Inference Ofer Meshi Google [email protected]

Alexander G. Schwing Department of Electrical and Computer Engineering University of Illinois at Urbana-Champaign [email protected]

Abstract Finding the maximum a-posteriori (MAP) assignment is a central task for structured prediction. Since modern applications give rise to very large structured problem instances, there is increasing need for efficient solvers. In this work we propose to improve the efficiency of coordinate-minimization-based dual-decomposition solvers by running their updates asynchronously in parallel. In this case messagepassing inference is performed by multiple processing units simultaneously without coordination, all reading and writing to shared memory. We analyze the convergence properties of the resulting algorithms and identify settings where speedup gains can be expected. Our numerical evaluations show that this approach indeed achieves significant speedups in common computer vision tasks.

1

Introduction

Finding the most probable configuration of a structured distribution is an important task in machine learning and related applications. It is also known as the maximum a-posteriori (MAP) inference problem in graphical models [Wainwright and Jordan, 2008, Koller and Friedman, 2009], and has found use in a wide range of applications, from disparity map estimation in computer vision, to part-of-speech tagging in natural language processing, protein-folding in computational biology and others. Generally, MAP inference is intractable, and efficient algorithms only exist in some special cases, such as tree-structured graphs. It is therefore common to use approximations. In recent years, many approximate MAP inference methods have been proposed [see Kappes et al., 2015, for a recent survey]. One of the major challenges in applying approximate inference techniques is that modern applications give rise to very large instances. For example, in semantic image segmentation the task is to assign labels to all pixels in an image [e.g., Zhou et al., 2016]. This can translate into a MAP inference problem with hundreds of thousands of variables (one for each pixel). For this reason, efficiency of approximate inference algorithms is becoming increasingly important. One approach to dealing with the growth in problem complexity is to use cheap (but often inaccurate) algorithms. For example, variants of the mean field algorithm have witnessed a surge in popularity due to their impressive success in several computer vision tasks [Krähenbühl and Koltun, 2011]. A shortcoming of this approach is that it is limited to a specific type of model (fully connected graphs with Gaussian pairwise potentials). Moreover, the mean field approximation is often less accurate than other approximations, e.g., those based on convex relaxations [Desmaison et al., 2016]. In this work we study an alternative approach to making approximate MAP inference algorithms more efficient – parallel computation. Our study is motivated by two developments. First, current hardware trends increase the availability of parallel processing hardware in the form of multi-core CPUs as well as GPUs. Second, recent theoretical results improve our understanding of various asynchronous parallel algorithms, and demonstrate their potential usefulness, especially for objective functions that are typical in machine learning problems [e.g., Recht et al., 2011, Liu et al., 2015]. 31st Conference on Neural Information Processing Systems (NIPS 2017), Long Beach, CA, USA.

Focusing on a smoothed objective function originating from a dual-decomposition approximation, we present a fully asynchronous parallel algorithm for MAP inference based on block-coordinate updates. Our approach gives rise to a message-passing procedure, where messages are computed and updated in shared memory asynchronously in parallel by multiple processing units, with no attempt to coordinate their actions. The reason we focus on asynchronous algorithms is because the runtime of synchronous algorithms is dominated by the slowest worker, which may cause the overhead from synchronization to outweigh the gain from parallelization. The asynchronous parallel setting is particularly suitable for message-passing algorithms, like the ones we study here. Our analysis is conducted under the bounded delay assumption, which is standard in the literature on asynchronous optimization and matches well modern multicore architectures. It reveals the precise relation between the delay and the expected change in objective value following an update. This result suggests a natural criterion for adaptively choosing the number of parallel workers to guarantee convergence to the optimal value. Additional analysis shows that speedups which are linear in the number of processors can be expected under some conditions. We illustrate the performance of our algorithm both on synthetic models and on a disparity estimation task from computer vision. We demonstrate 45-fold improvements or more when compared to other asynchronous optimization techniques.

2

Related Work

Our work is inspired by recent advances in the study of asynchronous parallel algorithms and their successful application to various machine learning tasks. In particular, parallel versions of various sequential algorithms have been recently analyzed, adding to past work in asynchronous parallel optimization [Bertsekas and Tsitsiklis, 1989, Tseng, 1991]. Those include, for example, stochastic gradient descent [Recht et al., 2011], conditional gradient [Wang et al., 2016], ADMM [Zhang and Kwok, 2014], proximal gradient methods [Davis et al., 2016], and coordinate descent [Liu et al., 2015, Liu and Wright, 2015, Avron et al., 2015, Hsieh et al., 2015, Peng et al., 2016, You et al., 2016]. The algorithms we study here are based on block coordinate minimization, a coordinate descent method in which an optimal update is computed in closed form.1 To the best of our knowledge, this algorithm has yet to be analyzed in the asynchronous parallel setting. The analysis of this algorithm is significantly more challenging compared to other coordinate descent methods, since there is no notion of a step-size, which is carefully chosen in previous analyses to guarantee convergence [e.g., Liu et al., 2015, Avron et al., 2015, Peng et al., 2016]. Furthermore, in most previous papers, the function which is being optimized is assumed to be strongly convex, or to satisfy a slightly weaker condition [Liu et al., 2015, Hsieh et al., 2015]. In contrast, we analyze a smooth and convex MAP objective, which does not satisfy any of these strong-convexity conditions. We focus on this particular objective function since optimal block coordinate updates are known in this case, which is not true for its strongly convex counterparts [Meshi et al., 2015]. We are not the first to study parallel inference methods in graphical models. Parallel variants of Belief Propagation (BP) are proposed and analyzed by Gonzalez et al. [2011]. They present bounds on achievable gains from parallel inference on chain graphs, as well as an optimal parallelization scheme. However, the algorithms they propose include global synchronization steps, which often hurt efficiency. In contrast, we focus on the fully asynchronous setting, so our algorithms and analysis are substantially different. Piatkowski and Morik [2011] and Ma et al. [2011] also describe parallel implementations of BP, but those again involve synchronization. We are particularly interested in the MAP inference problem and use convergent coordinate minimization methods with a dualdecomposition objective. This is quite different from marginal inference with BP, used in the aforementioned works; for example, BP is not guaranteed to converge even with sequential execution. Dual-decomposition based parallel inference for graphical models has been investigated by Choi and Rutenbar [2012] and extended by Hurkat et al. [2015]. They study hardware implementations of the TRW-S algorithm (a coordinate-minimization algorithm very similar to the ones we study here), where some message computations can be parallelized. However, their parallelization scheme is quite different from ours as it is synchronous, i.e., the messages computed in parallel have to be carefully chosen, and it is specific to grid-structured graphs. In addition, they provide no theoretical analysis 1

For a single coordinate this is equivalent to exact line search, but for larger blocks the updates can differ.

2

of convergence (which is not directly implied by TRW-S convergence due to different message scheduling). Schwing et al. [2011] and Zhang et al. [2014] also study dual-decomposition based parallel inference. They demonstrate gains when parallelizing the computation across multiple machines in a cluster. However, their approach requires the employed processing units to run in synchrony. Parallel MAP solvers based on subdifferential techniques [Schwing et al., 2012], have also been considered by Schwing et al. [2014] using a Frank-Wolfe algorithm. Albeit individual computations are performed in parallel, their approach also requires a synchronous gradient step. An alternative parallel inference approach is based on sampling algorithms [Singh et al., 2010, Wick et al., 2010, Asuncion et al., 2011]. However, the gains in runtime observed in this case are usually much smaller than those observed for algorithms which do not use sampling. Our work is thus the first to propose and analyze a fully asynchronous parallel coordinate minimization algorithm for MAP inference in graphical models.

3

Approach

In this section we formalize the MAP inference problem and present our algorithmic framework. Consider a set of discrete variables X1 , . . . , XN , and denote by xi ∈ Xi a particular assignment to variable Xi from a discrete set Xi . Let r ⊆ {1, . . . , N } denote a subset of the variables, also known as a region, and let R be the set of all regions that are used in a problem. Each region r ∈ R is associated with a local score function θr (xr ), referred to as a factor. The MAP inference problem is to find a joint assignment x that maximizes the sum of all factor scores, X max θr (xr ) . (1) x

r∈R

Consider semantic image segmentation as an example. Factors depending on a single variable denote univariate preferences often obtained from neural networks [Chen∗ et al., 2015]. Factors depending on two or more variables encode local preference relationships. The problem in Eq. (1) is a combinatorial optimization problem which is generally NP-hard [Shimony, 1994]. Notable tractable special cases include tree-structured graphs and super-modular pairwise factors. In this work we are interested in solving the general form of the problem, therefore we resort to approximate inference. Multiple ways to compute an approximate MAP solution have been proposed. Here we employ approximations based on the dual-decomposition method [Komodakis et al., 2007, Werner, 2010, Sontag et al., 2011], which often deliver competitive performance compared to other approaches, and are also amenable to asynchronous parallel execution. The key idea in dual-decomposition is to break the global optimization problem of Eq. (1) into multiple (easy) subproblems, one for each factor. Agreement constraints between overlapping subproblem maximizers are then defined, and the resulting program takes the following form,2 ! min δ

X r∈R

max θr (xr )+ xr

X

p:r∈p

δpr (xr )−

X

c:c∈r

δrc (xc )

≡ min δ

X r∈R

max θˆrδ (xr ) . xr

(2)

Here, ‘r ∈ p’ (similarly, ‘c ∈ r’) represents parent-child containment relationships, often represented as a region graph [Wainwright and Jordan, 2008], and δ are Lagrange multipliers for the agreement constraints, defined for every region r, assignment xr , and parent p : r ∈ p. In particular, these constraints enforce that the maximizing assignment in a parent region p agrees with the maximizing assignment in the child region r on the values of the variables in r (which are also in p due to containment). For a full derivation see Werner [2010] (Eq. (11)). The modification of the model factors θr by the multipliers δ is known as a reparameterization, and is denoted here by θˆrδ for brevity. The program in Eq. (2) is an unconstrained convex problem with a (piecewise-linear) non-smooth objective function. Standard algorithms, such as subgradient descent, can be applied in this case [Komodakis et al., 2007, Sontag et al., 2011], however, often, faster algorithms can be derived for a smoothed variant of this objective function [Johnson, 2008, Hazan and Shashua, 2010, Werner, 2009, 2

The problem in Eq. (2) can also be derived as the dual of a linear programming relaxation of Eq. (1).

3

Algorithm 1 Block Coordinate Minimization 1: Initialize: δ 0 = 0 2: while not converged do 3: Choose a block s at random t ), 4: Update: δst+1 = argminδs0 f (δs0 , δ−s 5: end while

t+1 t and keep: δ−s = δ−s

Savchynskyy et al., 2011]. In this approach the max operator is replaced with soft-max, giving rise to the following problem:   X X min f (δ) := γ log exp θˆrδ (xr )/γ , (3) δ

xr

r∈R

where γ is a parameter controlling the amount of smoothing (larger is smoother). Algorithms: Several algorithms for optimizing either the smooth (Eq. (3)) or non-smooth (Eq. (2)) problem have been studied. Block coordinate minimization algorithms, which are the focus of our work, are among the most competitive methods. In particular, in this approach a block of variables δs is updated at each iteration using the values in other blocks, i.e., δ−s , which are held fixed. Below we will assume a randomized schedule, where the next block to update is chosen uniformly at random. Other schedules are possible [e.g., Meshi et al., 2014, You et al., 2016], but this one will help to avoid unwanted coordination between workers in an asynchronous implementation. The resulting meta-algorithm is given in Algorithm 1. Various choices of blocks give rise to different algorithms in this family. A key consideration is to make sure that the update in line 4 of Algorithm 1 can be computed efficiently. Indeed, for several types of blocks, efficient, oftentimes analytically computable, updates are known [Werner, 2007, Globerson and Jaakkola, 2008, Kolmogorov, 2006, Sontag et al., 2011, Meshi et al., 2014]. To make the discussion concrete, we next instantiate the block coordinate minimization update (line 4 in Algorithm 1) using the smooth objective in Eq. (3) for two types of blocks.3 Specifically, we use the Pencil block, consisting of the variables δpr (·), and the Star block, which consists of the set δ·r (·). Intuitively, for the Pencil block, we choose a parent p and one of its children r. For the Star block we choose a region r and consider all of its parents. To simplify notation, it is useful to define per-factor probability distributions, referred to as beliefs:   µr (xr ) ∝ exp θˆrδ (xr )/γ . Using this definition, the Pencil update is performed by picking a pair of adjacent regions p, r, and setting:  1 t+1 t (4) δpr (xr ) = δpr (xr ) + γ log µtp (xr ) − log µtr (xr ) 2 P for all xr , where we denote the marginal belief µp (xr ) = x0 µp (xr , x0p\r ). Similarly, for the Star p\r update we pick a region r, and set: t+1 δpr (xr )

=

t δpr (xr )



log µtp (xr )

  Y t 1 t − · γ log µr (xr ) · µp0 (xr ) Pr + 1 0 0 p :r∈p

for all p : r ∈ p and all xr , where Pr = |{p : r ∈ p}| is the number of parents of r in the region graph. Full derivation of the above updates is outside the scope of this paper and can be found in previous work [e.g., Meshi et al., 2014]. The variables δ are sometimes called messages. Hence the algorithms considered here belong to the family of message-passing procedures. In terms of convergence rate, it is known that coordinate minimization converges to the optimum of the smooth problem in Eq. (3) with rate O(1/γt) [Meshi et al., 2014]. In this work our goal is to study asynchronous parallel coordinate minimization for approximate MAP inference. This means that each processing unit repeatedly performs the operations in lines 3-4 3

Similar updates for the non-smooth case (Eq. (2)) are also known. Those are easily obtained by switching from soft-max to max.

4

of Algorithm 1 independently, with minimal coordination between units. We refer to this algorithm as APCM – for Asynchronous Parallel Coordinate Minimization. We use APCM-Pencil and APCM-Star to refer to the instantiations of APCM with Pencil and Star blocks, respectively.

4

Analysis

We now proceed to analyze the convergence properties of the asynchronous variants of Algorithm 1. In this setting, the iteration counter t corresponds to write operations, which are assumed to be atomic. Note, however, that in our experiments in Section 5 we use a lock-free implementation, which may result in inconsistent writes and reads. If there is no delay, then the algorithm is performing exact coordinate minimization. However, since updates happen asynchronously, there will generally be a difference between the current beliefs µt and the ones used to compute the update. We denote by k(t) the iteration counter corresponding to the time in which values were read. The bounded delay assumption implies that t − k(t) ≤ τ for some constant τ . We present results for the Pencil block next, and defer results for the Star block to Appendix B. Our first result precisely characterizes the expected change in objective value following an update as a function of the old and new beliefs. All proofs appear in the supplementary material. Proposition 1. The APCM-Pencil algorithm satisfies: Es [f (δ t+1 )] − f (δ t ) =

γX X n r p:r∈p

log

X µtr (xr ) q k(t)

xr

+ log

where n = blocks.

P P r

p:r∈p

µr

(xr )

k(t)

µp

k(t)

(xr ) · µr

(5)

(xr )

! X µtp (xr ) q k(t) k(t) (x ) , (x ) · µ µ r r r p k(t) (xr ) x r µp

1 is the number of Pencil blocks, and the expectation is over the choice of

At a high-level, our derivation carefully tracks the effect of stale beliefs on convergence by separating old and new beliefs after applying the update (see Appendix A.1). We next highlight a few consequences of Proposition 1. First, it provides an exact characterization of the expected change in objective value, not an upper bound. Second, as a sanity check, when there is no delay (k(t) = t), the belief ratio terms (µt /µk(t) ) drop, and we recover the sequential decrease in objective, which corresponds to the (negative) Bhattacharyya divergence measure between the pair of distributions µtr (xr ) and µtp (xr ) [Meshi et al., 2014]. Finally, Proposition 1 can be used to dynamically set the degree of parallelization as follows. We estimate Eq. (5) (per block) and if the result is strictly positive then it suggests that the delay is too large and we should reduce the number of concurrent processors. Next, we obtain an upper bound on the expected change in objective value that takes into account the sparsity of the update. Proposition 2. The APCM-Pencil algorithm satisfies: Es [f (δ t+1 )] − f (δ t ) ≤

t−1 γ X n

d=k(t)

+

" max log xr

µd+1 r(d) (xr ) µdr(d) (xr )

! + max log xr

µd+1 p(d) (xr ) µdp(d) (xr ) !2

X q k(t) γX X k(t) log µp (xr ) · µr (xr ) n r p:r∈p x

.

!#

(6)

(7)

r

This bound separates the expected change in objective into two terms: the delay term (Eq. (6)) and the (stale) improvement term (Eq. (7)). The improvement term is always non-positive, it is equal to the negative Bhattacharyya divergence, and it is exactly the same as the expected improvement in the sequential setting. The delay term is always non-negative, and as before, when there is no delay (k(t) = t), the sum in Eq. (6) is empty, and we recover the sequential improvement. Note that the delay term depends only on the beliefs in regions that were actually updated between the read and current write. This result is obtained by exploiting the sparsity of the updates: each message affects only the neighboring nodes in the graph (see Appendix A.2). Similar structural properties are also used in related analyses [e.g., Recht et al., 2011], however in other settings this involves making 5

40

30

Objective

3.5

4 3 2

25

3

20 2.5 15 2 10

1

1.5

0

1

0

20

40

60

80

100

Iteration

120

55 1 worker 10 workers 20 workers 40 workers 40 workers (adaptive)

35

4

5

Objective

40 workers (adaptive)

4.5

50

Objective

6

Number of active workers

1 worker 10 workers 20 workers 40 workers 40 workers (adaptive)

7

45

40

35

5 30 0

20

40

60 Iteration

80

100

120

0

20

40

60

80

100

120

Iteration

Figure 1: Simulation of APCM-Pencil on toy models. (Left) objective vs. iteration (equiv., update) on a 3-node chain graph. The dashed lines show the same objective when iterations are divided by the number of workers, which approximates runtime. (Middle) objective vs. iteration and vs. number of active workers on a 3-node chain graph when adapting the number of workers. (Right) objective vs. iteration (equiv., update) on a 6-node fully connected graph. non-trivial assumptions (such as how training examples interact), whereas in our case the sparsity pattern is readily available through the structure of the graphical model. To demonstrate the hardness of our setting, we present in Appendix A.3 a case where the RHS of Eq. (6) - (7) may be a large positive number. This happens when some beliefs are very close to 0. In contrast, the next theorem uses the results above to show speedups under additional assumptions. t Theorem 1. Let |θˆrδ (xr )| ≤ M for all t, r, xr , and let kδ t − δ ∗ k2 < B for all t. Assume that the γc gradient is bounded from below as k∇f k2 ≥ c, and that the delay is bounded as τ ≤ 32M . Then 8nB t ∗ Es [f (δ )] − f (δ ) ≤ γt . This upper bound is only 2 times slower than the corresponding sequential bound (see Theorem 3 in Meshi et al. [2014]), however, in this parallel setting we execute updates roughly τ times faster, so we obtain a linear speedup in this case. Notice that this rate applies only when the gradient is not too small, so we expect to get large gains from parallelization initially, and smaller gains as we get closer to optimality. This is due to the hardness of our setting (see Appendix A.3), and gives another theoretical justification to adaptively reduce the number of processing units as the iterations progress. At first glance, the assumptions in Theorem 1 (specifically, the bounds M and B) seem strong. However, it turns out that they are easily satisfied whenever f (δ t ) ≤ f (0) (see Lemma 9 in Meshi et al. [2014]) – which is a mild assumption that is satisfied in all of our experiments except some adversarially constructed toy problems (see Section 5.1).

5

Experiments

In this section we present numerical experiments to study the performance of APCM in practical MAP estimation problems. We first simulate APCM on toy problems in Section 5.1, then, in Section 5.2, we demonstrate our approach on a disparity estimation task from computer vision. 5.1

Synthetic Problems

To better understand the behavior of APCM, we simulate the APCM-Pencil algorithm sequentially as follows. We keep a set of ‘workers,’ each of which can be in one of two states: ‘read’ or ‘update.’ In every step, we choose one of the workers at random using a skewed distribution to encourage P large delays: the probability of sampling a worker w is pw = eκsw / w0 eκsw0 , where sw is sampled uniformly in [0, 1], and κ = 5. If the worker is in the ‘read’ state, then it picks a message uniformly at random, makes a local copy of the beliefs, and moves to state ‘update.’ Else, if the worker wakes up in state ‘update,’ then it computes the update from its local beliefs, writes the update to the global beliefs, and goes back to state ‘read.’ This procedure creates delays between the read and write steps. Our first toy model consists of 3 binary variables and 2 pairwise factors, forming a chain graph. This model has a total of 4 messages. Factor values are sampled uniformly in the range [−5, 5]. In Fig. 1 (left) we observe that as the number of workers grows, the updates become less effective due to stale beliefs. Importantly, it takes 40 workers operating on 4 messages to observe divergence. We don’t 6

4 200

Dual

5.54

2.805

10 8

1.156

1 2 4 8 16 32 46

2.81

1 2 4 8 16 32 46

1.1555

2.8

5.52

1.155

1.156

1.155 1.1545

2.795

5.5

1.154 5.48

1.154

2.79 10 4

10 3

Time [ms]

10 4

10 5

10 3

Time [ms]

10 6

5.58 5.56 5.54

10 4

10 8

2.805

10 8 1 2 4 8 16 32 46

1.1555

2.8

5.52

10 6

Time [ms]

1.156

1 2 4 8 16 32 46

2.81

Dual

1 2 4 8 16 32 46

10 5

Time [ms]

10 7

5.6

10 4

1.155 1.1545

1.156

1 2 4 8 16 32 46

1.1555

Dual

10 3

Dual

1 2 4 8 16 32 46

1.1555

1.1545

Dual

Ours

5.56

8 400

10 8

Dual

1 2 4 8 16 32 46

Dual

5.6 5.58

HOGWILD!

8 200

10 7

Dual

2 200 10 6

1.155 1.1545

2.795

5.5

1.154 5.48

1.154

2.79 10 3

10 4

Time [ms]

10 3

10 4

10 5

10 3

Time [ms]

10 4

Time [ms]

10 5

10 4

10 6

Time [ms]

Figure 2: For γ = 1 and an 8 state model, we illustrate the convergence behavior of our approach compared to HOGWILD!, for a variety of MRF configurations (2, 4, 8), and different number of iterations (200, 400). Different number of threads are used for each configuration. Algorithm 2 HOGWILD! A single update 1: Choose a region r ∈ R at random 2: Update: δpr (xr ) −= ηt µr (xr ) for all xr , p : r ∈ p δrc (xc ) += ηt µr (xc ) for all xc , c : c ∈ r

expect a setting with more workers than messages to be observed in practice. We also adaptively change the number of workers as suggested by our theory, which indeed helps to regain convergence. Fig. 1 (middle) shows how the number of workers decreases as the objective approaches the optimum. Our second toy model consists of 6 binary variables forming a fully connected graph. This model has 30 messages. In this setting, despite stale beliefs due to a skewed distribution, Fig. 1 (right) shows that APCM is convergent even with 40 active workers. Hypothetically assuming 40 workers to run in parallel yields a significant speedup when compared to a single thread, as is illustrated by the dashed lines in Fig. 1. 5.2

Disparity Estimation

We now proceed to test our approach on a disparity estimation task, a more realistic setup. In our case, the employed pairwise graphical model, often also referred to as a pairwise Markov random field (MRF), is grid structured. It has 144 × 185 = 26, 640 unary regions with 8 states and is a downsampled version from Schwing et al. [2011]. We use the temperature parameter γ = 1 for the smooth objective (Eq. (3)). We compare our APCM-Star algorithm to the HOGWILD! approach [Recht et al., 2011], which employs an asynchronous parallel stochastic P gradient descent method – summarized in Algorithm 2, where we use the shorthand µr (xc ) = x0 µr (xc , x0r\c ). We refer r\c the reader to Appendix C in the supplementary material for additional results on graphical models with larger state space size and for results regarding the non-smooth update obtained for γ = 0. In short, those results are similar to the ones reported here. No synchronization is used for both HOGWILD! and our approach, i.e., we allow inconsistent reads and writes. Hence our optimization is lock-free and each of the threads is entirely devoted to computing and updating messages. We use one additional thread that constantly monitors progress by computing the objective in Eq. (3). We perform this function evaluation a fixed number of times, either 200 or 400 times. Running for more iterations lets us compare performance in the high-accuracy regime. During function evaluation, other threads randomly and independently choose a region r and update the variables δ·r (·), i.e., we evaluate the Star block updates of Eq. (5). Our choice is motivated by the fact that Star block updates are more overlapping compared to Pencil updates, as they depend on more variables. Therefore, Star blocks are harder to parallelize (see Theorem 2 in Appendix B). To assess the performance of our technique we use pairwise graphical models of different densities. In particular, we use a ‘connection width’ of 2, 4, or 8. This means we connect variables in the grid by 7

Ours

HOGWILD!

Comparison 100

40

30

20

10

2 200 4 200 8 200 8 400

80

30

speedup

2 200 4 200 8 200 8 400

speedup f

speedup f

40

20

10

10

20

30

threads

40

2 200 4 200 8 200 8 400

60 40 20

10

20

30

threads

(a)

(b)

40

0 10

20

30

40

threads

(c)

Figure 3: Speedup w.r.t. single thread obtained for a specific number of threads for our approach (a) and HOGWILD! (b), using a variety of MRF neighborhoods (2, 4, 8), and different number of iterations (200, 400). Speedups are shown for γ = 1 and 8 states. (c) shows the speedup of our method compared to HOGWILD!.

pairwise factors, if their `∞ -norm distance is less than 2, 4, or 8. A ‘connection width’ of 2 is often also referred to as 8-neighborhood, because a random variable is connected to its eight immediate neighbors. A ‘connection width’ of 4 or 8 connects a random variable to 48 or 224 neighboring variables respectively. Hence, the connectivity of the employed graphical model is reasonably dense to observe inconsistent reads and writes. At the same time our experiments cover connection densities well above many typical graphical models used in practice. Convergence: In a first experiment we investigate the convergence behavior of our approach and the HOGWILD! implementation for different graphical model configurations. We examine the behavior when using one to 46 threads, where the number of threads is not adapted, but remains fixed throughout the run. The stepsize parameter, necessary in the case of HOGWILD!, is chosen to be as large as possible while still ensuring convergence (following Recht et al. [2011]). Note that our approach is hyper-parameter free. Hence no tuning is required, which we consider an important practical advantage. We also evaluated HOGWILD! using a diminishing stepsize, but found those results to be weaker than the ones reported here. Also note that a diminishing stepsize introduces yet another hyper-parameter. Our results are provided in Fig. 2 for γ = 1 and 8 states per random variable. We assess different MRF configurations (2, 4, 8 connectivity), and iterations (200, 400). Irrespective of the chosen setup, we observe monotone convergence even with 46 threads at play for both approaches. In neither of our configurations do we observe any instability during optimization. As expected, we also observe the exact minimization employed in our approach to result in significantly faster descent than use of the gradient (i.e., HOGWILD!). This is consistent with the comparison of these methods in the sequential setting. Thread speedup: In our second experiment we investigate the speedup obtained when using an increasing number of threads. To this end we use the smallest dual value obtained with a single thread and illustrate how much faster we are able to obtain an identical or better value when using more than one thread during computation. The results for all the investigated graphical model configurations are illustrated in Fig. 3 (a) for our approach and in Fig. 3 (b) for HOGWILD!. In these figures, we observe very similar speedups across different graphical model configurations. We also observe that our approach scales just as well as the gradient based technique does. HOGWILD! speedup: In our third experiment we directly compare HOGWILD! to our approach. More specifically, we use the smallest dual value found with the gradient based technique using a fixed number of threads, and assess how much faster the proposed approach is able to find an identical or better value when using the same number of threads. We show speedups of our approach compared to HOGWILD! in Fig. 3 (c). Considering the results presented in the previous paragraphs, speedups are to be expected. In all cases, we observe the speedups to be larger when using more threads. Depending on the model setup, we observe speedups to stabilize at values around 45 or higher. In summary, we found our asynchronous optimization technique to be a compelling practical approach to infer approximate MAP configurations for graphical models. 8

6

Conclusion

We believe that parallel algorithms are essential for dealing with the scale of modern problem instances in graphical models. This has led us to present an asynchronous parallel coordinate minimization algorithm for MAP inference. Our theoretical analysis provides insights into the effect of stale updates on the convergence and speedups of this scheme. Our empirical results show the great potential of this approach, achieving linear speedups with up to 46 concurrent threads. Future work may include improving the analysis (possibly under additional assumptions), particularly the restriction on the gradients in Theorems 1 and 2. An interesting extension of our work is to derive asynchronous parallel coordinate minimization algorithms for other objective functions, including those arising in other inference tasks, such as marginal inference. Another natural extension is to try our algorithms on MAP problems from other domains, such as natural language processing and computational Biology, adding to our experiments on disparity estimation in computer vision.

Acknowledgments This material is based upon work supported in part by the National Science Foundation under Grant No. 1718221. This work utilized computing resources provided by the Innovative Systems Lab (ISL) at NCSA.

References A. Asuncion, P. Smyth, M. Welling, D. Newman, I. Porteous, and S. Triglia. Distributed Gibbs sampling for latent variable models. 2011. H. Avron, A. Druinsky, and A. Gupta. Revisiting asynchronous linear solvers: Provable convergence rate through randomization. J. ACM, 62(6):51:1–51:27, 2015. D. P. Bertsekas and J. N. Tsitsiklis. Parallel and Distributed Computation: Numerical Methods. Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 1989. ISBN 0-13-648700-9. L.-C. Chen∗ , A. G. Schwing∗ , A. L. Yuille, and R. Urtasun. Learning Deep Structured Models. In Proc. ICML, 2015. ∗ equal contribution. J. Choi and R. A. Rutenbar. Hardware implementation of mrf map inference on an fpga platform. In Field Programmable Logic, 2012. D. Davis, B. Edmunds, and M. Udell. The sound of apalm clapping: Faster nonsmooth nonconvex optimization with stochastic asynchronous palm. In D. D. Lee, M. Sugiyama, U. V. Luxburg, I. Guyon, and R. Garnett, editors, Advances in Neural Information Processing Systems 29, pages 226–234. 2016. A. Desmaison, R. Bunel, P. Kohli, P. H. Torr, and M. P. Kumar. Efficient continuous relaxations for dense crf. In European Conference on Computer Vision, pages 818–833, 2016. A. Globerson and T. Jaakkola. Fixing max-product: Convergent message passing algorithms for MAP LPrelaxations. In NIPS. MIT Press, 2008. J. Gonzalez, Y. Low, and C. Guestrin. Parallel Inference on Large Factor Graphs. Cambridge University Press, 2011. T. Hazan and A. Shashua. Norm-product belief propagation: Primal-dual message-passing for approximate inference. IEEE Transactions on Information Theory, 56(12):6294–6316, 2010. C.-J. Hsieh, H.-F. Yu, and I. S. Dhillon. Passcode: Parallel asynchronous stochastic dual co-ordinate descent. In ICML, volume 15, pages 2370–2379, 2015. S. Hurkat, J. Choi, E. Nurvitadhi, J. F. Martínez, and R. A. Rutenbar. Fast hierarchical implementation of sequential tree-reweighted belief propagation for probabilistic inference. In Field Programmable Logic, pages 1–8, 2015. J. Johnson. Convex Relaxation Methods for Graphical Models: Lagrangian and Maximum Entropy Approaches. PhD thesis, EECS, MIT, 2008. J. H. Kappes, B. Andres, F. A. Hamprecht, C. Schnörr, S. Nowozin, D. Batra, S. Kim, B. X. Kausler, T. Kröger, J. Lellmann, N. Komodakis, B. Savchynskyy, and C. Rother. A comparative study of modern inference techniques for structured discrete energy minimization problems. International Journal of Computer Vision, 115(2):155–184, 2015.

9

D. Koller and N. Friedman. Probabilistic Graphical Models: Principles and Techniques. MIT Press, 2009. V. Kolmogorov. Convergent tree-reweighted message passing for energy minimization. IEEE Transactions on Pattern Analysis and Machine Intelligence, 28(10):1568–1583, 2006. N. Komodakis, N. Paragios, and G. Tziritas. Mrf optimization via dual decomposition: Message-passing revisited, 2007. P. Krähenbühl and V. Koltun. Efficient inference in fully connected crfs with gaussian edge potentials. In Advances in Neural Information Processing Systems 24, pages 109–117. 2011. J. Liu and S. J. Wright. Asynchronous stochastic coordinate descent: Parallelism and convergence properties. SIAM Journal on Optimization, 25(1):351–376, 2015. J. Liu, S. J. Wright, C. Ré, V. Bittorf, and S. Sridhar. An asynchronous parallel stochastic coordinate descent algorithm. Journal of Machine Learning Research, 16:285–322, 2015. N. Ma, Y. Xia, and V. K. Prasanna. Data parallelism for belief propagation in factor graphs. In 2011 23rd International Symposium on Computer Architecture and High Performance Computing, pages 56–63, 2011. O. Meshi, T. Jaakkola, and A. Globerson. Smoothed coordinate descent for map inference. In S. Nowozin, P. V. Gehler, J. Jancsary, and C. Lampert, editors, Advanced Structured Prediction. MIT Press, 2014. O. Meshi, M. Mahdavi, and A. G. Schwing. Smooth and strong: MAP inference with linear convergence. In Neural Informaion Processing Systems, 2015. Y. Nesterov. Efficiency of coordinate descent methods on huge-scale optimization problems. SIAM Journal on Optimization, 22(2):341–362, 2012. Z. Peng, Y. Xu, M. Yan, and W. Yin. Arock: An algorithmic framework for asynchronous parallel coordinate updates. SIAM Journal on Scientific Computing, 38(5):A2851–A2879, 2016. N. Piatkowski and K. Morik. Parallel inference on structured data with crfs on gpus. In International Workshop at ECML PKDD on Collective Learning and Inference on Structured Data (COLISD2011), 2011. B. Recht, C. Re, S. Wright, and F. Niu. Hogwild: A lock-free approach to parallelizing stochastic gradient descent. In Advances in Neural Information Processing Systems 24. 2011. B. Savchynskyy, S. Schmidt, J. Kappes, and C. Schnorr. A study of Nesterov’s scheme for lagrangian decomposition and map labeling. CVPR, 2011. A. G. Schwing, T. Hazan, M. Pollefeys, and R. Urtasun. Distributed Message Passing for Large Scale Graphical Models. In Proc. CVPR, 2011. A. G. Schwing, T. Hazan, M. Pollefeys, and R. Urtasun. Globally Convergent Dual MAP LP Relaxation Solvers using Fenchel-Young Margins. In Proc. NIPS, 2012. A. G. Schwing, T. Hazan, M. Pollefeys, and R. Urtasun. Globally Convergent Parallel MAP LP Relaxation Solver using the Frank-Wolfe Algorithm. In Proc. ICML, 2014. Y. Shimony. Finding the MAPs for belief networks is NP-hard. Aritifical Intelligence, 68(2):399–410, 1994. S. Singh, A. Subramanya, F. Pereira, and A. McCallum. Distributed map inference for undirected graphical models. In Neural Information Processing Systems (NIPS) Workshop on Learning on Cores, Clusters, and Clouds (LCCC), 2010. D. Sontag, A. Globerson, and T. Jaakkola. Introduction to dual decomposition for inference. In Optimization for Machine Learning, pages 219–254. MIT Press, 2011. P. Tseng. On the rate of convergence of a partially asynchronous gradient projection algorithm. SIAM Journal on Optimization, 1(4):603–619, 1991. M. Wainwright and M. I. Jordan. Graphical Models, Exponential Families, and Variational Inference. Now Publishers Inc., Hanover, MA, USA, 2008. Y.-X. Wang, V. Sadhanala, W. Dai, W. Neiswanger, S. Sra, and E. Xing. Parallel and distributed block-coordinate frank-wolfe algorithms. In Proceedings of The 33rd International Conference on Machine Learning, pages 1548–1557, 2016. T. Werner. A linear programming approach to max-sum problem: A review. IEEE Transactions on Pattern Analysis and Machine Intelligence, 29(7):1165–1179, 2007. T. Werner. Revisiting the decomposition approach to inference in exponential families and graphical models. Technical Report CTU-CMP-2009-06, Czech Technical University, 2009.

10

T. Werner. Revisiting the linear programming relaxation approach to gibbs energy minimization and weighted constraint satisfaction. IEEE PAMI, 32(8):1474–1488, 2010. M. Wick, A. McCallum, and G. Miklau. Scalable probabilistic databases with factor graphs and mcmc. Proc. VLDB Endow., 3(1-2):794–804, 2010. Y. You, X. Lian, J. Liu, H.-F. Yu, I. S. Dhillon, J. Demmel, and C.-J. Hsieh. Asynchronous parallel greedy coordinate descent. In Advances in Neural Information Processing Systems 29, pages 4682–4690. 2016. J. Zhang, A. G. Schwing, and R. Urtasun. Message Passing Inference for Large Scale Graphical Models with High Order Potentials. In Proc. NIPS, 2014. R. Zhang and J. T. Kwok. Asynchronous distributed admm for consensus optimization. In ICML, pages 1701–1709, 2014. B. Zhou, H. Zhao, X. Puig, S. Fidler, A. Barriuso, and A. Torralba. Semantic understanding of scenes through the ade20k dataset. arXiv preprint arXiv:1608.05442, 2016.

11

Supplementary Material Asynchronous Parallel Coordinate Minimization for MAP Inference

A

Analysis for Pencil Block

In this section we provide full derivations of the results on the Pencil block in Section 4. A.1

Proof of Proposition 1

Proof. We begin by characterizing the convexity of f (δ). For all δ 1 , δ 2 we have that f (δ 2 ) = f (δ 1 ) + ∇f (δ 1 )> (δ 2 − δ 1 ) + γD(µ(δ 1 )||µ(δ 2 )) , where D(p||q) is the KL divergence. Proof: γD(µ(δ 1 )||µ(δ 2 )) = γ

XX r

µ1r (xr ) log µ1r (xr ) − γ

xr

XX r

xr

 =γ

1

XX r

µ1r (xr ) log µ2r (xr )

µ1r (xr ) θ˜rδ (xr )/γ − log

X

  1  exp θ˜rδ (x0r )/γ 

x0r

xr



 XX

−γ

r

2

µ1r (xr ) θ˜rδ (xr )/γ − log

X



2



exp θ˜rδ (x0r )/γ 

x0r

xr

=1

X

= −γ

log

X

r

x0r

X

X

 1  zX }| { µ1r (xr ) exp θ˜rδ (x0r )/γ xr =1

+γ +

log

z }| {  2 X µ1r (xr ) exp θ˜rδ (x0r )/γ

r

x0r

XX

µ1r (xr )

r

xr

 1  2 θ˜rδ (xr ) − θ˜rδ (xr )

xr

2

= f (δ ) − f (δ 1 ) +

X X X 1 1 2 (µr (xr ) − µ1p (xr ))(δpr (xr ) − δpr (xr )) r

p:r∈p xr

= f (δ ) − f (δ ) + ∇f (δ 1 )> (δ 1 − δ 2 ) 2

1

Hence, plugging δ 1 = δ t and δ 2 = δ t+1 and taking expectation, we get:4   Es [f (δ t+1 )] = Es f (δ t ) + h∇s f (δ t ), (δ t+1 − δ t )s i + γD(µ(δ t )||µ(δ t+1 ))   1 (8) = f (δ t ) + h∇f (δ t ), δ¯t+1 − δ t i + γEs D(µ(δ t )||µ(δ t+1 )) n where s is a randomly chosen block, n is the total number of blocks, and δ¯t+1 is obtained by applying the optimal update to all blocks simultaneously. For the Pencil update we have: 1 γ X X X t h∇f (δ t ), δ¯t+1 − δ t i = (µr (xr ) − µtp (xr ))(log µk(t) (xr ) − log µk(t) (xr )) p r n 2n r p:r∈p x

(9)

r

4 The second equality assumes that that all blocks are equally likely to be picked. This may not be true, for example if some blocks take much longer to process than others (since those will be updated less frequently). However, it is a standard assumption in the existing literature.

where k(t) is the iteration used to compute the t’th update. As for the KL term,

  γEs D(µ(δ t )||µ(δ t+1 )) γX X X D(µr0 (δ t )||µr0 (δ t+1,pr )) = n r p:r∈p 0 r  γX X = D(µr (δ t )||µr (δ t+1,pr )) + D(µp (δ t )||µp (δ t+1,pr )) n r p:r∈p

where the last equality holds since whenever r0 ∈ / {r, p}, then µr0 (δ t ) = µr0 (δ t+1,pr ), so the KL equals 0. Now,

D(µr (δ t )||µr (δ t+1,pr )) X t X t = µr (xr ) log µtr (xr ) − µr (xr ) log µt+1,pr (xr ) r xr

=

X

xr

µtr (xr ) log µtr (xr )

xr

  X t+1,pr X t+1,pr 1 θr (xr ) + δp0 r (xr ) − δrc0 (xc ) − γ xr p0 :r∈p0 c0 :c0 ∈r    # X X X 1 t+1,pr − log exp  θr (x0r ) + δpt+1,pr (x0r ) − δrc (x0c0 ) 0r 0 γ x0r p0 :r∈p0 c0 :c0 ∈r  "  X t X t X t 1 θr (xr ) + δp0 r (xr ) − = δrc0 (xc ) µr (xr ) γ xr p0 :r∈p0 c0 :c0 ∈r  #   X X X 1 0 t 0 (xc0 ) − log exp  θr (x0r ) + δpt 0 r (x0r ) − δrc γ 0 0 0 0 0 xr p :r∈p c :c ∈r  "  X t X t X t 1 γ − µr (xr ) θr (xr ) + δp0 r (xr ) − δrc0 (xc ) + (log µk(t) (xr ) − log µk(t) (xr )) p r γ 2 0 0 0 0 xr p :r∈p c :c ∈r    # X X X 1 γ t 0 0 (xc0 ) + δpt 0 r (x0r ) − − log exp  θr (x0r ) + δrc (log µk(t) (x0r ) − log µk(t) (x0r )) p r γ 2 0 0 0 0 0 "

X

µtr (xr )

xr

c :c ∈r

p :r∈p

1X t = − µr (xr )(log µpk(t) (xr ) − log µk(t) (xr )) r 2 x r      P P P k(t) k(t) t t 1 1 0) exp θ (x ) + δ (x ) − δ (x · exp (log µ (x ) − log µ (x )) 0 0 r r r r r p r 0 0 0 0 c p r rc xr p :r∈p c :c ∈r γ 2    + log P P P 1 t t 0 0 0 x0r exp γ θr (xr ) + p0 :r∈p0 δp0 r (xr ) − c0 :c0 ∈r δrc0 (xc0 ) v u k(t) X X u µp (xr ) 1 = − µtr (xr )(log µpk(t) (xr ) − log µk(t) (xr )) + log µtr (xr )t k(t) (10) r 2 x µr (xr ) x r

r

13

Similarly, D(µp (δ t )||µp (δ t+1,pr )) X t X t = µp (xp ) log µtp (xp ) − µp (xp ) log µt+1,pr (xp ) p xp

=

X

xp

µtp (xp ) log µtp (xp )

xp

  X t+1,pr X t+1,pr 1 − θp (xp ) + δqp (xp ) − δpr0 (xr0 ) γ xp q:p∈q r 0 :r 0 ∈p    # X X t+1,pr 0 X t+1,pr 0 1 0 exp  θp (xp ) + − log δqp (xp ) − δpr0 (xr0 ) γ q:p∈q x0p r 0 :r 0 ∈p  "  X t X t X t 1 θp (xp ) + δqp (xp ) − δpr0 (xr0 ) = µp (xp ) γ q:p∈q xp r 0 :r 0 ∈p  #   X X t X t 1 0 0 0 − log exp  θp (xp ) + δqp (xp ) − δpr0 (xr0 ) γ q:p∈q x0p r 0 :r 0 ∈p  "  X t X t X t 1 γ − θp (xp ) + (xr ) − log µk(t) (xr )) µp (xp ) δqp (xp ) − δpr0 (xr0 ) − (log µk(t) p r γ 2 0 0 xp q:p∈q r :r ∈p  #   X X X 1 γ 0 t t 0 (xr 0 ) − − log (log µk(t) (x0r ) − log µk(t) (x0r )) exp  θp (x0p ) + δqp (x0p ) − δpr p r γ 2 0 0 0 q:p∈q "

X

µtp (xp )

r :r ∈p

xp

1X t = µp (xr )(log µpk(t) (xr ) − log µk(t) (xr )) r 2 x r      P P P k(t) k(t) t t 1 0 · exp − 21 (log µp (xr ) − log µr (xr )) r 0 :r 0 ∈p δpr 0 (xr ) q:p∈q δqp (xp ) − xp exp γ θp (xp ) +    + log P P P 1 t 0 0)+ t (x0 ) − θ (x δ δ (x ) exp p 0 0 0 0 0 p qp p q:p∈q r :r ∈p pr xp r γ v u k(t) X t u µr (xr ) 1X t = (11) µp (xr )(log µpk(t) (xr ) − log µk(t) (xr )) + log µp (xr )t k(t) r 2 x µp (xr ) x r

r

Combining Eq. (9), Eq. (10), and Eq. (11), we obtain:

Es [f (δ

t+1

v v   u k(t) u k(t) X t u µr (xr ) u µp (xr ) γX X  X t  )] = f (δ ) + log µr (xr )t k(t) + log µp (xr )t k(t) n r p:r∈p µr (xr ) µp (xr ) x x t

r

r

Or equivalently,

Es [f (δ t+1 )] − f (δ t ) =

γX X n r p:r∈p

X µtr (xr ) q k(t) k(t) µp (xr ) · µr (xr ) k(t) (xr ) xr µr ! X µtp (xr ) q k(t) k(t) µp (xr ) · µr (xr ) + log k(t) (xr ) x r µp

log

14

(12)

A.2

Proof of Proposition 2

Proof. We first isolate the delay term from the improvement term. X µt (xr ) q k(t) X µtp (xr ) q k(t) k(t) k(t) r log µ (x ) · µ µp (xr ) · µr (xr ) (x ) + log p r r r k(t) k(t) µ µ (x ) (x ) r p r r xr xr ! " !# q t X µr (xr ) k(t) k(t) µp (xr ) · µr (xr ) ≤ log max k(t) xr µ r (xr ) xr " ! !# X q k(t) µtp (xr ) k(t) µp (xr ) · µr (xr ) + log max k(t) [Hölder] xr µ p (xr ) xr !2 X q k(t) µtp (xr ) µtr (xr ) k(t) µp (xr ) · µr (xr ) + log max k(t) + log = log max k(t) xr µ xr µ r (xr ) p (xr ) xr We use the monotonic increase of logarithm to get max log = log max. Plugging this back into the decrease Eq. (12): Es [f (δ t+1 )] − f (δ t ) µtp (xr ) µtr (xr ) γX X + max log k(t) max log k(t) ≤ xr n r p:r∈p xr µr (xr ) µp (xr ) !2 X q k(t) γX X k(t) + µp (xr ) · µr (xr ) log n r p:r∈p x

! [delay]

[stale “improvement”]

(13)

r

Next, notice that: log

µtr (xr ) k(t)

µr

(xr )

= log µtr (xr ) − log µk(t) r (xr ) =

t−1 X

(log µd+1,pr(d) (xr ) − log µdr (xr )) r

d=k(t)

=

t−1 X

d+1,pr(d)

log

µr

d=k(t)

(xr ) µdr (xr )

where pr(d) denotes the block chosen to be updated at time d. And likewise for µp (xr ). Plugging this in the delay: ! µtp (xr ) γX X µtr (xr ) max log k(t) + max log k(t) xr n r p:r∈p xr µr (xr ) µp (xr )      t−1 t−1 d+1,pr(d) d+1,pr(d) X X X X γ µr (xr )  µp (xr )  max  = log + max  (log xr n r p:r∈p xr µdr (xr ) µdp (xr ) d=k(t) d=k(t)  ! ! t−1 t−1 d+1,pr(d) d+1,pr(d) X γX X  X µr (xr ) µp (xr )  ≤ max log + max log xr xr n r p:r∈p µdr (xr ) µdp (xr ) d=k(t) d=k(t) " ! !# t−1 d+1,pr(d) d+1,pr(d) γ X X X µr (xr ) µp (xr ) = max log + max log xr xr n µdr (xr ) µdp (xr ) r p:r∈p d=k(t)

where the inequality follows from (max

P



P

max).

15

Now notice that if we update the pr block, then the only beliefs that change are µr and µp . Therefore, whenever r ∈ / pr(d) (so r is neither the child nor parent in the update) then the beliefs are the same and the log terms equal 0. So we can get rid of the sums:      d+1,pr(d) d+1,pr(d) t−1 X µ (x ) µ (x ) r r γ max log r(d)  + max log p(d)  = (14) xr xr n µdr(d) (xr ) µdp(d) (xr ) d=k(t)

Finally, we obtain: Es [f (δ t+1 )] − f (δ t )      d+1,pr(d) d+1,pr(d) t−1 µp(d) (xr ) µr(d) (xr ) γ X   + max log  ≤ max log xr xr n µdr(d) (xr ) µdp(d) (xr ) d=k(t) !2 X q k(t) γX X k(t) + µp (xr ) · µr (xr ) log n r p:r∈p x

(15)

r

A.3

Limitation of the bound in Proposition 2

In this section we show the hardness of translating the bound in Proposition 2 to an overall rate. Let us focus on a single belief µr (xr ) and examine the terms in the bound which involve this belief (assuming it appears only once in the summation of Eq. (6)). We begin by expanding the expression in Eq. (6). d+1,pr(d)

log

µr(d)

(xr )

µdr(d) (xr ) d+1,pr(d)

= log µr(d)

 exp

(xr ) − log µdr(d) (xr )

1 ˆδ d σ θr(d) (xr )

= log

 P

x0r

exp

k(d)

+

1 2

log

µp(d) (xr )



k(d)

1 ˆδ d 0 σ θr(d) (xr )

+

1 2

exp

k(d)

µr(d) (xr )

log

µp(d) (x0r ) k(d)

µr(d) (x0r )

 − log P

x00 r





1 ˆδ d σ θr(d) (xr )

exp





1 ˆδ d 00 σ θr(d) (xr )

  k(d) k(d) 0 X ) µp(d) (xr ) µ (x d 1 1 ˆδd 1 1 r p(d) δ  − log exp  θˆr(d) = θr(d) (xr ) + log k(d) (x0r ) + log k(d) 0) σ 2 σ 2 µr(d) (xr ) µ (x 0 r xr r(d)   X 1 δd 1 ˆδd − θˆr(d) (xr ) + log θr(d) (x00r ) exp σ σ x00 r    d  k(d) P µp(d) (x0r ) 1 δ 0 ˆ k(d) x0r exp θr(d) (xr ) · exp 2 log µk(d) (x0 ) µp(d) (xr ) 1 r   r(d) − log = log k(d) P d 2 δ µr(d) (xr ) exp θˆr(d) (x00r ) x00 r v v u k(d) 0 u k(d) X uµ u µp(d) (xr ) (x ) d 0 t p(d) r t = log − log µ (x ) r r(d) k(d) k(d) µr(d) (xr ) µr(d) (x0r ) x0r v u k(d) X µdr(d) (x0r ) q k(d) u µp(d) (xr ) k(d) = log t k(d) − log µr(d) (x0r )µp(d) (x0r ) k(d) 0 µr(d) (xr ) x0r µr(d) (xr ) Adding the corresponding improvement term from Eq. (7), v u k(d) X q k(d) X µdr(d) (x0r ) q k(d) u µp(d) (xr ) k(d) 0 )µk(d) (x0 ) + 2 log − log µ (x µr(d) (x0r )µp(d) (x0r ) log t k(d) r r(d) p(d) r k(d) 0 µr(d) (xr ) µ (x ) r x0r x0r r(d) 16

k(d)

k(d)

Focusing on the binary case, let µr (0) = p, µp (0) = q, and µdr (0) = p0 . We obtain,  0  r √  p p √ q 1 − p0 p − log pq + (1 − p)(1 − q) + 2 log pq + (1 − p)(1 − q) . log p p 1−p Now, consider the case where p0 = p (old and new beliefs are equal), we obtain, r √  p q log + log pq + (1 − p)(1 − q) p Obviously, when p → 0 and q 6= 0 this expression can grow unbounded. A.4

Proof of Theorem 1

Proof. First, since |θˆrδ (xr )| ≤ M , we can get a bound on the ratio µd+1 (xr )/µdr (xr ) ≤ e2M/γ (and r likewise for p). Plugging this in Eq. (15), we get: !2 X X X q k(t) γ γ k(t) log µp (xr ) · µr (xr ) Es [f (δ t+1 )] − f (δ t ) ≤ τ 4M/γ + n n r p:r∈p x r

Then, since k∇f k2 ≥ c > 0, we have that: !2 2 X X X q k(t) 1 X X X  k(t) c k(t) ≤− µp (xr ) · µr (xr ) µp (xr ) − µk(t) ≤− log r (xr ) 4 4 r p:r∈p x r p:r∈p x r

r

(this is a known inequality from information theory – see Proposition 1.4 in Meshi et al. [2014]). We get that for any τ ≤ Es [f (δ

t+1

(1−ρ)γc 16M ,

it holds that:

X q k(t) γX X (1 − ρ)γc γ k(t) 4M/γ + µp (xr ) · µr (xr ) )] − f (δ ) ≤ log 16M n n r p:r∈p xr !2 q X γX X k(t) k(t) ≤ − (1 − ρ) log µp (xr ) · µr (xr ) n r p:r∈p xr !2 X q k(t) γX X k(t) + log µp (xr ) · µr (xr ) n r p:r∈p xr !2 X q k(t) γX X k(t) = ρ log µp (xr ) · µr (xr ) n r p:r∈p x

!2

t

r

Which gives the desired expected decrease. Following the derivation in Theorem 1 of Nesterov [2012], the expected decrease can be translated into convergence rate: 4nB E[f (δ t )] − f (δ ∗ ) ≤ ργt where B is a scalar such that kδ t − δ ∗ k2 ≤ B. Setting ρ = 1/2 completes the proof.

B

Analysis for Star Block

In this section we present analysis for the Star block, analogous to the results on Pencil block in Section 4. Detailed proofs are given below. Proposition 3. The APCM-Star algorithm satisfies: Es [f (δ

t+1

" X µtr (xr ) γX )] − f (δ ) = log k(t) n r (xr ) x r µr t

! µk(t) (xr ) r

Y

1 Pr +1

µk(t) (xr ) p

p:r∈p

  1 # Pr +1 Y X µtp (xr ) k(t) µk(t)  + (x ) µ (x ) , log r r 0 r p k(t) (xr ) p:r∈p x r µp p0 :r∈p0 X

17

(16)

where n = |R| is the number of Star blocks (slightly overloading notation). Proposition 4. The APCM-Star algorithm satisfies:

Es [f (δ

t+1

 ! t−1 µd+1 γ X  r(d) (xr ) max log d )] − f (δ ) ≤ + xr n µr(d) (xr )

X

t

d=k(t)

p:r(d)∈p

! µd+1 (xr )  p max log d xr µp (xr )

(17)

   1 Pr +1 Pr +1 X Y γX   k(t) k(t)   log  µr (xr ) µp0 (xr ) . +  n r 0 0 x p :r∈p

r

As in the case of the Pencil block, whenever there is no delay (τ = 0), we recover the sequential expected decrease in objective. Here this corresponds to the (negative) Matusita divergence measure, which generalizes the Bhattacharyya divergence to multiple distributions [Meshi et al., 2014]. t Theorem 2. Let |θˆrδ (xr )| ≤ M for all t, r, xr , and let kδ t − δ ∗ k2 < B for all t. Assume that the gradient is bounded from below as k∇f k2 ≥ c, and that the delay is bounded as τ ≤ 16P¯ (Pγc ¯ +1)M , ¯ 8n P B where P¯ = maxr Pr . Then Es [f (δ t )] − f (δ ∗ ) ≤ .

γt

As in Theorem 1, this rate is 2 times slower than the sequential rate in terms of the number of iterations, but we can execute on the order of τ times more iterations at the same time, obtaining a linear speedup. Also notice that the assumption on the delay has inverse dependence on the number of parents in the region graph (P¯ ). If the graph is densely connected, our theory suggests we cannot afford a very large delay.

B.1

Proof of Proposition 3

Proof. For the Star block, we have:

1 h∇f (δ t ), δ¯t+1 − δ t i n    X X X X γ 1  k(t) = (µtr (xr ) − µtp (xr )) log µk(t) log µk(t) log µp0 (xr ) p (xr ) − r (xr ) + n r p:r∈p x Pr + 1 0 0 p :r∈p

r

For the KL term we have:

  γEs D(µ(δ t )||µ(δ t+1 )) γ XX = D(µr0 (δ t )||µr0 (δ t+1,r )) n r 0 r

X γX = D(µr (δ t )||µr (δ t+1,r )) + D(µp (δ t )||µp (δ t+1,r )) n r p:r∈p 18

!

Now,

t

t+1,r

D(µr (δ )||µr (δ )) X t X t t t+1,r = µr (xr ) log µr (xr ) − µr (xr ) log µr (xr ) xr

=

xr

X t t µr (xr ) log µr (xr ) xr



 "  X t+1,r X t+1,r X t 1 θr (xr ) + δpr (xr ) − δrc (xc ) µr (xr ) γ xr c:c∈r p:r∈p  #   X t+1,r 0 X t+1,r 0 X 1 0 δpr (xr ) − δrc (xc ) − log exp  θr (xr ) + γ 0 p:r∈p c:c∈r xr

=



 X t X t X t 1 θr (xr ) − µr (xr ) δrc (xc ) + δpr (xr ) γ xr c:c∈r p:r∈p    # X X X t 1 t 0 0 0 − log exp  θr (xr ) + δpr (xr ) − δrc (xc ) γ 0 p:r∈p c:c∈r "

xr

  "  X t X X t X t γ 1 k(t) k(t) log µk(t) (xr ) + δrc (xc ) + log µ (x ) − δpr (xr ) + γ log µp (xr ) − µr (xr )  θr (xr ) − r  r p0 γ Pr + 1 xr c:c∈r p:r∈p p0 :r∈p0   #   X t X X t X γ 1 k(t) 0 0 0  0 k(t) 0 log µk(t) (x0 ) + δrc (xc ) + log µ (x ) − log δpr (xr ) + γ log µp (xr ) − exp  θr (xr ) − r r r p0 γ Pr + 1 0 0 0 c:c∈r p:r∈p p :r∈p

xr

 = −

X t X log µk(t) (xr ) − µr (xr ) p xr

+ log

p:r∈p

p:r∈p

X t X k(t) µr (xr ) log µp (xr ) − xr

+ log

1 Pr + 1

 X t 0 X k(t) 0 µr (xr ) exp  log µp (xr ) − x0r

= −



p:r∈p

X t µr (xr ) xr

1 Pr + 1



log µk(t) (xr ) +

k(t)

X

r

p0 :r∈p0

Pr Pr + 1

log µ 0 p

(xr )





log µk(t) (x0 ) + r r

X p0 :r∈p0



k(t)

log µ 0 p 

log µk(t) (xr ) + r

X p0 :r∈p0

k(t) (xr ) p:r∈p µp

Q

  Pr Q k(t) k(t) µr (xr ) p:r∈p µp (xr ) Pr +1

19

k(t)

log µ 0 p

(xr )

0 (xr )

Similarly, t

t+1,r

D(µp (δ )||µp (δ )) X t X t t t+1,r = µp (xp ) log µp (xp ) − µr (xp ) log µp (xp ) xp

=

xp

X t t µp (xp ) log µp (xp ) xp



 "  X t+1,r X t X 1 t+1,r θp (xp ) + δqp µp (xp ) (xp ) − δ 0 (xr0 ) pr γ xp q:p∈q r 0 :r 0 ∈p    # X X t+1,r 0 X 1 t+1,r 0 0 − log exp  θp (xp ) + δqp (xp ) − δ 0 (xr0 ) pr γ 0 0 0 q:p∈q r :r ∈p

xp



"

=



X t X X t 1 t θp (xp ) + δqp (xp ) − δpr0 (xr0 ) µp (xp ) γ xp q:p∈q r 0 :r 0 ∈p   X X t X 1 0 0 − log exp  θp (xp ) + δqp (xp ) − γ 0 0 0 q:p∈q

   X t X X X t γ 1 k(t) k(t) t  θp (xp ) + log µk(t) (xr ) + δqp (xp ) − δpr0 (xr0 ) − γ log µp (xr ) − log µ (x ) µp (xp ) r r p0 γ Pr + 1 xp q:p∈q r 0 :r 0 ∈p p0 :r∈p0     #  X X t X X 1 γ k(t) 0 0 t 0 k(t) log µk(t) (xr ) + − log exp  θp (xp ) + δqp (xp ) − log µ 0 (xr ) δpr0 (xr0 ) − γ log µp (xr ) − r p γ Pr + 1 0 0 0 0 0 q:p∈q 

r :r ∈p

xp

 =

X t k(t) µp (xp ) log µp (xr ) − xp

+ log

1 Pr + 1

log µk(t) (xr ) +

X t k(t) µp (xr ) log µp (xr ) − xr

+ log

X t µp (xr )

1 Pr + 1

X

r

p0 :r∈p0

  X t k(t) µp (xp ) exp − log µp (xr ) − 

p :r∈p





xp

=

 #

r :r ∈p

xp

"



0

t

δpr0 (xr0 )

1 Pr + 1

k(t)

log µ 0 p

(xr )





log µk(t) (xr ) +

k(t)

X

r

p0 :r∈p0



log µ 0 p

(xr )



log µk(t) (xr ) + r

X p0 :r∈p0

k(t)

log µ 0 p

(xr )

  1 Q k(t) k(t) µr (xr ) p0 :r∈p0 µ 0 (xr ) Pr +1 p k(t)

µp

xr

(xr )

Combining everything, we get:   1 h∇f (δ t ), δ¯t+1 − δ t i + γEs D(µ(δ t )||µ(δ t+1 )) n 

  X γX X X t 1 k(t) k(t) t k(t) log µr (xr ) + = (µr (xr ) − µp (xr )) log µp (xr ) − log µp0 (xr ) n r p:r∈p x Pr + 1 p0 :r∈p0 r   " X X t X γX 1  k(t) k(t) k(t) + − µr (xr ) log µr (xr ) + log µp0 (xr ) log µp (xr ) − n r Pr + 1 xr p:r∈p p0 :r∈p0 # Q k(t) X t (xr ) p:r∈p µp + log µr (xr )   Pr Q P +1 k(t) k(t) xr µr (xr ) p:r∈p µp (xr ) r    " X 1 γX X X t k(t) k(t) k(t) log µr (xr ) + + µp (xr ) log µp (xr ) − log µp0 (xr ) n r p:r∈p x Pr + 1 0 0 p :r∈p

r

+ log

X xr

"

=

µtp (xr )

  1 # Q P +1 k(t) k(t) µr (xr ) p0 :r∈p0 µp0 (xr ) r k(t)

µp (xr ) Q k(t) (xr ) p:r∈p µp

X t γX log µr (xr )   Pr n r Q P +1 k(t) k(t) xr µr (xr ) p:r∈p µp (xr ) r   1 # Q P +1 k(t) k(t) µr (xr ) p0 :r∈p0 µp0 (xr ) r X X t + log µp (xr ) k(t) µp (xr ) p:r∈p xr

20

So finally, Es [f (δ

t+1

" X µtr (xr ) γX log )] − f (δ ) = k(t) n r (xr ) x r µr t

! Y

µk(t) (xr ) r

1 Pr +1

µk(t) (xr ) p

p:r∈p

 1 # Pr +1 X µtp (xr ) Y k(t) k(t)   + log µr (xr ) µp0 (xr ) k(t) (xr ) p:r∈p xr µp p0 :r∈p0 

X

B.2

(18)

Proof of Proposition 4

Proof. As in the Pencil block, we begin with separating the delay and improvement terms: ! P 1+1 r X µt (xr ) Y r k(t) k(t) log µ (x ) µ (x ) r r r p k(t) xr µr (xr ) p:r∈p   P 1+1 r Y k(t) X X µtp (xr ) µk(t)  (x ) µ (x ) + log r r r p0 k(t) p:r∈p xr µp (xr ) p0 :r∈p0  ! ! P 1+1  r t X Y µr (xr )   µk(t) µk(t) ≤ log  max k(t) r (xr ) p (xr ) xr µ r (xr ) xr p:r∈p     P 1+1  ! r t X X Y (x ) µ    p r k(t) k(t)   + log  max k(t) µ (x ) µ (x )   r r r p0 xr µ p (xr ) p:r∈p xr p0 :r∈p0 = max log xr

µtr (xr ) k(t)

X

max log xr

µtp (xr )

[delay]

k(t)

(xr )   P 1+1 Pr +1 r Y X   k(t) k(t)   µr (xr ) µp0 (xr ) + log   µr

(xr ) 

+

p:r∈p

[Hölder]

µp

[stale improvement]

p0 :r∈p0

xr

So finally, we obtain:    d+1,r(d) t−1 X µ (x ) r γ max log r(d) + Es [f (δ t+1 )] − f (δ t ) ≤ xr n µdr(d) (xr ) d=k(t)

X p:r(d)∈p

max log xr

d+1,r(d) µp (xr ) µdp (xr )

! 

   P 1+1 Pr +1 r X X Y γ   k(t) k(t)   + log  µr (xr ) µp0 (xr )  n r 0 0 x p :r∈p

r

B.3

Proof of Theorem 2

Proof. As in the Pencil block, we first bound the delay term using µd+1 (xr )/µdr (xr ) ≤ e2M/γ (and r likewise for all parents p).    P 1+1 Pr +1 r X X Y γ ¯ γ   k(t) k(t) t+1 t   Es [f (δ )] − f (δ ) ≤ τ 2(P + 1)M/γ + log  µr (xr ) µp0 (xr )  n n r 0 0 x r

21

p :r∈p

Now, using k∇f k2 ≥ c and Proposition 1.5 in Meshi et al. [2014], we obtain:   1 Pr +1 Pr +1 2 X 1 X X  k(t) X Y c   k(t) µrk(t) (xr ) ≤− µp (xr ) − µk(t) (xr ) ≤ − ¯ log  µp0 (xr )  r 4P 4 P r 0 0 r p:r∈p x x 

X r

r

p :r∈p

r

Using the assumed bound on the delay τ ≤

(1−ρ)γc , 8P¯ (P¯ +1)M

   1 Pr +1 Pr +1 X X Y (1 − ρ)γc γ ¯ γ   k(t) µk(t)  Es [f (δ t+1 )] − f (δ t ) ≤ ¯ ¯ (P + 1)2M/γ + log  (x ) µ (x )  r r r p0 n r 8P (P + 1)M n x p0 :r∈p0 r

   1 Pr +1 Pr +1 X X Y γ   k(t) µk(t)  ≤ − (1 − ρ) log  (x ) µ (x )  r r r p0 n r 0 0 x p :r∈p

r

   1 Pr +1 Pr +1 X X Y γ   k(t) µk(t)  log  (x ) µ (x ) +  r r r p0 n r 0 0 x p :r∈p

r

   1 Pr +1 Pr +1 X X Y γ   k(t) µk(t)  = ρ log  (x ) µ (x ) .  r r r p0 n r 0 0 x r

p :r∈p

Finally, following the sequential analysis [Nesterov, 2012, Meshi et al., 2014] yields the rate, Es [f (δ t )] − f (δ ∗ ) ≤

8nP¯ B . ργt

Setting ρ = 1/2 completes the proof.

C

Additional Results

In Fig. 4 and Fig. 5 we illustrate the convergence behavior of our approach for γ = 0 and a state space size of 8, as well as for γ = 1 and state space size of 16, respectively. As before, we observe fast convergence of the parallelized approach. For both settings we illustrate in Fig. 6 the speedup w.r.t. a single thread obtained for a specific number of threads of our approach (see Fig. 6 (a)) and for HOGWILD! (see Fig. 6 (b)). The results follow the observation reported in the main paper. As observed in Fig. 6 (c), the speedups of our approach compared to HOGWILD! tend to be slightly bigger than the ones reported in the paper when considering γ = 0 or larger MRFs.

22

4 200

Dual

Ours

5.41 5.4

10 8

1.1225

1 2 4 8 16 32 46

2.725

1 2 4 8 16 32 46

1.122

2.72

5.39

8 400

10 8

Dual

1 2 4 8 16 32 46

5.42

8 200

10 7

Dual

2.73

1.1225

1 2 4 8 16 32 46

1.122

Dual

2 200 10 6

1.1215

1.1215

5.38 1.121

2.715

5.37 10 3

10 4

10 3

Time [ms] 10

1.121

10 4

10 3

Time [ms]

6

2.73

10

10 4

10 5

10 3

Time [ms]

7

10

10 4

10 5

Time [ms]

8

10

1.1225

8

1.1225

2.725

5.39 5.38 5.37

1 2 4 8 16 32 46

2.72

2.715 10 3

1.122

Dual

Dual

5.4

1 2 4 8 16 32 46

1.1215

1.121

10 4

10 3

Time [ms]

1.122

Dual

5.41

Dual

HOGWILD!

5.42

1 2 4 8 16 32 46

10 4

1.1215

1.121 10 3

Time [ms]

10 4

1 2 4 8 16 32 46

10 5

10 3

Time [ms]

10 4

10 5

Time [ms]

Figure 4: For γ = 0 and an 8 state model, we illustrate the convergence behavior of our approach compared to HOGWILD!, for a variety of MRF configurations (2, 4, 8), and different number of iterations (200, 400). Different number of threads are used for each configuration. 2 200 4 200 8 200 8 400

1.14

5.705

Dual

Dual

Ours

1.145

2.3435

1 2 4 8 16 32 46

5.71

5.7

10 8 1 2 4 8 16 32 46

2.343 2.3425

5.695 5.69

1.135 5.685

2.342 2.3415

2.3435

10 5

10 3

2.341

2.341 2.3405 2.34 10 4

2.3435

1 2 4 8 16 32 46

5.705 5.7

1 2 4 8 16 32 46

2.3425

5.695 5.69

1.135 5.685

2.342 2.3415

10 4

Time [ms]

10 5

10 3

10 4

10 5

10 6

10 8 1 2 4 8 16 32 46

2.343 2.3425 2.342 2.3415 2.341

2.3405

2.3405 2.34 10 4

Time [ms]

2.3435

2.341

2.34 10 3

10 4

Time [ms]

10 8

2.343

Dual

5.71

Dual

1.14

10 6

Time [ms]

10 7 1 2 4 8 16 32 46

1.145

Dual

10 5

Time [ms]

10 7

HOGWILD!

10 4

2.342 2.3415

2.3405

Dual

10 4

Time [ms]

1 2 4 8 16 32 46

2.3425

2.34 10 3

10 8

2.343

Dual

10 7 1 2 4 8 16 32 46

Dual

10 7

Time [ms]

10 6

10 4

10 6

Time [ms]

Figure 5: For γ = 1 and a 16 state model, we illustrate the convergence behavior of our approach compared to HOGWILD!, for a variety of MRF configurations (2, 4, 8), and different number of iterations (200, 400). Different number of threads are used for each configuration.

23

Ours

HOGWILD!

Comparison 300

40

30

20

10

2 200 4 200 8 200 8 400

250

20

20

30

150 100

10

10

2 200 4 200 8 200 8 400

200

30

speedup

2 200 4 200 8 200 8 400

speedup f

speedup f

40

40

50

10

threads

20

30

0 40

10

threads

20

30

40

30

40

threads 200

40

30

20

10

2 200 4 200 8 200 8 400

150

30

speedup

2 200 4 200 8 200 8 400

speedup f

speedup f

40

20

20

threads

(a)

30

40

100

50

10

10

2 200 4 200 8 200 8 400

10

20

30

threads

(b)

40

0 10

20

threads

(c)

Figure 6: Speedup w.r.t. single thread obtained for a specific number of threads for our approach (a) and HOGWILD! (b), using a variety of MRF neighborhoods (2, 4, 8), and different number of iterations (200, 400). Speedups are shown for: (top) γ = 1 and 8 states, (bottom) γ = 1 and 16 states. (c) shows the speedup of our method compared to HOGWILD!.

24

Asynchronous Parallel Coordinate Minimization ... - Research at Google

passing inference is performed by multiple processing units simultaneously without coordination, all reading and writing to shared ... updates. Our approach gives rise to a message-passing procedure, where messages are computed and updated in shared memory ...... Clouds (LCCC), 2010. D. Sontag, A. Globerson, and T.

1MB Sizes 0 Downloads 449 Views

Recommend Documents

Asynchronous Parallel Coordinate Minimization ... - Research at Google
Arock: An algorithmic framework for asynchronous parallel coordinate updates. SIAM Journal on Scientific Computing, 38(5):A2851–A2879, 2016. N. Piatkowski and K. Morik. Parallel inference on structured data with crfs on gpus. In International Works

Asynchronous Stochastic Optimization for ... - Research at Google
for sequence training, although in a rather limited and controlled way [12]. Overall ... 2014 IEEE International Conference on Acoustic, Speech and Signal Processing (ICASSP) ..... Advances in Speech Recognition: Mobile Environments, Call.

Asynchronous Stochastic Optimization for ... - Research at Google
Deep Neural Networks: Towards Big Data. Erik McDermott, Georg Heigold, Pedro Moreno, Andrew Senior & Michiel Bacchiani. Google Inc. Mountain View ...

Semantics of Asynchronous JavaScript - Research at Google
tive C++ runtime, others in the Node.js standard library. API bindings, and still others defined by the JavaScript ES6 promise language feature. These queues ...... the callbacks associated with any database request would be stored in the same workli

A Dual Coordinate Descent Algorithm for SVMs ... - Research at Google
International Journal of Foundations of Computer Science c World ..... Otherwise Qii = 0 and the objective function is a second-degree polynomial in β. Let β0 ...

Asynchronous Parallel Bayesian Optimisation via ...
Asynchronous Parallel Bayesian Optimisation via Thompson Sampling. Kirthevasan Kandasamy, Akshay Krishnamurthy, Jeff Schneider, Barnabás Póczos.

Asynchronous Multi-Party Computation With ... - Research at Google
Digital signatures. We assume the existence of a digital signature scheme unforge- able against an adaptive chosen message attack. For a signing key s and a ...

Parallel Spectral Clustering - Research at Google
a large document dataset of 193, 844 data instances and a large photo ... data instances (denoted as n) is large, spectral clustering encounters a quadratic.

Parallel Boosting with Momentum - Research at Google
Computer Science Division, University of California Berkeley [email protected] ... fusion of Nesterov's accelerated gradient with parallel coordinate de- scent.

Asynchronous Parallel Bayesian Optimisation via ...
Related Work: Bayesian optimisation methods start with a prior belief distribution for f and ... We work in the Bayesian paradigm, modeling f itself as a random quantity. ..... Parallel predictive entropy search for batch global optimization.

the matching-minimization algorithm, the inca ... - Research at Google
possible to simultaneously recover a bi-directional mapping between two sets of vectors .... Follow- ing [23] we define the composite minimization criterion D as:.

General and Nested Wiberg Minimization: L2 ... - Research at Google
the computer vision community. Recently, Eriksson and van den ... We call the resulting algorithm general Wiberg minimization. As an example of this idea, we ...

General and Nested Wiberg Minimization - Research at Google
approach to L1 matrix factorization using linear program- ming. ... son and van den Hengel's development, we generalize their method beyond ... ear system, min y. ||d − Cy||1. (5) ..... Section 3.3 explained that a trust region is necessary to.

Delay-Tolerant Algorithms for Asynchronous ... - Research at Google
Nov 7, 2014 - delays grow large (1000 updates or more), our new algorithms ... are particularly concerned with sparse data, where n is very large, say 106 ...

Asynchronous, Online, GMM-free Training of a ... - Research at Google
ber of Android applications: voice search, translation and the ... 1.5. 2.0. 2.5. 3.0. 3.5. 4.0. 4.5. 5.0. Cross Entropy Loss. Cross Entropy Loss. 0 5 10 15 20 25 30 ...

Online, Asynchronous Schema Change in F1 - Research at Google
Aug 26, 2013 - quires a distributed schema change to update all servers. Shared data ..... that table is associated with (or covered by) exactly one optimistic ...

Large-Scale Parallel Statistical Forecasting ... - Research at Google
tools for interactive statistical analysis using this infrastructure has lagged. ... Split-apply-combine [26] is a common strategy for data analysis in R. The strategy.

Optimal trajectory control for parallel single ... - Research at Google
Let xk,yk be the solution of the above optimization. Then ... the following analytic formula. [xk yk. ] .... operator to obtain the analytic formula of iL(t),vC(t), and io(t).

GraphSC: Parallel Secure Computation Made ... - Research at Google
statistics, ad campaigns, road traffic and disease monitoring, etc). Secure ... GraphLab) is to compute influence in a social graph through, .... To the best of our ..... networks through back propagation [62] or parallel empirical ..... Page 10 ...

Parallel Algorithms for Unsupervised Tagging - Research at Google
ios (for example, Bayesian inference methods) and in general for scalable techniques where the goal is to perform inference on the same data for which one.

Overcoming the Lack of Parallel Data in ... - Research at Google
compression is making use of rich feature rep- ..... As an illustration to the procedure, consider the .... 6Recall from the beginning of the section that for the full.