模型描述
1.模型参数说明
参数 | 说明 |
---|---|
m | 样本数量 |
x | 输入变量 |
y | 输出变量 |
h | 假设函数 |
j | 代价函数 |
Θ | 代价函数参数 |
2.假设函数与代价函数
假设函数就是假设一个函数,使其代表数据的分布。假设函数可以作为一种模型。
代价函数常用于评估模型。为了达到优化目标,我们将代价函数作为工具使用。比如说线性回归模型的假设函数与代价函数。
假设函数:
对应的代价函数:
代价函数的纵坐标是代价值,横坐标是假设函数中的其中一个参数。线性回归代价函数的含义是样本点距离对应假设函数输出值欧式距离的平方和除以2m,可以想象,随着模型的参数变化,代价值的减少,假设函数将会越来越靠近样本点,这就使得模型越来越接近优化目标。这就是代价函数的工作原理。
梯度下降法
参数的变化会使得代价值变化,而代价值越小一般意味着假设函数越拟合数据集,因此,如何改变参数以减小代价值是模型优化的一种思路。
梯度下降法就是其中一种优化思路,它通过不断向着代价值减少的方向改变参数值,直到代价值最小为止。
梯度下降法的流程如下:
1.列出代价函数 j(Θ),以线性回归函数为例,其假设函数与代价函数见上文。
2.对代价函数的每一个参数求偏导数,这一步的原理是,函数在某一点的导数是指函数图形上一点的切线斜率,利用这个斜率更新参数值可以保证代价值至少在达到最低的一点前是稳定下降的。
3.利用偏导数与学习率更新参数。具体公式如图所述。这条公式可由对代价函数分别求偏导得出。
有两点需要指出:一是学习率代表着参数更新的“步长”,如果学习率太小,将会导致学习过程缓慢,如果学习率过大,则会导致代价值如下图所示,参数值在代价值最低点两边跳跃,难以收敛到最小值。因此,选取合适的学习率是使用梯度下降法的关键。
二是要严格遵循先求出偏导数值再更新参数的原则,比如说不能先更新参数一再求参数二的偏导数值。
4.直到代价值不变为止,此时代价函数各个参数的偏导数为0,参数不会再发生变化。
总结
本章主要讲了机器学习模型的工作原理,并讲述了第一个机器学习方法:梯度下降法。