线性模型—— 一元线性回归算法推导
目录
一、线性模型原理
二、线性回归与最小二乘法
三、一元线性回归公式推导
四、总结
线性模型原理:给定d个属性x = (;
...,
),其中
是第i个属性的值,线性模型试图学得一个通过属性的线性组合来进行预测的函数,即
f(x) = +
+ ...,
+ b,
向量化表示
f(x) = x + b,
其中 w = (,
,
,...,
)可以认为w是x各个维度出现的概率组成的列向量。学得w和b后,模型就可以确定。线性模型简单、可解释性强,很多非线性模型都是在线性模型基础上引入层级结构或高纬映射而得。
线性回归:给定数据集 D = {(),(
),....(
)} ,其中
= (
,
,...,
) ,
R。一元线性回归试图学得:
,使得
那么如何确定w和b呢?显然在于如何权衡与y之间的差别。均方误差(平方损失函数)是回归任务中常用的性能度量。因此我们可试图均方误差最小化,即:
=
,来求解w和b
均方误差有非常好的几何意义,它对应了欧几里得距离,简称欧氏距离。基于均方误差最小化来对模型进行求解,称为“最小二乘法”。在线性回归中最小二乘法试图找到一条直线,使所有样本到直线的欧式距离之和最小。
求解w和b,使E(w,b) =
最小化的过程,称为最小二乘法参数估计,E(w,b)是关于w和b的凸函数,当它关于w和b的导数为0时,即可得到w和b的最优解
一元线性回归公式推导
整体思路:
1、求偏置b推导公式
2、求权重w的推导公式
3、将w向量化
![](https://img.haomeiwen.com/i7082160/7c86f0da7a06985f.png)
二元函数判断凹凸性:
设
在区域D上具有二阶连续偏导数,记
,
,
则:
a、在D上恒有
,且
-
![]()
时,
在区域D上是凸函数;
b、在D上恒有
,且
-
![]()
时,
在区域D上是凹函数。
二元凹凸函数求最值:
设
是在开区域D内具有连续偏导数的凸(或者凹)函数,
且
,
,则
必为
在D内的最小值(最大值)。
求解ABC:
a 、证明损失函数E(w,b) 是关于w和b的凸函数---求
![](https://img.haomeiwen.com/i7082160/c243350cf574c522.png)
![](https://img.haomeiwen.com/i7082160/4c790492a0ab24ba.png)
b 、证明损失函数E(w,b) 是关于w和b的凸函数---求
![](https://img.haomeiwen.com/i7082160/1c800c1b956125b9.png)
c 、证明损失函数E(w,b) 是关于w和b的凸函数---求
![](https://img.haomeiwen.com/i7082160/89eb98ff585cae18.png)
![](https://img.haomeiwen.com/i7082160/6e3dafcfffba3024.png)
至此,,
,
,满足a条件,因此E(w,b)是关于w和b的凸函数。
令一阶偏导数为0,求b:
将b代入求w可得:
(1)
将w向量化:
将(1)进一步恒等变化为
由向量 和
和
可得:,至此w转化为向量点乘形式
w向量化目的 :将公式求和转化为向量点乘,充分利用了numpy进行向量点乘,替换for循环,进而有效减少计算开销。
总结:
1、本文由线性模型原理,引申出线性回归模型原理。
2、分析一元线性回归模型学习过程,即求解w和b的过程。引出均方误差(平方损失函数),而均方误差是回归问题常见的性能度量。因此将此过程,对应到均方误差最小化问题;同时方误差又有很好的几何意义,其对应着欧几里得距离(欧氏距离),因此可以把线性回归模型训练过程,看做是习得一条直线,使得所有样品点,到直线距离最小化过程。
3、根据凸函数定义,证明了均方误差是凸函数,进而将问题转化为凸函数求最小值问题。
4、采用最小二乘法,实现整个过程的公式推导求解。