Jump to content

Random coordinate descent

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Martin.taki (talk | contribs) at 19:13, 20 January 2012. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Random Coordinate Descent Method is optimization technique popularized in last years. It can be seen as a generalization of Coordinate descent Method with one modification: Coorinate directions are chosen randomly. Many authors reported that randomization inprove Rate of convergence (time or number of iterations needed to get solution), but there was no theoretical analysis. The first proper analysis of this methods come from Yurii Nesterov (2010)[1]. In that paper, author proposed a randomized coordinate descent method when first order information is used.

Imagine that one wants to solve problem where is a Smooth function. Nesterov showed that if gradient of is a coordinate-wise lipschitz continuous with constants (i.e. ) than the following algorithm converge to optimal value.

Algorithm Random Coordinate Descent Method
  Input:  //starting point
  Output: 
  set x=x_0
  for k=1,... do
     choose random coordinate 
     update  
  endfor;
  • "←" denotes assignment. For instance, "largestitem" means that the value of largest changes to the value of item.
  • "return" terminates the algorithm and outputs the following value.

One need to realize that this algorithm is random and hence also output after iterations is a random variable. It was shown in [2] that if , where , is an optimal solution (), is our confidence level and is our target accuracy, then .

Extension to Block Coordinate Setting

One can naturaly extend this algorithm not only just to coordinates, but to blocks of coordinates. Assume that we have space . This space has 5 coorinate directions, concretely in which Random Coordinate Descent Method can move. Hovewer, one can group some coordinate directions into blocks and we can have istead of those 5 coordinate directions 3 block coordinate directions:





See also


References