引入
年薪和工作年限有关吗?
可见两个变量之间存在明显的线性关系,而根据常识,工作年限是因,年薪是果。
那么,是否存在某个模型,如图中的一次函数直线,来描述两个变量之间的关系呢?
原理简述与背景介绍
一元线性回归模型也被称为简单线性回归模型,指模型中只有一个自变量和一个因变量。
其原理可以简述为:用一个(二维中的)直线(以及高维中的超平面)去最大程度地拟合样本特征和样本输出标记(即数据点)之间的关系。
一元线性回归思想简单,但背后有强大的数学理论支持,具有很好的可解释性,是许多强大的非线性模型的基础。
算法推导
基本设定
给定数据集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯   , ( x N , y N ) } T=\left\{\left(x_{1}, y_{1}\right),\left(x_{2}, y_{2}\right), \cdots,\left(x_{N}, y_{N}\right)\right\} T={
(x1,y1),(x2,y2),⋯,(xN,yN)}其中 x i ∈ X ⊆ R x_{i} \in \mathcal{X} \subseteq \mathbb{R} xi∈X⊆R, y i ∈ Y ⊆ R y_{i} \in \mathcal{Y} \subseteq \mathbb{R} yi∈Y⊆R, i = 1 , 2 , ⋯   , N i=1,2, \cdots, N i=1,2,⋯,N
假设决策函数为 f ( x ) = a x + b f(x)=ax+b f(x)=ax+b其中 a , b a,b a,b称为回归系数。
可知第 i i i个元素 x i x_{i} xi的预测值为 y i ^ = f ( x i ) = a x i + b {\hat{y_{i}}}=f(x_{i})=ax_{i}+b yi^=f(xi)=axi+b使用平方损失函数作为损失函数: L ( y , f ( x ) ) = ( y − f ( x ) ) 2 L\left(y,f(x)\right)=\left(y-f(x)\right)^2 L(y,f(x))=(y−f(x))2求以下经验风险最小化 J ( a , b ) = ∑ i = 1 N ( y i − y i ^ ) 2 = ∑ i = 1 N ( y i − a x i − b ) 2 J(a, b)=\sum_{i=1}^{N}(y_{i}-{\hat{y_{i}}})^{2}=\sum_{i=1}^{N}\left(y_{i}-ax_{i}-b\right)^{2} J(a,b)=i=1∑N(yi−yi^)2=i=1∑N(yi−axi−b)2即目标是求取使目标函数 J J J最小的回归系数 a , b a,b a,b.
参数求解
1. 求解 b b b
对 b b b求偏导并另令其等于 0 0 0
∂ J ( a , b ) ∂ b = ∑ i = 1 N 2 ( y i − a x i − b ) ( − 1 ) = 0 \frac{\partial J(a, b)}{\partial b}=\sum_{i=1}^{N} 2\left(y_{i}-a x_{i}-b\right)(-1)=0 ∂b∂J(a,b)=i=1∑N2(yi−axi−b