目录
1. What is Gradient Descent?
2. Gradient Descent Algorithm
2.1 基本公式(以二元代价函数为例)
使用梯度下降法求使得代价函数最小化的参数,以二元代价函数为例,算法如下:
其
中
,
J
(
θ
0
,
θ
1
)
为
代
价
函
数
;
α
表
示
学
习
率
;
θ
0
,
θ
1
为
待
定
参
数
;
其中,J(\theta_{0},\theta_{1})为代价函数; \alpha 表示学习率; \theta_{0},\theta_{1}为待定参数;
其中,J(θ0,θ1)为代价函数;α表示学习率;θ0,θ1为待定参数;
2.2 注意
在更新参数的时候,要同时更新所有参数,即在更新参数的时候,代价函数中的所使用的参数都应该是未更新前的参数。
学习率太小,梯度会下降得很慢,但是学习率过大,有可能会越过最低点,难以收敛。
(重要)在逐渐靠近最低值的过程中,梯度逐渐趋近于0,下降的步长也会自动减小,趋近于0,因此不必减小学习率。
梯度下降法会受限于局部最小值。
Batch Gradient Descent:梯度下降的每一步都用到了所有训练集。
3. 线性回归的梯度下降
3.1 单个特征(单输入问题)
3.2 多个特征(多输入问题)
3.3 注意
(重要)Feature Scaling:多特征问题,为了更快收敛,要确保各个特征都在一个相邻的范围。
(重要)Mean Normalization:多特征问题,为了更快收敛,应使各个特征的平均值为0。
学习率可以尝试:... 0.001, 0.003, 0.01, 0.03, 0.1, 0.3, ...
4. Reference
[1] 吴恩达. MIT, 《机器学习》网络课程.