Skip to content

Commit 674cd03

Browse files
committed
深度学习模型中的优化
1 parent c56f101 commit 674cd03

12 files changed

+52
-1
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
机器学习算法的目标是降低期望泛化误差。这个数据量被称为 风 险(risk)
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
在优化凸函数时,会遇到一些挑战。这其中最突出的是Hessian矩阵 􏰧 的病 态。这是数值优化、凸优化或其他形式的优化中普遍存在的问题
2+
3+
牛顿法在解决带有病态条件的 Hessian 矩阵的凸优化问题时,是一个非常优秀的工具
4+
5+
凸优化问题的一个突出特点是其可以简化为寻找一个局部极小点的问题
6+
7+
对于非凸函数时,如神经网络,有可能会存在多个局部极小值
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
随机梯度下降(SGD)
2+
3+
* SGD 算法中的一个关键参数是学习率
4+
5+
动量的主要目的是解决两个问题:Hessian矩阵的病态条件和随机梯度的方差
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
如何初始化网络,正则化和优化有着非常不同的观点。优化观点建议权重 应该足够大以成功传播信息,但是正则化希望其小一点
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
Delta-bar-delta 算法 (Jacobs, 1988) 是一个早期的在训练时适应模型参数各 自学习率的启发式方法。该方法基于一个很简单的想法,如果损失对于某个给定模 型参数的偏导保持相同的符号,那么学习率应该增加。如果对于该参数的偏导变化 了符号,那么学习率应减小。当然,这种方法只能应用于全批量优化中。
2+
3+
4+
5+
AdaGrad 算法 独立地适应所有模型参数的学习率,缩放每 个参数反比于其所有梯度历史平方值总和的平方根,而具有小偏导的参数在学习率上 有相对较小的下降
6+
7+
![image-20190114234341940](../images/image-20190114234341940.png)
8+
9+
10+
11+
RMSProp 算法 修改 AdaGrad 以在非凸设定下效果更好,改 变梯度积累为指数加权的移动平均。AdaGrad 旨在应用于凸问题时快速收敛
12+
13+
Adam (Kingma and Ba, 2014) 是另一种学习率自适应的优化算法在 Adam 中, 动量直接并入了梯度一阶矩(指数加权)的估计。将动量加入 RMSProp 最直观的 方法是将动量应用于缩放后的梯度。结合缩放的动量使用没有明确的理论动机。其 次,Adam 包括偏置修正,修正从原点初始化的一阶矩(动量项)和(非中心的)二 阶矩的估计
14+
15+
16+
17+
目前,最流行并且使用很高的优化算法包括 SGD、具动量的 SGD、RMSProp、 具动量的 RMSProp、AdaDelta 和 Adam
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
牛顿法是基于二阶泰勒级数展开在某点 θ0 附近来近似 J(θ) 的优化方法
2+
3+
![image-20190114235030538](../images/image-20190114235030538.png)
4+
5+
牛顿参数更新规则:
6+
7+
![image-20190114235049289](../images/image-20190114235049289.png)
8+
9+
添加正则化:
10+
11+
![image-20190114235146678](../images/image-20190114235146678.png)
12+
13+
共轭梯度是一种通过迭代下降的共轭方向(conjugate directions)以有效避 免 Hessian 矩阵求逆计算的方法
14+
15+
对于二次曲面而言,共轭方向确保梯度沿着前一方向大小不变。因此,我们在前一 方向上仍然是极小值。其结果是,在 k-维参数空间中,共轭梯度只需要至多 k 次线 搜索就能达到极小值
16+
17+
18+
19+
Broyden-Fletcher-Goldfarb-Shanno(BFGS)算法具有牛顿法的一些优 点,但没有牛顿法的计算负担
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
贪心算法(greedy algorithm)将问题分解成许多部分,然后独立地在每个部分 求解最优值

images/image-20190114234341940.png

160 KB
Loading

images/image-20190114235030538.png

11.7 KB
Loading

images/image-20190114235049289.png

7.24 KB
Loading

images/image-20190114235146678.png

10.6 KB
Loading

readme.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
| 5 | 171 | 20190109|
1414
| 6 | 210 | 20190112|
1515
| 7 | 235 | 20190113|
16-
| 8 | | |
16+
| 8 | 280 | 20190114|
1717
| 9 | | |
1818
| 10 | | |
1919
| 11 | | |

0 commit comments

Comments
 (0)