lr 学习

lr 学习

基本推导

这个不少地方都有....学习

梯度降低

梯度降低是利用了一阶导数的信息来加速收敛. 一阶导数,线性速度.变量

公式
$$
f(X_k + ad) = f(X_k) + ag_k^Td+ o(a) tag{1}
$$
这里解释下 $X_k$ 表明一个自变量, $a$ 表明你步长(实数), d是单位向量(|1|), $g_k^T = nabla f(X_k)$是在$X_k$这一点的梯度.$o(a)$是a的高阶无穷小. 参考下泰勒公式:
$$
f(x+h) = f(x) + f'(x)*h + o(h)
$$
是同样的.vi

要使(1)式收敛这里须要对,至关于$g^Td$ 取最小,也就是两者正交。sse

牛顿法

先说一句,牛顿法必定比梯度降低快么?block

是的,由于二阶导数的相比一阶导数收敛的更快.let

在$X_k$ 点上进行二阶泰勒展开:
$$
r_k(X)=f(X_k) + g_k^T(X-X_k) +1/2(X-X_k)^TG_k(X-X_k) tag{2}
$$
$g_k^T$是$f(x)$的一阶导数。$G_k=nabla^2 f(X_k)$ 是二阶导数。ab

这里要(2)收敛须要对进行求导。
$$
nabla r_k(X) = g_k + G_k(X-X_k) tag{3}
$$
$f(X_k)$ 常数。$g_K^T(X-X_k)$ 求导用乘法法则获得(3)。这里要(3)等于0.当$G_k$的逆矩阵存在,也即$G_k$为非奇异矩阵的时候则有:
$$
G_k^{-1}g_k + X-X_k=0 Rightarrow
X=X_k-G_k^{-1}g_k = X_k+d
$$
可得 $-G_k^{-1}g_k=d Rightarrow G_k d=-g_k$ 这里转换成这种形式主要是不知道$G_k^{-1}$是多少,因此须要去解后面这个方程,而这个过程其实和秋逆的过程差很少。这里的 $G_k$ 就是hesse 矩阵tar

共轭梯度法

bfp

BFP 是三个哥们(Davidon、Fletcher、Powell三位牛人)。BFP 的思想是用近似的正定矩阵来模拟 hesse矩阵。tag

bfgs

$$min_{x in R^n }$$

相关文章
相关标签/搜索