二、 单变量线性回归
1.什么是单变量线性回归?
在训练集中,有一个自变量x和一个因变量y,通过数据拟合,去找到它们之间的关系
(假设函数)。最终实现任给一个输入,都会有一个相对正确的输出。
注意:单变量线性回归属于监督学习下的回归问题。
2.代价函数
(1)定义:J(k,b)=(1/2m)*∑(h(x) - y(i))^2 其中,h(x)=kx+b
解释如下:h(x)是假设函数
k和b是参数
m是训练集的样本数量
y(i)是每一个x对应的实际值
(2)目的:代价函数表示的是预测值和实际值的差的平方和再平均的值,其中使代价函
数J(k,b)最小的那组参数k和b的值,就是我们所需要的目标函数的参数,
也是拟合最好的一条直线。
(3)研究方法:
①为了简化算法,令代价函数中的参数b=0:
给k一个取值后,通过将m里的每一个数据带入代价函数,多次重复。绘出并研究
k~J(k)图像,会发现图像呈抛物型。
②研究更一般的代价函数(即b不一定是0):
给k和b赋值后,通过将m里的每一个数据带入代价函数,多次重复。绘出并研究
(k,b)~J(k,b)图像,会发现图像呈三维碗状。
3. 线性回归的梯度下降
(1)梯度下降法的定义:给每个参数一个初始值,不断同步更新变化初始值,直到参数不
再变化(即代价函数J(k,b)取到最小值)。
(2)梯度下降法的参数更新规则:Θi:=Θi-α*Ψ
说明:①Ψ是代价函数J(Θ0,Θ1)关于Θi求偏导所得的值;
②这里的i取值为0、1,“:=”表示赋值;
③在参数更新时,一定要满足同步更新Θi;
④α表示学习效率,相当于参数每次移动的幅度,取值太大或者太小都不行。
(3)使用方法:将代价函数带入梯度下降法进行运算,不断同步更新参数,直到参数稳定
不变,即可找到目标函数h(x)。
强调:梯度下降算法得到的是局部最优解,表面上似乎不能得到最优解,但对于线
性回归问题来说,局部最优就是全局最优。
(4)这里的梯度下降法准确的来说应该是Batch梯度算法,是用来最小化线性回归的代价
函数的算法,每一次梯度下降都遍历整个训练集的所有样本。
4.章节总结
本章通过对单变量线性回归的学习,知道了如何利用代价函数去确定目标函数的参数,
这中间运用了Batch梯度算法来实现参数更新使得代价函数J(k,b)最小,也就是得到
了准确的目标函数。