Jump to content

Random coordinate descent

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by 94.174.211.147 (talk) at 20:47, 20 February 2012 (Algorithm). 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 improve Rate of convergence (time or number of iterations needed to get solution), but there was no theoretical analysis. The first proper analysis of this method came from Yurii Nesterov (2010)[1]. In that paper author proposed a randomized coordinate descent method when first order information is used.

Algorithm

Imagine that one wants to solve problem where is a Smooth function. Nesterov showed that if the gradient of is coordinate-wise Lipschitz continuous, with constants (i.e. ) then the following algorithm converges 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.

Convergence rate

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 .

Example on particular function

In next Figure we show how develops during iterations. The problem was

Add caption here

Extension to Block Coordinate Setting

Blocking coordinate directions into Block coordinate directions

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 image).

See also


References

  1. ^ Nesterov, Yurii (2010), "Efficiency of coordinate descent methods on huge-scale optimization problems", CORE Discussion Paper, no. \#2010/2
  2. ^ Richtárik, Peter; Takáč, Martin (2011), Iteration complexity of randomized block-coordinate descent methods for minimizing a composite function {{citation}}: line feed character in |title= at position 60 (help)