# Semi-Stochastic Gradient Descent Methods Jakub Konečný University of Edinburgh Lehigh University December 3, 2014.

## Presentation on theme: "Semi-Stochastic Gradient Descent Methods Jakub Konečný University of Edinburgh Lehigh University December 3, 2014."— Presentation transcript:

Semi-Stochastic Gradient Descent Methods Jakub Konečný University of Edinburgh Lehigh University December 3, 2014

Based on  Basic Method: S2GD  Konečný and Richtárik. Semi-Stochastic Gradient Descent Methods, December 2013  Mini-batching (& proximal setting): mS2GD  Konečný, Liu, Richtárik and Takáč. mS2GD: mS2GD: Minibatch semi-stochastic gradient descent in the proximal setting, October 2014  Coordinate descent variant: S2CD  Konečný, Qu and Richtárik. S2CD: Semi-Stochastic Coordinate Descent, October 2014

Introduction

Large scale problem setting  Problems are often structured  Frequently arising in machine learning Structure – sum of functions is BIG

Examples  Linear regression (least squares)   Logistic regression (classification) 

Assumptions  Lipschitz continuity of derivative of  Strong convexity of

Gradient Descent (GD)  Update rule  Fast convergence rate  Alternatively, for accuracy we need iterations  Complexity of single iteration – (measured in gradient evaluations)

Stochastic Gradient Descent (SGD)  Update rule  Why it works  Slow convergence  Complexity of single iteration – (measured in gradient evaluations) a step-size parameter

Goal GD SGD Fast convergence gradient evaluations in each iteration Slow convergence Complexity of iteration independent of Combine in a single algorithm

Intuition  The gradient does not change drastically  We could reuse the information from “old” gradient

Modifying “old” gradient  Imagine someone gives us a “good” point and  Gradient at point, near, can be expressed as  Approximation of the gradient Already computed gradientGradient change We can try to estimate

The S2GD Algorithm Simplification; size of the inner loop is random, following a geometric rule

Theorem

Convergence rate  How to set the parameters ? Can be made arbitrarily small, by decreasing For any fixed, can be made arbitrarily small by increasing

Setting the parameters  The accuracy is achieved by setting  Total complexity (in gradient evaluations) # of epochs full gradient evaluation cheap iterations # of epochs stepsize # of iterations Fix target accuracy

Complexity  S2GD complexity  GD complexity  iterations  complexity of a single iteration  Total

Related Methods  SAG – Stochastic Average Gradient (Mark Schmidt, Nicolas Le Roux, Francis Bach, 2013)  Refresh single stochastic gradient in each iteration  Need to store gradients.  Similar convergence rate  Cumbersome analysis  SAGA (Aaron Defazio, Francis Bach, Simon Lacoste-Julien, 2014)  Refined analysis  MISO - Minimization by Incremental Surrogate Optimization (Julien Mairal, 2014)  Similar to SAG, slightly worse performance  Elegant analysis

Related Methods  SVRG – Stochastic Variance Reduced Gradient (Rie Johnson, Tong Zhang, 2013)  Arises as a special case in S2GD  Prox-SVRG (Tong Zhang, Lin Xiao, 2014)  Extended to proximal setting  EMGD – Epoch Mixed Gradient Descent (Lijun Zhang, Mehrdad Mahdavi, Rong Jin, 2013)  Handles simple constraints,  Worse convergence rate

Experiment (logistic regression on: ijcnn, rcv, real-sim, url)

Extensions

Extensions summary  S2GD:  Efficient handling of sparse data  Pre-processing with SGD (S2GD+)  Non-strongly convex losses  High-probability result  Minibatching: mS2GD  Konečný, Liu, Richtárik and Takáč. mS2GD: mS2GD: Minibatch semi-stochastic gradient descent in the proximal setting, October 2014  Coordinate descent variant:S2CD  Konečný, Qu, Richtárik. S2CD: Semi-Stochastic Coordinate Descent, October 2014

