<?xml-model href='http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng' schematypens='http://relaxng.org/ns/structure/1.0'?><TEI xmlns="http://www.tei-c.org/ns/1.0">
	<teiHeader>
		<fileDesc>
			<titleStmt><title level='a'>Asynchronous Dual Free Stochastic Dual Coordinate Ascent for Distributed Data Mining</title></titleStmt>
			<publicationStmt>
				<publisher></publisher>
				<date>2018</date>
			</publicationStmt>
			<sourceDesc>
				<bibl> 
					<idno type="par_id">10130961</idno>
					<idno type="doi"></idno>
					<title level='j'>IEEE International Conference on Data Mining (ICDM 2018)</title>
<idno></idno>
<biblScope unit="volume"></biblScope>
<biblScope unit="issue"></biblScope>					

					<author>Zhouyuan Huo</author><author>Xue Jiang</author><author>Heng Huang</author>
				</bibl>
			</sourceDesc>
		</fileDesc>
		<profileDesc>
			<abstract><ab><![CDATA[The primal-dual distributed computational methods have broad large-scale data mining applications. Previous primaldual distributed methods are not applicable when the dual formulation is not available, e.g. the sum-of-non-convex objectives. Moreover, these algorithms and theoretical analysis are based on the fundamental assumption that the computing speeds of multiple machines in a cluster are similar. However, the straggler problem is an unavoidable practical issue in the distributed system because of the existence of slow machines. Therefore, the total computational time of the distributed optimization methods is highly dependent on the slowest machine. In this paper, we address these two issues by proposing novel distributed asynchronous dual free stochastic dual coordinate ascent algorithm for distributed data mining. Our method does not need the dual formulation of the target problem in the computation. We tackle the straggler problem through asynchronous communication and the negative effect of slow machines is significantly alleviated.We also analyze the convergence rate of our method and prove the linear convergence rate even if the individual functions in objective are non-convex. Experiments on both convex and nonconvex loss functions are used to validate our statements.]]></ab></abstract>
		</profileDesc>
	</teiHeader>
	<text><body xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink">
