背景
线性回归模型的建立是为了探究因变量与多个自变量间的关系。举个例子,你想去银行贷款,在贷款前你想知道你大概能贷到多少钱,以便为后期经济开销做进一步规划。那如果此刻有一个贷款预测模型可以使用,这个问题就可以得到快速的解决。因为你只需要向银行提供你的工资,年龄等信息,便可以得到一个贷款金额的预估值。
一般情况下,只要我们能得到足够数量的观测样本,便可以对现有的数据进行模型拟合,找到一个较为准确的模型来帮助我们预测。
多元线性回归
常规公式
多元线性回归模型的一般形式为:
Yi=β0+β1X1i+β2X2i+…+βkXki+μi (i=1,2,…,n)
其中,n表示观测样本数,Xk 为模型所包含的自变量,i 表示第i个观测样本,Yi为对应的第i个样本的贷款金额,βj(j=1,2,…,k)称为回归系数,代表着每个自变量对于Y值的影响大小。
拟合思路
在拟合过程中,每一个样本都对应着一个回归方程, 我们可以想象年龄和工资是两个特征,分别为x1和x2轴,而贷款金额数展示在Y轴。
图上高低不一的红点就代表着每一个样本所对应的方程式,我们需要在这些高低不一的样本中找到最合适的一条线来拟合这些数据,图中的绿色网格面就是一个假想的拟合平面。
最小二乘法的推导
那如何才能找到这条最合适的线呢?下面我们来聊一聊最小二乘法。
将自变量系数与自变量整合为矩阵
假设β1是年龄的系数,β2是工资的系数。
拟合的平面是:Yi=β0+β1iX1i+β2X2i(β0是截距/偏置项,对整体结果上调或下调,跟数据没有关系)
我们将上述的β,x整合为矩阵,其中为了简化推导公式,X矩阵中加入了x0=1这一项,与截距β0与之对应。
整合结果变为两个矩阵的乘积: Y β ( x ) = ∑ i = 0 N β i x i = β T X Y_β(x)=\sum_{i=0}^Nβ_i x_i=β^TX Yβ(x)=∑i=0Nβixi=βTX
模拟过程存在误差项
从以上的图中我们可以看到,我们理想中的这个平面只能尽量去贴合各个样本点,但是平面的预测值和真实值始终还是存在着误差的。机器学习的理论思想就是,我们的理论模型和现实模型必然是存在差异的,只要我们合理限制这个差异就可以了。ε用于表示该误差。图片上传失败,找到原因后再重新编辑
对于每个样本: Y i = β T X i + ε i Y_i=β^TX_i+\varepsilon_i Yi=βTXi+εi
误差项符合高斯分布
我们的样本中有n个观测值就会有n个误差,因为每个样本都是独立的,所以这个误差是独立的。由于每个样本都是找同一家银行贷款,所以样本的误差具有相同的分布,并且是服从均值为0方差为 θ 2 \theta^2 θ2的高斯分布( 从实际出发,做出了这样一个假设,实际不会正好是均值为0方差为 θ 2 \theta^2 θ2的高斯分布,但结果证明这个假设可以被我们的机器学习模型所接受和认可)。
① 由于误差符合高斯分布: p ( ε i ) = 1 2 π δ e x p ( − ( ε i ) 2 2 δ 2 ) p({\varepsilon_i}) =\dfrac1 {\sqrt{2\pi}\delta}exp(-\dfrac{(\varepsilon_i)^2}{2\delta^2}) p(εi)=2πδ1exp(−2δ2(ε