Sparse data  For linear/logistic regression, gradient copies sparsity pattern of example.  But the update direction is fully dense  Can we do something about it? DENSESPARSE

Sparse data  Yes we can!  To compute, we only need coordinates of corresponding to nonzero elements of  For each coordinate, remember when was it updated last time –  Before computing in inner iteration number, update required coordinates  Step being  Compute direction and make a single update Number of iterations when the coordinate was not updated The “old gradient”

Sparse data implementation

S2GD+  Observing that SGD can make reasonable progress, while S2GD computes first full gradient (in case we are starting from arbitrary point), we can formulate the following algorithm (S2GD+)

S2GD+ Experiment

High Probability Result  The result holds only in expectation  Can we say anything about the concentration of the result in practice? For any we have: Paying just logarithm of probability Independent from other parameters

Code  Efficient implementation for logistic regression - available at MLOSS http://mloss.org/software/view/556/

mS2GD (mini-batch S2GD)  How does mini-batching influence the algorithm?  Replace by  Provides two-fold speedup  Provably less gradient evaluations are needed (up to certain number of mini-batches)  Easy possibility of parallelism

S2CD (Semi-Stochastic Coordinate Descent)  SGD type methods  Sampling rows (training examples) of data matrix  Coordinate Descent type methods  Sampling columns (features) of data matrix  Question: Can we do both?  Sample both columns and rows

S2CD (Semi-Stochastic Coordinate Descent)  Comlpexity  S2GD

S2GD as a Learning Algorithm

Problem with “us” optimizers  Optimizers care about optimization  Statisticians care about statistics  In isolation  Practical need to control both statistical predictive power and effort spent on optimization, is not well understood.  Optimizers should be aware of…  The following framework is mostly due to Bottou and Bousquets, 2007

Machine Learning Setting  Space of input-output pairs  Unknown distribution  A relationship between inputs and outputs  Loss function to measure discrepancy between predicted and real output  Define Expected Risk

Machine Learning Setting  Ideal goal: Find such that,  But you cannot even evaluate  Define Expected Risk

Machine Learning Setting  We at least have iid samples  Define Empirical Risk

 First learning principle – fix a family of candidate prediction functions  Find Empirical Minimizer  Define Empirical Risk Machine Learning Setting

 Since optimal is unlikely to belong to, we also define  Define Empirical Risk Machine Learning Setting

 Finding by minimizing the Empirical Risk exactly is often computationally expensive  Run optimization algorithm that returns such that  Define Empirical Risk Machine Learning Setting

Recapitulation Ideal optimum “Best” from our family Empirical Minimizer From approximate optimization

Machine Learning Goal  Big goal is to minimize the Excess Risk  Approximation error  Estimation Error  Optimization Error

Generic Machine Learning Problem  All this leads to a complicated compromise  Three variables  Family of functions  Number or examples  Optimization accuracy  Two constraints  Maximal number of examples  Maximal computational time available

Generic Machine Learning Problem  Small scale learning problem  If first inequality is tight  Can reduce to insignificant levels and recover approximation-estimation tradeoff (well studied)  Large scale learning problem  If second inequality is tight  More complicated compromise

Solving Large Scale ML Problem  Several simplifications needed  Not carefully balance the three terms; instead we only ensure that asymptotically  Consider fixed family of functions, linearly parameterized by a vector  Effectively setting to be a constant  Simplifies to Estimation–Optimization tradeoff

Estimation–Optimization tradeoff  Using uniform convergence bounds, one can obtain  Often considered weak

Estimation–Optimization tradeoff  Using Localized Bounds (Bousquet, PhD thesis, 2004) or Isomorphic Coordinate Projections (Bartlett and Mendelson, 2006), we get … if we can establish the following variance condition  Often, for example under strong convexity, or making assumptions on the data distribution

Estimation–Optimization tradeoff  Using the previous bounds yields where is an absolute constant  We want to push this term below  Choosing and using and we get the following table