基本数学原理
通过数据来预测一个值便可以应用回归算法。数据可以含有多个特征,想要预测的目标即为标签。每个特征对标签的影响程度即位参数。
h θ ( x ) = ∑ i = 0 n θ i x i = θ T x , 其 中 θ 0 为 偏 置 项 , x 0 = 1 h_{\theta}(x)=\sum_{i=0}^{n} \theta_{i} x_{i}=\theta^{T} x ,其中\theta_0为偏置项,x_0 = 1 hθ(x)=∑i=0nθixi=θTx,其中θ0为偏置项,x0=1
在回归的拟合过程中,真实值与预测值之间会存在误差。
y ( i ) = θ T x ( i ) + ε ( i ) y^{(i)}=\theta^{T} x^{(i)}+\varepsilon^{(i)} y(i)=θTx(i)+ε(i), 其 中 y ( i ) 为 真 实 值 , θ T x ( i ) 为 预 测 值 , ε ( i ) 为 误 差 值 。 其中y^{(i)}为真实值, \theta^{T} x^{(i)}为预测值,\varepsilon^{(i)}为误差值。 其中y(i)为真实值,θTx(i)为预测值,ε(i)为误差值。
误 差 ε ( i ) 是 独 立 同 分 布 , 并 且 服 从 均 值 为 0 方 差 为 θ 2 的 高 斯 分 布 误差\varepsilon^{(i)}是独立同分布, 并且服从均值为0方差为\theta^2的高斯分布 误差ε(i)是独立同分布,并且服从均值为0方差为θ2的高斯分布
由于误差项服从高斯分布,我们可得下式:
p ( ϵ ( i ) ) = 1 2 π σ exp ( − ( ϵ ( i ) ) 2 2 σ 2 ) p\left(\epsilon^{(i)}\right)=\frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(\epsilon^{(i)}\right)^{2}}{2 \sigma^{2}}\right) p(ϵ(i))=2πσ1exp(−2σ2(ϵ(i))2)
将误差项与真实值以及预测值的关系带入右侧可得:
p ( y ( i ) ∣ x ( i ) ; θ ) = 1 2 π σ exp ( − ( y ( i ) − θ T x ( i ) ) 2 2 σ 2 ) p\left(y^{(i)} | x^{(i)} ; \theta\right)=\frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2}}{2 \sigma^{2}}\right) p(y(i)∣x(i);θ)=2πσ1exp(−2σ2(y(i)−θTx(i))2)
此式中我们应用真实值与预测值来展现误差的分布
似然函数求解
似然函数:
在不知道数据的规则时,去寻找什么样的参数跟我们的数据组合后恰好是真实值或是真实值的可能性越大越好,即通过数据去回推参数(规则)。
L ( θ ) = ∏ i = 1 m p ( y ( i ) ∣ x ( i ) ; θ ) = ∏ i = 1 m 1 2 π σ exp ( − ( y ( i ) − θ T x ( i ) ) 2 2 σ 2 ) L(\theta)=\prod_{i=1}^{m} p\left(y^{(i)} | x^{(i)} ; \theta\right)=\prod_{i=1}^{m} \frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2}}{2 \sigma^{2}}\right) L(θ)=∏i=1mp(y(i)∣x(i);θ)=∏i=1m2πσ1exp(−2σ2(y(i)−θTx(i))2)
极大似然估计即为估计参数使得我们的数据与参数组合后得到真实值的可能性最大的似然估计
对数似然函数:
log L ( θ ) = log ∏ i = 1 m 1 2 π σ exp ( − ( y ( i ) − θ T x ( i ) ) 2 2 σ 2 ) \log L(\theta)=\log \prod_{i=1}^{m} \frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2}}{2 \sigma^{2}}\right) logL(θ)=log∏i=1m2πσ1exp(−2σ2(y(i)−θTx(i))2)
通过对数似然函数,我们可以将似然函数中的累乘转换为累加,以获得计算量上的减少。
对对数似然函数进行化简我们可以得到:
= ∑ i = 1 m log 1 2 π σ exp ( − ( y ( i ) − θ T x ( i ) ) 2 2 σ 2 ) =\sum_{i=1}^{m} \log \frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2}}{2 \sigma^{2}}\right) =∑i=1mlog2πσ1exp(−2σ2(y(i)−θTx(i))2)
= m log 1 2 π σ − 1 σ 2 ⋅ 1 2 ∑ i = 1 m ( y ( i ) − θ T x ( i ) ) 2 =m \log \frac{1}{\sqrt{2 \pi} \sigma}-\frac{1}{\sigma^{2}} \cdot \frac{1}{2} \sum_{i=1}^{m}\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2} =mlog2πσ1−σ21⋅21∑i=1m(y(i)−θTx(i))2
由上式我们可以得到,似然函数的最终值大小仅与
∑ i = 1 m ( y ( i ) − θ T x ( i ) ) 2 \sum_{i=1}^{m}\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2} ∑i=1m(y(i)−θTx(i))2
有关,所以为了让似然函数得到最大值,此部分需要取最小值。由此我们可以得到目标函数即为:
目 标 函 数 J ( θ ) 即 为 : J ( θ ) = 1 2 ∑ i = 1 m ( y ( i ) − θ T x ( i ) ) 2 目标函数J(\theta)即为: J(\theta)=\frac{1}{2} \sum_{i=1}^{m}\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2} 目标函数J(θ)即为:J(θ)=21∑i=1m(y(i)−θTx(i))2
此式子即为最小二乘法。
线性回归求解
对最小二乘法式子进行矩阵分解
J ( θ ) = 1 2 ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 = 1 2 ( X θ − y ) T ( X θ − y ) J(\theta)=\frac{1}{2} \sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2}=\frac{1}{2}(X \theta-y)^{T}(X \theta-y) J(θ)=21∑i=1m(hθ(x(i))−y(i))2=21(Xθ−y)T(Xθ−y)
对上式求偏导可得
∇ θ J ( θ ) = ∇ θ ( 1 2 ( X θ − y ) T ( X θ − y ) ) = ∇ θ ( 1 2 ( θ T X T − y T ) ( X θ − y ) ) \nabla_{\theta} J(\theta)=\nabla_{\theta}\left(\frac{1}{2}(X \theta-y)^{T}(X \theta-y)\right)=\nabla_{\theta}\left(\frac{1}{2}\left(\theta^{T} X^{T}-y^{T}\right)(X \theta-y)\right) ∇θJ(θ)=∇θ(21(Xθ−y)T(Xθ−y))=∇θ(21(θTXT−yT)(Xθ−y))
= ∇ θ ( 1 2 ( θ T X T X θ − θ T X T y − y T X θ + y T y ) ) =\nabla_{\theta}\left(\frac{1}{2}\left(\theta^{T} X^{T} X \theta-\theta^{T} X^{T} y-y^{T} X \theta+y^{T} y\right)\right) =∇θ(21(θTXTXθ−θTXTy−yTXθ+yTy))
= 1 2 ( 2 X T X θ − X T y − ( y T X ) T ) = X T X θ − X T y =\frac{1}{2}\left(2 X^{T} X \theta-X^{T} y-\left(y^{T} X\right)^{T}\right)=X^{T} X \theta-X^{T} y =21(2XTXθ−XTy−(yTX)T)=XTXθ−XTy
由于机器学习中,我们通常默认函数为凸函数,所以偏导数的求导结果对应的即为最小值点
θ = ( X T X ) − 1 X T y \theta=\left(X^{T} X\right)^{-1} X^{T} y θ=(XTX)−1XTy
很多时候,参数θ没法直接进行求解,此时我们需要应用其他方法进行求优化。同时,当矩阵X不具有可逆性时,也无法进行求解。
最常用的评估项为残差平方和/类似方差项
R 2 : 1 − ∑ i = 1 m ( y ^ i − y i ) 2 ∑ i = 1 m ( y i − y ˉ ) 2 R^{2}: 1-\frac{\sum_{i=1}^{m}\left(\hat{y}_{i}-y_{i}\right)^{2}}{\sum_{i=1}^{m}\left(y_{i}-\bar{y}\right)^{2}} R2:1−∑i=1m(yi−yˉ)2∑i=1m(y^i−yi)2
越接近1,说明拟合效果越好。