SDCA without Duality
Shai Shalev-Shwartz
Introduction
The following regularized loss minimization problem is associated with many machine learning methods:
As its name indicates, SDCA is derived by considering a dual problem. In this paper, we consider the possibility of applying SDCA for problems in which individual are non-convex, e.g., deep learning optimization problems. In many such cases, the dual problem is meaningless. Instead of directly using the dual problem, we describe and analyze a variant of SDCA in which only gradients of are being used (similar to option 5 in the pseudo code of Prox-SDCA given in ). Following , we show that SDCA is a variant of the Stochastic Gradient Descent (SGD), that is, its update is based on an unbiased estimate of the gradient. But, unlike the vanilla SGD, for SDCA the variance of the estimation of the gradient tends to zero as we converge to a minimum.
In recent years, many methods for optimizing regularized loss minimization problems have been proposed. For example, SAG , SVRG , Finito , SAGA , and S2GD . The best convergence rate is for accelerated SDCA . A systematic study of the convergence rate of the different methods under non-convex losses is left to future work.
SDCA without Duality
Dual-Free SDCA() Goal: Minimize Input: Objective , number of iterations , step size s.t. , initial dual vectors Initialize: For Pick uniformly at random from Update: Update:
Observe that SDCA keeps the primal-dual relation
Observe also that the update of can be rewritten as
namely, the new value of is a convex combination of its old value and the negation of the gradient. Finally, observe that, conditioned on the value of and , we have that
That is, SDCA is in fact an instance of Stochastic Gradient Descent. As we will see in the analysis section below, the advantage of SDCA over a vanilla SGD algorithm is because the variance of the update goes to zero as we converge to an optimum.
Analysis
The theorem below provides a linear convergence rate for smooth and convex functions. The rate matches the analysis given in , but the analysis is simpler and does not rely on duality.
Assume that each is -smooth and convex, and the algorithm is run with . Let be the minimizer of and let . Then, for every ,
In particular, setting , then after
The theorem below provides a linear convergence rate for smooth functions, without assuming that individual are convex. We only require that the average of is convex. The dependence on is worse in this case.
Assume that each is -smooth and that the average function, , is convex. Let be the minimizer of and let . Then, if we run SDCA with , we have that
The advantage of SDCA over a generic SGD is that the variance of the update goes to zero as we converge to the optimum. To see this, observe that
Proofs
Observe that , which implies that .
Define and . We also denote two potentials:
We will first analyze the evolution of and . If on round we update using element then , where . It follows that,
The proofs of Theorem 1 and Theorem 2 will follow by studying different combinations of and .
The definition of implies that , so the coefficient of is non-negative. By smoothness of each we have . Therefore,
Using the strong convexity of we have and , which together yields . Therefore,
and repeating this recursively we end up with
which concludes the proof of the first part of Theorem 2. The second part follows by observing that is smooth, which gives .
2 Proof of Theorem 1
In the proof of Theorem 1 we bounded the term by based on the smoothness of . We now assume that is also convex, which enables to bound based on the current sub-optimality.
Assume that each is -smooth and convex. Then, for every ,
Clearly, since is -smooth so is . In addition, by convexity of we have for all . It follows that is non-negative and smooth, and therefore, it is self-bounded (see Section 12.1.3 in ):
Using the definition of , we obtain
where in the last inequality we used the assumption