线性回归的模型思想
回归的思想和分类有所不一样,分类输出的结果为离散的值,回归输出的是一个连续型的值。线性回归的思想就是试图找到一个多元的线性函数:
当输入一组特征(也就是变量X)的时候,模型输出一个预测值y = h(x),我们要求这个预测值尽可能的准确,那么怎么样才能做到尽可能准确呢?
这要求我们建立一个评价指标来评价模型的在数据集上的误差,当这个误差达到最小的时候,模型的拟合性最强。在线性回归中我们常用的是平均平方误差(mse - mean square error)和平均绝对离差(mae - mean absolute deviation)来评估拟合的误差:
在线性回归中,这两种评价标准都是可以的,我们这里着重讲一下平均平方误差的方法(mse),所以我们现在的目标就是:
线性回归的计算
由于f(x)函数的变量较多,所以我们在计算上面目标函数的时候我们用矩阵和向量做一下转变:
我们令
所以有
观察目标函数我们可以知道当
我们把上面的函数叫做损失函数:
所以我们现在需要求上面损失函数取得最小值时候的
这里有两种方法求解上面损失函数的最小值:
梯度下降法
关于什么是梯度,我们这里不在进行说明,如果有不明白的朋友可以自行百度。简单总结一下就是一个多元函数偏导数组成的列向量。
梯度下降法的思想就是随机的选择一点,从这点出发,沿着目标函数下降最快的方向求解最优值。那么什么才是下降最快的方向呢,答案是负梯度方向,也就是梯度的反方向。
这里给出如下图形帮助大家理解一下什么是目标函数下降最快的方向:
上图中,一圈一圈的线就相当于损失函数的等高线,外圈是值比较大的等高线,内圈是值比较小的等高线,我们随机选择从
理解了梯度下降法后,我们就来求一下损失函数的梯度:
损失函数J(
即
把随机的出发点设为
通过上述方法得到一组新的
最小二乘法
最小二乘法的求解思想很简单,就是利用我们大学时候学的函数求最值的优化方法求解:
即一个可导函数的函数,如果存在最值,那么该处的各变量的偏导数为0
所以可以令:
得到:
在
以上就是线性回归的思想以及模型的求解过程了,欢迎大家交流。