-
一元线性回归
- 回归:主要用于预测数值类数据,根据观察到的数据设计一种模型,描述数据之间蕴含的关系。(例如:根据给定的数据点拟合出最优的曲线)
- 线性回归:可以表示成一根直线的回归模型。(如图)
- 一元线性回归:只包含一个自变量x的线性回归模型。(例如y=wx+b)
- 模型公式:y=wx+b
w:权重 b:偏置值(误差值) x:模型的自变量
因此我们要解决的问题:如何根据样本数据(x和y)来确定模型参数(w和b)?
-
由上图可知当x取x1时,产生了2个值一个y值,一个y^值。
-
y^是估计值(预测值)、y是真实值.
-
模型: (Y^=WX(i)+B)
-
残差/拟合误差:y-y^(真实值-估计值)
-
最佳拟合直线应使得所有点的残差累计值最小(残差和最小),因此我们可以得到残差和最小函数。(如下图)
-
loss函数称为损失函数或者代价函数:作用是评估模型预测值与真实值的不一致程度。
-
由图可知残差值有 + 和 -,两者求和会相互抵消,影响loss函数的结果导致拟合模型不满足实际问题的预测。
-
为了消除 + 和 - 带来的影响,可以使用绝对值解决,避免了 + 和 - 带来的影响。(如下图)
-
因为绝对值是不利于我们后面的数学运算,所有我们换个方向思考问题。求残差和最小是一个求最值问题,那么在求一个函数的最值问题时,一般会用到求导运算。因此我们把loss函数的绝对值改为平方,即消除了 + 和 - 带来的影响,又方便我们的求导运算,现在我们要做的就是使得所有样本点的残差平方和最小。
-
新的loss函数如下图。
-
乘1/2是为了方便求导运算
-
我们在来细谈哈,平方损失函数的几何意义:y于y^的欧氏距离就是每个样本点的值和它的估计值之间的欧氏距离的大小,因此这条直线就是我们要找的最优直线。
欧氏距离:
*--------------------------------------------------------------------------------------------------------------------------------
损失函数的性质(或者什么样的函数可以作为损失函数):
1.非负性:保证样本误差不会相互抵消。
2.一致性:损失函数的值和误差变化一致,
(即y-y^增大时,loss函数也增大)
( y-y^减小时,loss函数也减小)
注:均分损失函数(经常使用它作为误差函数即损失函数)如下图:
注:基于均分误差最小化来进行的模型求解的方法称为最小二乘法,在线性回归中最小二乘法就是试图找到一条直线使所有样本点到直线上的距离之和最小。 -
对于新的loss函数:
我们如何求解呢?
1.已知的是x和y,求解未知的w和b?
2.w和b取何值时,新的loss函数取值最小?
思路:求极值问题一般是运用极值点的偏导函数为o,因此我们对w和b求偏导数即可。
这里我们令w的偏导函数和b的偏导函数都等于0,组成方程组,就可以得 出解(或者叫解析解)如下图
带入我们的模型y^=wx+b(到这里我们已知了x、w、b),就可以得到预测值!
详细的代码将另外发链接,代码的样本数据将以下面某市区的房屋面积和价格表作为参考