这一块对应西瓜书第三章
03线性回归
3.1线性模型基本形式
其实 f(x)表达式可以理解为各属性的加权平均数。
3.2线性回归:
线性回归属于监督学习---目标值连续
常用于房价预测等情况:
3.2.1定义和公式:
线性回归 (Linear regression) 是利用回归方程 ( 函数 ) 对一个或多个自变量 ( 特征值) 和因变量 ( 目标值 ) 之间关系进行建模的一种分析方式。
只有一个自变量的情况称为 单变量回归 ,多于一个自变量情况的叫做 多元回归
通用公式其实就是上面的f(x)
3.2.2线性回归的特征与目标的关系分析
线性回归中主要有两种模型:线性关系 、非线性关系(线性关系就是一条直线,非线性关系就是曲线)
单变量线性关系 多变量线性关系
非线性关系
3.2.3线性回归的损失和优化
观察上面的图可以看出来,真实结果y和预测结果f(x)之间会存在误差---》损失。
3.2.3.1损失函数(最小二乘法):
进一步带入得到。(其中只有w/b未知)
像这种基于均方误差最小化进行模型求解的方法我们称为 最小二乘法
在线性回归中,最小二乘法就是试图找到一条直线,是所有样本到直线上的欧氏距离之和最小。
求解w b 使最小化的过程称为线性回归的最小二乘"参数估计",可以通过将J分别对w ,b
求偏导,令偏导=0的方法的到 w、b最优解。
3.2.3.2优化函数
找优化函数就是如何去求模型当中的 W ,使得损失最小?(目的是找到最小损失对应的W值)
常用两种方法:
正规方程、梯度下降法
2.1正规方程:
一般用于多元线性回归,即数据集并非单个属性,而是由多个属性构成
举例:
该解只适用于满秩矩阵,但实际我们往往遇到的不是满秩矩阵,遇到的变量数目超过样本量,导致X的列数大于行数,此时可解出多个w,均可使误差最小化,一般选哪个作为输出,常见做法是:引入正则项。
2.2梯度下降
以当前的所处的位置为基准,寻找这个位置最陡峭的地方,然后 朝着山的高度下降的地方走,(同理,如果我们的目标是上山,也就是爬到山顶, 那么此时应该是朝着最陡峭的方向往上)。然后每走一段距离,都反复采用同一 个方法,最后就能成功的抵达山谷。
按照梯度下降算法的思想,它将按如下操作达到最低点:
第一步,明确自己现在所处的位置
第二步,找到相对于该位置而言下降最快的方向
第三步, 沿着第二步找到的方向走一小步,到达一个新的位置,此时的位置肯定比原来低
第四部, 回到第一步
第五步,终止于最低点
下降公式:
1.α 在梯度下降算法中被称作为学习率或者步长,我们可以通过 α来控制每一步走的距离。
但步子太大--》会跨过山谷,步子太小---》速度太慢
2. 中减号 便是负方向
ps:
梯度的方向是 函数在给定点上升最快的方向,那么梯度的反方向就是函数在给定点下降最快的方向,这正是我们所需要的。 所以我们只要沿着梯度的反方向一直走,就能走到局部 的最低点!(微积分定义)
算法举例过程:
2.3 对比
3.3梯度下降介绍:
都是为了正确地调节权重向量, 通过为每个权重计算一个梯度,从而更新权值,使目标函数尽可能最小化 。其差别在于样本的使用方式不同
全梯度下降算法 (Full gradient descent ) , 计算训练集所有样本误差,对其求和再取平均值作为目标函数
随机梯度下降算法( Stochastic gradient descent )
目标函数不再是全体样本误差,而仅是单个样本误差,即每次只代入计算一个样本目标函数的梯度来更新权重,再取下一个样本重复此过程,直到损失 函数值停止下降或损失函数值小于某个可以容忍的阈值。
,
小批量梯度下降算法( Mini-batch gradient descent ), 每次从训练样本集上随机抽取一个小样本集,
随机平均梯度下降算法( Stochastic average gradient descent )
会给每个样本都维持一个平均值 , 后期计算的时候 , 参考这个平均值