目录:
+ 模型描述
+ 代价函数
+ 梯度下降
+ 线性回归的梯度下降
第一个学习的是监督学习中的线性回归算法
例子:房价预测
一·模型描述
- 在监督学习中,数据集被称为训练集
- 字母m 表示训练样本的数量
- 字母x 表示输入变量
- 字母y 表示输出变量
- (x,y) 表示一个训练样本
- (,
) 表示第i个训练样本
监督学习算法:从最简单的单变量线性回归学起
二·代价函数
上图的表示的就是平方误差代价函数,尽量减少假设的输出与房子真实价格之间差的平方,它对于回归问题是一个合理的选择。
下面使用简化的代价函数(只经过原点)来更好滴理解:
对于每个都对应一个
值,描绘出下图,学习算法的优化目标是通过选择
的值获得最小的
,这就是线性回归的目标函数。在这条曲线中,当
=1时,
最小,完美拟合了数据集。
接下来看两个参数的时候,横轴是两个参数,纵轴是代价函数。
三维图
等高线图
通过这些图可以更好地理解代价函数J的意义,如何对应不同的假设函数以及接近代价函数J最小值的点对应着更好的假设函数。
如何自动寻找最小点呢?而不是人工读取(高维无法可视化)
三·梯度下降
起始点偏移一些会得到一个完全不同的局部最优解。
数学定义,同步更新
以一个参数为例,介绍导数项的作用
学习速率太小,下降速度太慢;速率大大,会无法收敛。
问题:如果已经处于最低点,下一步会怎么办?
导数为0,值不会改变在梯度下降法中,当我们接近局部最低点时,梯度下降会自动采取更小的幅度,这是因为这个过程中,导数值越来越小一直到0,所以不需要在整个过程中考虑减小学习速率。
四·线性回归的梯度下降
将梯度下降和代价函数结合得到线性回归算法
计算偏导:
梯度下降算法,同时更新:
线性回归的代价函数总是凸函数,没有局部最优,只有全局最优。
假设函数和代价函数的形象展示:
算法被称作“Batch:"梯度下降,意味着每一步梯度下降我们都遍历整个训练集的样本(在梯度下降中,当计算偏导数时我们计算总和,在每一个单独的梯度下降,计算m个训练样本的总和)还有只关注小子集,还可以使用正规方程组解法,但前者适用于大数据集。