2016年5月12日 星期四

Stochastic gradient descent(SGD)

中文有人翻譯為梯度下降法
考量一個線性回歸
$h_\theta = \theta_0 + \theta_1 x_1 + \theta_2 x_2 + \ldots = \sum_{j = 0} ^{l} \theta_j x_j$
cost function定義為
$J(\theta) = \frac{1}{2} \sum_i | y^{(i)} - h_\theta (x^i )|^2$
透過$\alpha$參數調整
$\theta_j \rightarrow \theta_j - \alpha \frac{\partial}{\partial \theta_j} J(\theta) \tag{1}$
$\alpha$參數是每次推估的差異性,太小可能收斂太慢,太大可能難以收斂

每次可以慢慢逼近最佳解
SGD的本質是最小平方解,但是好處是非常的實務
SGD本身的問題就不介紹了,如會陷入local optimal

SGD適用的範圍有幾個
1. data set很大的時候,可以使用SGD對data set做分割,有效率的進行
2. data set隨環境變化,例如隨時間變化,問題本身的最佳解隨時間推移,local optimal solution更貼切

SGD的特性
如果問題本身是qudraic convex問題,那麼他一定可以貼近最佳解(為何說貼近,因為是計算機本身計算誤差以及必須要在有限時間內找出解答,如果有無限時間應該可以收斂到最佳解。)

沒有留言:

張貼留言