Tuning your learning rates
1.learning rate,设置太小,时间过长;设置太大,无法找到最低点,永远在上面震荡。 2.Adaptive Learning Rates (1)Adagrad 每一个参数的learning rate都把它除以之前算出来的微分值的root mean square(均方根). (2)Stochastic Gradient Descent 原来的gradient descent,看完一遍example之后,就更新一遍参数。你会发现他是比较稳定的,他走的方向就是按照gradient descent 建议我们的方向来走。但是如果你是随机梯度下降的话,你每看一个example,你就update一次参数,如果你有20个example的时候,那你就update20次参数。所以当左边update一次的时候,右边已经update20次参数。右边,如果只看一个参数的话,他的步伐是小的,而且可能是散乱的,因为你每次只考虑一个example,他update的方向跟gradient descent 的tool Loss的error surface建议我们的方向不见得是一致的,但是因为我们可以看很多个example,左边走一步的时候,右边已经走了20步了,所以他走得反而是比较快的。 (3)Feature Scaling(特征归一化) 假设我有R个example,x1到xR。每一个example里面都有一组feature。 怎样做feature scaling,对每一个dimension i,都去算他的mean,写成mi;都去算他的stand deviation,写成deltai。 然后对每一个example,比如第r个example的第i个component,减掉mi,再除以deltai。做完这件事以后,所有dimension的mean就是0,variance就会是1。
Gradient Descent Theory
背后的数学理论得益于泰勒展开式
More Limitation of Gradient Descent
会在局部最小值的时候停下来。
|