4 基础优化算法
梯度下降
-
梯度下降是求一个损失函数的最小值,在梯度下降最快的方向迭代,获得相关参数。
-
举个例子:在$x_0$处,梯度为$\partial f(x^0)= \frac{\partial{f(x_0)}}{\partial{x_0}}$,$x_0$与$-\partial f(x^0)$相加,可以得到向左移动一段距离的新向量$x_1$,随后不断迭代,可以找到最低点,此时为最小值。
$$
x_1=x_0-n\frac{\partial{f(x)}}{\partial{x_0}}
$$
n为步长,可以控制移动距离。 -
挑选一个合适的初始值$w_0$
-
重复迭代参数t=1,2,3,…
$$
w_t=w_{t-1}-\eta \frac{\partial{\ell}}{\partial{\ell{w_{t-1}}}}
$$ -
沿梯度方向将增加损失函数值
-
学习率:步长的超参数
-
$\eta$不能太大,也不能太小
小批量随机梯度下降
-
我们可以随机采样n个样本$i_1,i_2,…,i_b$来近似损失
$$
\frac{1}{b}\sum_{i\in I_b}\ell(x_i,y_i,w)
$$ -
b是批量大小,另一个重要的超参数,也不能太大太小
总结
- 梯度下降通过不断沿着反梯度方向更新参数求解
- 小批量随机梯度下降是深度学习默认的求解方式
- 两个重要的超参数是批量大小和学习率
评论