<div xmlns="http://www.tei-c.org/ns/1.0"><head>I. INTRODUCTION</head><p>In this paper, we consider solving the 2 -norm regularized empirical loss minimization problem which is arising ubiquitously in supervised machine learning and data mining problems:</p><p>We let f (w) = 1 n n i=1 &#966; i (w) and w &#8712; R d be the linear predictor to be optimized. There are many applications falling into this formulation, such as classification, regression, and principal component analysis (PCA). In classification, given features x i &#8712; R d and labels y i &#8712; {1, -1}, we obtain Support Vector Machine (SVM) when we let &#966; i (w) = max{0, 1y i x T i w}. In regression, given features x i &#8712; R d and response y i &#8712; R, we have Ridge Regression problem if &#966; i (w) = (y ix T i w) 2 . Recently, <ref type="bibr">[1]</ref>, <ref type="bibr">[2]</ref> showed that the problem of PCA can be solved through convex optimization. Supposing C = 1 n n i=1 x i x T i be normalized covariance matrix, <ref type="bibr">[1]</ref> showed that approximating the principle component of A is equivalent to minimizing f (w) = 1  2 w T (&#181;I -C)w-b T w given &#181; &gt; 0 and b &#8712; R d . Defining &#966; i (w) = 1  2 w T ((&#181; -&#955; 2 )I -x i x T i )w -b T w and &#181; &gt; &#963; 1 (C) + &#955; 2 where &#963; 1 (C) denotes the largest singular value of C, it also falls into problem <ref type="bibr">(1)</ref>. In this case, f (w) is convex while each &#966; i (w) is probably non-convex.</p><p>Distributed machine learning and data mining methods are required to solve the problem <ref type="bibr">(1)</ref> when the data are distributed over multiple machines. In <ref type="bibr">[3]</ref>, the authors proposed communication-efficient distributed dual coordinate ascent (CoCoA) for primal-dual distributed optimization. In each iteration, the CoCoA framework allows workers to optimize subproblems independently at first. After that, it calls "Reduce" operation to collect local solution from all workers, and updates global variable and broadcasts the up-to-date global variable to workers in the end. It uses stochastic dual coordinate ascent (SDCA) as the local solver which is one of the most successful methods proposed for solving the problem (1) <ref type="bibr">[4]</ref>, <ref type="bibr">[5]</ref>. In <ref type="bibr">[6]</ref>, the authors proved that SDCA has linear convergence if the convex function &#966; i (w) is smooth, which is much faster than stochastic gradient descent (SGD). <ref type="bibr">[7]</ref>, <ref type="bibr">[8]</ref> also proposed distributed SDCA and analyzed the tradeoff between computation and communication. <ref type="bibr">[9]</ref>, <ref type="bibr">[10]</ref> accelerated the CoCoA by allowing for more aggressive updates, and proved that CoCoA has linear primal-dual convergence for the smooth convex problem and sublinear convergence for the non-smooth convex problem. However, there are two issues for these primal-dual distributed methods. Firstly, all of them use SDCA as the local solver. SDCA is not applicable when the dual problem is unknown, e.g. &#966; i is non-convex. Therefore, the applications of these primal-dual distributed methods are limited. Secondly, all of these methods assume that the workers have similar computing speed, which is not true in practice. Straggler problem is an unavoidable practical issue in the distributed data mining. Thus, the computing time of CoCoA and distributed SDCA is dependent on the slowest worker. Even if there is only one bad worker, they will work far slower than expectation.</p><p>In <ref type="bibr">[11]</ref>, <ref type="bibr">[12]</ref>, the authors proposed dual free stochastic dual coordinate ascent (dfSDCA). It was proved to admit similar convergence rate to SDCA while it did not rely on duality at all. However there is no distributed machine learning method using dfSDCA, and its convergence analysis is still unknown yet.</p><p>In this paper, we solve the above two challenging issues in previous primal-dual distributed machine learning methods by proposing novel Distributed Dual Free Stochastic Dual Coordinate Ascent (Dis-dfSDCA). We use dfSDCA as the local solver such that Dis-dfSDCA can be applied to the nonconvex problem easily. We alleviate the effect of straggler Fig. <ref type="figure">1</ref>: Distributed asynchronous dual free stochastic dual coordinate ascent for parameter server framework. In iteration t, the server receives gradient message v k from worker k, and sends the up-to-date w t back to the worker k. Global variables in other workers are stale. For example worker 1 and K store stale global variables w t-2 and w t-5 respectively.</p><p>problem by allowing asynchronous communication between server and workers. As shown in Figure <ref type="figure">1</ref>, the server does not wait and workers may store the stale global variable in the local. We also analyze the convergence rate of our method and prove that it admits linear convergence rate even if the individual losses (&#966; i ) are non-convex, as long as the sum of losses f is convex. Finally, we conduct simulation on the distributed system with straggler problem. Experimental results verify our theoretical conclusions and show that our method works well in practice.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>II. PRELIMINARY</head><p>To optimize the primal problem (1), we often derive and optimize its dual problem alternatively:</p><p>where &#966; * i is the convex conjugate function to &#966; i , A = [x 1 , x 2 , ...x n ] &#8712; R d&#215;n denotes data matrix and &#945; &#8712; R n denotes dual variable. We can use stochastic gradient descent (SGD) to optimize primal problem (1), however, there are always two issues: (1) SGD is too aggressive at the beginning of the optimization; (2) it does not have a clear stopping criterion. One of the biggest advantages of optimizing the dual problem is that we can keep tracking the duality gap G(&#945;) to monitor the progress of optimization. Duality gap is defined as: G(&#945;) = P (w(&#945;)) -D(&#945;), where P (w(&#945;)) and D(&#945;) denote objective values of primal problem and dual problem respectively. If w * is the optimal solution of primal problem (1) and &#945; * is the optimal solution of dual problem (2), the primal-dual relation always holds that:</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Stochastic Dual Coordinate Ascent</head><p>In <ref type="bibr">[6]</ref>, the authors proposed stochastic dual coordinate ascent (SDCA) to optimize the dual problem <ref type="bibr">(2)</ref>. The pseudocode of SDCA is presented in Algorithm 1. In iteration t, given sample i and other dual variables &#945; j =i fixed, we maximize the following subproblem:</p><p>(4) e i denotes coordinate vector of size n, where element i is 1 and other elements are 0. In their paper, the authors proved that SDCA admits linear convergence rate for smooth loss, which is much faster than stochastic gradient descent (SGD).</p><p>An accelerated SDCA was also proposed in <ref type="bibr">[5]</ref>. However, SDCA is not applicable when it is difficult to derive the dual problem, e.g. &#966; i are non-convex. Randomly sample i from {1, 2, ..., n};</p><p>4:</p><p>Find &#8710;&#945; i to maximize the subproblem (4); </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Dual Free Stochastic Dual Coordinate Ascent</head><p>To address the limitation of SDCA, <ref type="bibr">[11]</ref> proposes Dual Free Stochastic Coordinate Ascent (dfSDCA) which has similar convergence property to SDCA. The pseudocode of dfSDCA is presented in Algorithm 2. Although we keep vector &#945; &#8712; R n in the optimization, the derivation of dual problem is not necessary for dfSDCA. According to the update rule of &#945; and w in the algorithm, the primal-dual relation (3) also holds for dfSDCA. The drawback of dfSDCA is that it is spaceconsuming to store &#945;, whose space complexity O(nd). We can reduce it to O(n) if &#8711;&#966; i (w) can be written as &#8711;&#966; i (x T i w)x i . In <ref type="bibr">[13]</ref>, the authors accelerated dfSDCA by using non-uniform sampling strategy in each iteration and proved that it admits faster convergence.</p><p>Algorithm 2 Dual Free SDCA 1: Initialize dual variable &#945; 0 = (&#945; 0 0 , ..., &#945; 0 n ) where &#8704;i, &#945; 0 i &#8712; R d , primal variable w 0 = w(&#945; 0 ); 2: for t = 0, 1, 2, . . . , T -1 do</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>3:</head><p>Randomly sample i from {1, 2, ..., n}; In this section, we propose Distributed Asynchronous Dual Free Stochastic Coordinate Ascent (Dis-dfSDCA) for distributed optimization. Dis-dfSDCA fits for any parameter server framework, where the star-shape network is used. We assume that there are n samples in the dataset, and they are evenly distributed over K workers. In worker k, there are n k samples. It is satisfied that n = K k=1 n k . Different from sequential dfSDCA, we split the update of dual variable and primal variable into different nodes. The pseudocodes of Dis-dfSDCA for server node and worker nodes are presented in Algorithm 3 and Algorithm 4 respectively.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Update Global Variable w on Server</head><p>The up-to-date global variable w &#8712; R d is stored and updated on the server. Initially, w is set to be vector zero. At the beginning of each iteration, the server receives gradient message v k from arbitrary worker k and let v t = v k . Then it updates the global variable through:</p><p>Finally, it sends the up-to-date global variable back to the worker k for further computation. Asynchronous method is robust to straggler problem because it allows for updating the global variable when receiving from only one worker. However, if the w in the worker is too stale, it may lead the algorithm to diverge. Therefore, we induce two loops in our algorithm. Server broadcasts the latest global variable w to all workers after every T iterations. In this way, we prevent the problem of divergence and keep the advantage of asynchronous communication at the same time. Algorithm 3 summarizes the pseudocode on the server.</p><p>Update global variable w s+1,t+1 through: w s,t+1 &#8592; w s,t -&#951;v s,t ; Send w s,t+1 back to worker k ; end for w s+1,0 = w s,T Broadcast the up-to-date global variable w s+1,0 to all workers. end for</p><p>In Algorithm 3, we use the update of vanilla dfSDCA in the server. <ref type="bibr">[12]</ref> proposed accelerated dfSDCA by using "Catalyst" algorithm of <ref type="bibr">[14]</ref>. It is proved to admit faster convergence rate by a constant factor. Our Algorithm 3 can also be extended to the accelerated version easily. In our paper, we only consider the vanilla version and analyze the convergence rate of our algorithm.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Update Local Variable &#945; on Worker</head><p>In the distributed optimization, workers are responsible for the gradient computation which is the main workload during the optimization. We take arbitrary worker k as an example. Dual variable &#945; [k] &#8712; R n k is only stored and updated in the worker k, each &#945; i is corresponding to sample i. Initially, local variable &#945; [k] is set to be vector zero. After receiving stale global variable w s,d(t) &#8712; R d from the server, worker k computes the dual residue &#954; and updates local variable &#945; i and gradient message v k for H iterations. Samples I t are randomly selected in the local dataset, and we set</p><p>Receive global variable w s,d(t) from server; Initialize gradient message:</p><p>Send gradient message v k to server; until Termination iteration, worker k selects a sample i randomly and computes the dual residue &#954; for coordinate i of the dual variable through:</p><p>Dual residue can also be viewed as the gradient in Stochastic Gradient Descent. When we obtain optimal dual variable &#945; * and primal variable w * , &#954; should be 0. Therefore, it is satisfied that &#945; * i = -&#8711;&#966; i (w * ). Then worker k updates local dual variable &#945; i and gradient message v k separately through:</p><p>Because there is only one &#945; i in the cluster, it is always up-todate. After H iterations, the worker k sends gradient message v k to the server. From the update rule in our algorithm, it is easy to know that the well-known primal-dual relation in the equation ( <ref type="formula">3</ref>) is always satisfied. The pseudocode of Dis-dfSDCA in worker node k is described in Algorithm 4.</p><p>In Algorithm 4, we use vanilla dfSDCA in the worker which samples with uniform distribution. There are also other sampling techniques proposed to accelerate dfSDCA. As per the sampling strategy in <ref type="bibr">[11]</ref>, <ref type="bibr">[13]</ref>, <ref type="bibr">[12]</ref>, <ref type="bibr">[15]</ref>, there are three options: uniform sampling, importance sampling, and adaptive sampling. In importance sampling strategy <ref type="bibr">[12]</ref>, it first computes the fixed probability distribution p i using smoothness parameter of each function &#966; i , then selects samples following this probability. In adaptive sampling strategy <ref type="bibr">[13]</ref>, it computes the adaptive probability distribution p i using dual residue &#954; for each sample every iteration, then selects samples following this probability. Both of them are proved to admit faster convergence than vanilla dfSDCA with uniform sampling. We only consider the uniform sampling strategy, and analyze its corresponding convergence rate in our paper. However, other sampling techniques are straightforward to be applied to our distributed method.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>IV. CONVERGENCE ANALYSIS</head><p>In this section, we provide the theoretical convergence analysis of Dis-dfSDCA. For the case of convex losses &#966; i , we prove that Dis-dfSDCA admits linear convergence rate. If losses &#966; i are non-convex, we also prove linear convergence rate as long as the sum-of-non-convex objectives f is convex.</p><p>We make the following assumptions for the primal problem (1) for further analysis. All of them are common assumptions in the theoretical analysis for the asynchronous stochastic methods.</p><p>Assumption 1 (Lipschitz Constant): We assume &#8711;&#966; i is Lipschitz continuous, and there is Lipschitz constant L such that &#8704;x, y &#8712; R d :</p><p>We can also know that P is (L + &#955;)-smooth:</p><p>Assumption 2 (Maximum Time Delay): We assume that the maximum time delay of the global variable in each worker is upper bounded by &#964; , such that:</p><p>&#964; is relevant to the number of workers K in the system. We can also control &#964; through inner iteration T in our algorithm.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Convex Case</head><p>In this section, we assume that the losses &#966; i are convex, and prove that our method admits linear convergence.</p><p>Assumption 3 (Convexity): We assume losses &#966; i are convex, such that &#8704;x, y &#8712; R d :</p><p>In our algorithm, dual variables &#945; <ref type="bibr">[1]</ref> , ..., &#945; . For brevity, we write v s,t , w s,t and &#945; s,t as v t , w t and &#945; t . According to our algorithm, we know that:</p><p>where</p><p>). In our analysis, we also assume that there are no duplicate samples in I t . To analyze the convergence rate of our method, we need to prove the following Lemma 1 at first.</p><p>Lemma 1: Let w * be the global solution of P (w), and &#945; * i = -&#8711;&#966; i (w * ). Following the proof in <ref type="bibr">[11]</ref>, we define A t and B t as follows:</p><p>According to our algorithm, we can prove that A t+1 and B t+1 are upper bounded:</p><p>)</p><p>Theorem 1: Suppose losses &#966; i are convex and &#8711;&#966; i are Lipschitz continuous. Let w * be the optimal solution to P (w), and</p><p>We can prove that as long as:</p><p>the following inequality holds:</p><p>Proof sketch: 1 Substituting A t+1 and B t+1 according to Lemma 1, the following inequality holds that:</p><p>Adding the above inequality from t = 0 to t = T -1, we have:</p><p>where the inequality follows from Assumption 2 and &#951;L &#8804; 1.</p><p>1 We provide the proof sketch here, please check the Appendix for details.</p><p>we have the following inequality:</p><p>Because C t &#8805; 0, then we complete the proof that</p><p>Because &#8711;P (w) is Lipschitz continuous, we know that:</p><p>Theorem 2: We consider the outer iteration s, and write C t as C s,t . According to Algorithm 3, we know C s+1,0 = C s,T . Following Theorem 1 and applying <ref type="bibr">(19)</ref> for S iterations, it is satisfied that:</p><p>In particular, to achieve E[P (w S,0 ) -P (w * )] &#8804; &#949;, it suffices to set &#951; = 1 4HL&#964; 2 +&#955;n+2L and</p><p>From Theorem 1 and 2, we know that our Dis-dfSDCA admits linear convergence if losses &#966; i are convex. According to Theorem 2, we observe that &#964; affects the speed of our convergence, if &#964; &#8594; &#8734;, it may lead our algorithm to diverge. Therefore, it is important to keep &#964; within a reasonable bound. In our algorithm, &#964; is relevant to the number of workers and less than T . When we let H = 1 and &#964; = 0, S is relevant to O( L &#955; + n). It is compatible with the convergence analysis of sequential dfSDCA in <ref type="bibr">[11]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Non-convex Case</head><p>In this section, we assume that the losses &#966; i are non-convex, while the sum-of-non-convex objectives f is convex. We also prove that Dis-dfSDCA admits linear convergence rate for this case. Firstly, we get the following Lemma 2.</p><p>Lemma 2: Let w * be optimal solution to P (w), and &#945; * i = -&#8711;&#966; i (w * ). Following the definition of A t and B t in Lemma 1, we prove that A t+1 and B t+1 are upper bounded:</p><p>Theorem 3: Suppose f is convex and &#8711;&#966; i is Lipschitz continuous. Let w * be the optimal solution to P (w), and</p><p>We can prove that as long as:</p><p>the following inequality holds:</p><p>Proof sketch: Substituting A t+1 and B t+1 according to Lemma 2, the following inequality holds that:</p><p>Adding the above inequality from t = 0 to t = T -1, we have:</p><p>where the inequality follows from Assumption 2 and &#951;L &#8804; 1.</p><p>we have the following inequality:</p><p>Because C t &#8805; 0, then we complete the proof that</p><p>Theorem 4: We consider the outer iteration s, and write C t as C s,t . According to Algorithm 3, we know C s+1,0 = C s,T . Following Theorem 3 and applying (29) for S iterations, it is satisfied that:</p><p>In particular, to achieve E[P (w S,0 ) -P (w * )] &#8804; &#949;, it suffices to set &#951; = &#955; 2 2HL&#964; 2 &#955; 2 +8HL&#964; 2 (L+&#955;) 2 +4&#955;L 2 +n&#955; 3 and</p><p>From Theorems 3 and 4, we know that our Dis-dfSDCA admits linear convergence even if losses &#966; i are non-convex, as long as the sum-of-non-convex objectives is convex. Comparing Theorems 2 with 4, we can observe that our method needs more iterations to converge to the similar accuracy when &#966; i are non-convex. It is reasonable because non-convex problem is known to be harder to be optimized than convex problem. When we let H = 1 and &#964; = 0, S is relevant to O( L 2 &#955; 2 + n). It is also compatible with the convergence analysis of sequential dfSDCA in <ref type="bibr">[11]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>V. EXPERIMENTS</head><p>In this section, we conduct two simulated experiments on the distributed system with straggler problem. There are mainly three goals, firstly, we want to verify that our Dis-dfSDCA has linear convergence rate for the convex and smooth problem; secondly, we would like to make sure that our method has better speedup property than other primal-dual methods; thirdly, we would like to show that our method is also fit for non-convex losses.</p><p>Our algorithm is implemented using C++, and the point-topoint communication between worker and server is handled by openMPI <ref type="bibr">[16]</ref>. We use Armadillo library <ref type="bibr">[17]</ref> for efficient matrix computation. Experiments are performed on Amazon Web Services, and each node is a t2.medium instance which has two virtual CPUs. In our distributed system, we simulate the straggler problem by forcing one selected worker node to the delaying state for m times as long as the normal computing time of other normal workers with probability p.</p><p>In our experiments, we set p = 0.2 and m is selected from [0, 10] randomly. In practice, all nodes have a tiny possibility of being delayed. The setting in our experiments is to verify that our algorithm is robust to straggler problem, even in the extreme situation.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Convex Case</head><p>In our experiment, we optimize quadratic loss with 2 regularization term to solve binary classification problem:</p><p>where &#955; = 0.1. Datasets in our experiments are from LIBSVM <ref type="bibr">[18]</ref>. Table <ref type="table">I</ref> shows brief details of each dataset. In this problem, because &#8711;&#966; i (w) can be written as &#8711;&#966; i (x T i w), we just need to store &#945; &#8712; R n , and recover &#945; &#8712; R d&#215;n through a i = x i &#945;i . Therefore the space complexity is O(n).</p><p>We compare our method with CoCoA+ <ref type="bibr">[9]</ref>, which is the state-of-the-art distributed primal-dual optimization framework. We reimplement CoCoA+ framework using C++, and use SDCA as the local solver. Learning rate &#951; in our method is selected from &#951; = {1, 0.1, 0.001, 0.0001}.</p><p>1) Convergence of Duality Gap: We compare the duality gap convergence of compared methods in terms of time and epoch number respectively, where duality gap is well defined in <ref type="bibr">[6]</ref>. Experimental results are presented in Figure <ref type="figure">2</ref>. We distribute IJCNN1 dataset over 4 workers. Figures 2a in the   . Results show that our method is faster than CoCoA+ method in both two cases. The reason is that CoCoA+ is affected by the straggler problem in the distributed system. We also optimize problem (36) with COVTYPE dataset using 8 workers, and RCV1 dataset using 16 workers. We can draw the similar conclusion from the results of other two datasets.</p><p>2) Speedup: In this section, we evaluate the scaling up ability of compared methods. The first row of Figure <ref type="figure">3</ref> presents the speedup of compared methods on IJCNN1 and COVTYPE datasets. Speedup is defined as follows:</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Time speedup =</head><p>Running time for serial computation Running time of using K workers (37)</p><p>Figure in the second row shows the convergence of duality gap on RCV1 on multiple machines. It is obvious that Dis-dfSDCA always converges faster than CoCoA+ when they have the same number of workers. Experimental results verify that Dis-dfSDCA has better speedup property than CoCoA+ when there is straggler problem.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Non-convex Case</head><p>In this experiment, we optimize the following convex objective, which is an essential step for principal component analysis in <ref type="bibr">[1]</ref>:</p><p>We conduct the experiment on synthetic data and generate n = 500, 000 random vectors {x 1 , ..., x 500,000 } &#8712; R 500 which are mean subtracted and normalized to have Euclidean norm</p><p>x i x T i denotes covariance matrix, b &#8712; R d denotes a random vector and we let &#181; = 100, &#955; = 10 -4 in the experiment. Because each &#966; i is probably non-convex, CoCoA is not able to solve this problem. In this experiment, we compare with Distributed asynchronous SVRG <ref type="bibr">[19]</ref>.</p><p>In Figure <ref type="figure">4</ref>, it is obvious that Dis-dfSDCA runs faster than Distributed SVRG when there are 4 workers. We can observe the similar phenomenon when there are 8 workers. This observation is reasonable because Distributed SVRG needs to compute two gradients in each inner iteration and full gradient in each outer iteration. Dis-dfSDCA is faster because it only needs to compute one gradient in each iteration. However, Dis-dfSDCA needs O(nd) space for storing &#945; , because &#8711;&#966; i (w) cannot be written as &#8711;&#966; i (x T i w)x i in this problem.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>VI. CONCLUSION</head><p>In this paper, we proposed Distributed Asynchronous Dual Free Coordinate Ascent (Dis-dfSDCA) method for distributed machine learning. We addressed two challenging issues in previous primal-dual distributed optimization methods: firstly, Dis-dfSDCA does not rely on the dual formulation, and can be used to solve the non-convex problem; secondly, Dis-dfSDCA uses asynchronous communication and can be applied on the complicated distributed system where there is straggler problem. We also analyze the convergence rate of Dis-dfSDCA and prove linear convergence even if the loss functions are non-convex, as long as the sum of non-convex objectives is convex. We conduct experiments on the simulated distributed system with straggler problem, and all experimental results consistently verify our theoretical analysis.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>APPENDIX</head><p>Proof to Lemma 1 Proof sketch: In our proof, we suppose that there are no duplicate samples in I t . According to our algorithm, we know that:</p><p>where</p><p>). Following the proof in <ref type="bibr">[11]</ref>, we define A t and B t as follows:</p><p>Defining &#946; = &#951;&#955;n, so in iteration t, &#945; t+1 i = (1 -&#946;)&#945; t i + &#946;(-&#8711;&#966; i (w d(t) )), we have:  where the last inequality follows from that i&#8712;It</p><p>Because &#945; * i = -&#8711;&#966; i (w * ), we have the following inequality:</p><p>where the first inequality follows from Lemma 4, the second inequality follows from Lemma 5, the third and the last inequalities follow from the Assumption 2. In addition, it also follows that:</p><p>We can know E w t -w * , v t is lower bounded that:</p><p>where the equality follows form that v t i is not relevant to the variable before w t+1 and the inequality follows from the convexity of P (w).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Proof to Theorem 1</head><p>Proof sketch: We define C t+1 = c a A t+1 + c b B t+1 and set c a = 1 2&#955;L , c b = 1. Inputting Lemma 1 in equation, we have:</p><p>where the last inequality follows from the L-smooth of P (w):</p><p>Adding the above inequality from t = 0 to t = T -1, we have that:</p><p>where the last inequality follows from Assumption 2 and &#951;L &#8804; 1. If 2H&#951; 2 &#964; 2 + &#951; 2 &#955;n 2L + &#951; 2 -&#951; 2L &#8804; 0 such that:</p><p>Therefore, we have:</p><p>We complete the proof.</p><p>Proof to Lemma 2 Proof sketch: As per the smoothness of &#966; i , we have:</p><p>We can also bound -E w t -w * , v t as follows:</p><p>-E w t -w * , v t = -HE w t -w * , &#8711;P (w where the first inequality follows from the strong convexity of P such that w t -w * , &#8711;P (w t ) &#8805; P (w t ) -P (w * ) + &#955; 2 w t -w * 2 and P (w t ) -P (w * ) &#8805; &#955; 2 w t -w * 2 . Defining &#947; = &#955; 2 and substituting above two inequalities into (42) and (43) respectively, we complete the proof. where &#947; = &#955; 2 . Adding the above inequality from t = 0 to t = T -1, we have that: </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Proof to</head></div></body>
		</text>
</TEI>
