在上一篇文章中,我们通过最小二乘法
得到了线性回归问题中,最优参数的闭式解:
β
l
s
=
(
X
T
X
)
−
1
X
T
Y
(1)
\beta^{ls} = (X^TX)^{-1}X^TY \tag{1}
βls=(XTX)−1XTY(1)
但是为什么在优化时使用最小二乘法呢?
从正态分布到最小二乘法
在这一小节,我们重点阐述所有推导的依据,首先要给出一个关键的定理,中心极限定理
,作为后续的基础。
中心极限定理
中心极限定理
说明大量的独立同分布变量共同作用的结果,会逐渐趋近一个正态分布,我们可以认为,也是假设预测值和真实值之间的误差
ϵ
\epsilon
ϵ,来源于大量的独立同分布(iid, independently identically distribution
)效果的叠加,这里的独立来源于不同干扰项之间相互不影响,但是同分布的要求较为牵强,可认为是由于产生的环境都较为类似故近似认为是同分布,但是正态分布的常见性使得这个假设的适用范围很广,一般会有较好的效果。
可记
ϵ
i
=
y
−
x
i
T
β
(2)
\epsilon_i=y-x_i^T\beta \tag{2}
ϵi=y−xiTβ(2)
满足
ϵ
i
∼
N
(
μ
,
σ
2
)
\epsilon_i \sim \bold{N} ~(\mu, \sigma^2)
ϵi∼N (μ,σ2),其中
β
\beta
β为真实参数。
而其中误差的均值可以通过bias调整到零,即将bias项增加
μ
\mu
μ,则
ϵ
i
=
y
−
x
i
T
β
−
μ
\epsilon_i = y-x_i^T\beta-\mu
ϵi=y−xiTβ−μ,此时其对应的正态分布变为
N
(
0
,
σ
2
)
\bold{N}(0, \sigma^2)
N(0,σ2),成功将分布中心移到原点处。。
引入了正态分布之后,可以据此进行下一步的讨论。
极大似然估计
使用乘法原理得到如下的联合分布,以描述当前数据集
P ( ϵ ∣ X , Y ) = ∏ P ( ϵ i ) = ∏ i 1 2 π exp ( − ( ϵ i ) 2 2 σ 2 ) = ( 1 2 π ) N ∏ i exp ( − ( ϵ i ) 2 2 σ 2 ) (3) \begin{aligned} \bold{P}(\epsilon|X, Y)&=\prod \bold{P}(\epsilon_i)\\ &=\prod_i \frac{1}{\sqrt{2 \pi}}\exp\bigg(-\frac{(\epsilon_i )^2}{2\sigma ^2}\bigg)\\ &=\bigg(\frac{1}{\sqrt{2 \pi}}\bigg)^N\prod_i \exp\bigg(-\frac{(\epsilon_i )^2}{2\sigma ^2}\bigg) \end{aligned} \tag{3} P(ϵ∣X,Y)=∏P(ϵi)=i∏2π1exp(−2σ2(ϵi)2)=(2π1)Ni∏exp(−2σ2(ϵi)2)(3)
可认为在类似环境下产生的数据方差一样,即认为 ϵ i \epsilon_i ϵi独立同分布。这个iid的底气就比上面那个假设要强。
则上式取对数之后有
log
(
P
(
ϵ
∣
X
,
Y
)
)
=
log
[
(
1
2
π
)
N
∏
i
exp
(
−
(
ϵ
i
)
2
2
σ
2
)
]
=
∑
i
log
(
1
2
π
exp
(
−
(
ϵ
i
)
2
2
σ
2
)
)
=
N
log
(
1
2
π
)
+
∑
i
−
(
ϵ
i
)
2
2
σ
2
=
C
−
1
2
σ
2
∑
i
ϵ
i
2
(4)
\begin{aligned} \log\big(\bold{P}(\epsilon|X, Y)\big)&=\log\bigg[\bigg(\frac{1}{\sqrt{2 \pi}}\bigg)^N\prod_i \exp\bigg(-\frac{(\epsilon_i )^2}{2\sigma ^2}\bigg)\bigg]\\ &=\sum_i \log\bigg(\frac{1}{\sqrt{2 \pi}}\exp\bigg(-\frac{(\epsilon_i )^2}{2\sigma ^2}\bigg)\bigg)\\ &=N\log\bigg(\frac{1}{\sqrt{2 \pi}}\bigg)+\sum_i -\frac{(\epsilon_i )^2}{2\sigma ^2}\\ &=C-\frac{1}{2\sigma ^2}\sum_i \epsilon_i ^2 \tag{4} \end{aligned}
log(P(ϵ∣X,Y))=log[(2π1)Ni∏exp(−2σ2(ϵi)2)]=i∑log(2π1exp(−2σ2(ϵi)2))=Nlog(2π1)+i∑−2σ2(ϵi)2=C−2σ21i∑ϵi2(4)
所以最大化上述概率值,等价于最小化 ∑ ϵ i 2 \sum \epsilon_i^2 ∑ϵi2,即等价于使用最小二乘法进行优化。
至此,我们证明了最小二乘法和正态分布之间的关系,实际上,所有使用mse作为优化指标的任务都默认一个正态分布的先验假设。
显然, ϵ \epsilon ϵ和真实值之间的关系可如下表示
Y i = ∑ j β j ^ x i j + ϵ i (5) Y_i = \sum_j \hat{\beta_j} x_{ij} + \epsilon_i \tag{5} Yi=j∑βj^xij+ϵi(5)
即在统计的视角下,给定 X X X之后, Y Y Y是一个在预测值附近波动的量,反过来说,给定了数据集即输入输出之后,预测值的出现对应一个概率值,上述的工作就是在最大化这个概率。
这也意味着,在所有的样本中,一个 X X X可能对应不同的 Y Y Y。
又
ϵ
i
\epsilon_i
ϵi同分布,故其方差为
∀
i
,
v
a
r
(
Y
i
)
=
σ
2
(6)
\forall i,var(Y_i) = \sigma^2 \tag{6}
∀i,var(Yi)=σ2(6)
若
Y
i
Y_i
Yi之间没有相关性,则
v
a
r
(
Y
)
=
σ
2
I
∈
R
N
∗
N
(7)
var(Y) = \sigma^2I \in \bold{R}^{N*N} \tag{7}
var(Y)=σ2I∈RN∗N(7)
又由
β
l
s
^
=
(
X
T
X
)
−
1
X
T
Y
(8)
\hat{\beta^{ls}} = (X^TX)^{-1}X^TY \tag{8}
βls^=(XTX)−1XTY(8)
当 ϵ i = 0 \epsilon_i = 0 ϵi=0时,意味着输入输出的关系一一对应,否则单一预测值无法同时满足多个不同的输出,此时 β l s ^ = β \hat{\beta^{ls}} = \beta βls^=β,是一定值,所以 β ^ \hat{\beta} β^ 的扰动来源于 X X X确定之后 Y Y Y的不确定性,有
- E ( ϵ ) = 0 E(\epsilon) = 0 E(ϵ)=0
- v a r ( x ) = σ 2 I , v a r ( A x ) = A σ 2 I A T var(x)=\sigma^2I, var(Ax) = A\sigma^2IA^T var(x)=σ2I,var(Ax)=Aσ2IAT
- ( X T X ) − 1 X T σ 2 I X ( X T X ) − 1 T = σ 2 ( X T X ) − 1 X T X ( X T X ) − 1 T = ( X T X ) − 1 σ 2 (X^TX)^{-1}X^T\sigma^2IX(X^TX)^{-1^T}=\sigma^2(X^TX)^{-1}X^TX(X^TX)^{-1^T}=(X^TX)^{-1}\sigma^2 (XTX)−1XTσ2IX(XTX)−1T=σ2(XTX)−1XTX(XTX)−1T=(XTX)−1σ2
综上有
β l s ^ ∼ N ( β , ( X T X ) − 1 σ 2 ) (9) \hat{\beta^{ls}}\sim \bold{N}(\beta, (X^TX)^{-1}\sigma^2) \tag{9} βls^∼N(β,(XTX)−1σ2)(9)
从均方误差到平均值
当我们需要用常数去minimize一个mse时,哪一个会是最合适的数值。
简单的求导看一下。
o b j = 1 N ∑ i ( y i − c ) 2 (10) obj = \frac{1}{N}\sum_i (y_i - c)^2 \tag{10} obj=N1i∑(yi−c)2(10)
∂
o
b
j
∂
c
=
2
N
∑
i
(
y
i
−
c
)
(11)
\frac{\partial obj}{\partial c} = \frac{2}{N}\sum_i(y_i - c) \tag{11}
∂c∂obj=N2i∑(yi−c)(11)
这是一个凸函数,故令上式为0,则有
∑
i
(
y
i
−
c
)
=
0
(12)
\sum_i (y_i - c) = 0 \tag{12}
i∑(yi−c)=0(12)
即
c
=
1
N
y
i
(13)
c = \frac{1}{N} y_i \tag{13}
c=N1yi(13)
所以此时使用均值可以得到最小的均方误差。
进一步的,如果使用的绝对值误差,此时的常数对应数据集的中位数,这个结论可以依靠去除绝对值符号时,正号和负号数目相等得到。若存在偶数个,记为 2 K 2K 2K个样本,则顺序排列后,第 K K K和第 K + 1 K+1 K+1个样本之间的任意值都可作为最优解。
进一步结合上述两个小结的内容,其实可以发现,所谓的mse、正态分布和取均值作为最优解,实际上是等价的,这一点在后文说到K-Means时会再次提到。
统计所有出现过的不同输入值 X X X,记为 X u n i q u e = s e t ( X ) X_{unique}=set(X) Xunique=set(X)
遍历集合中的所有元素,则此时,前文所述MSE可改写为
∑ x ϵ X u n i q u e ∑ i I ( x i = x ) ( x i β − y i ) 2 (14) \sum_{x \epsilon X_{unique}} \sum_i I(x_i = x)(x_i\beta - y_i)^2 \tag{14} xϵXunique∑i∑I(xi=x)(xiβ−yi)2(14)
即所有的输入样本,按照取值的不同,可以分为不同的子集,若一共有 N = ∣ X u n i q u e ∣ N = |X_{unique}| N=∣Xunique∣种不同取值,则一共会划分为 N N N个子集。
对应的最优解是在每个子集中,将对应的均值作为预测值。对 ∀ X j ∈ X u n i q u e \forall X_j \in X_{unique} ∀Xj∈Xunique有
f ^ ( X j ) = ∑ i ( I ( X i = X j ) ∗ Y i ) / ∑ i I ( X i = X j ) (15) \hat{f}(X_j) = \sum_{i}\big(I(X_i = X_j)*Y_i\big)/\sum_i I(X_i = X_j) \tag{15} f^(Xj)=i∑(I(Xi=Xj)∗Yi)/i∑I(Xi=Xj)(15)
对应上文最小二乘法的思路,此时的概率值也最大。但需要说明的是,由于最小化的是整体的损失,这种pointwise
的最优解不一定能拟合得到,由模型和数据的特点决定。
这种pointwise
的求均值方式不由得使人想起K近邻算法。
以针对回归问题的K近邻模型为例,记距离输入样本
X
X
X最近的K个样本组成集合
n
e
i
g
h
b
o
u
r
neighbour
neighbour,则
f
^
(
X
)
=
∑
(
X
i
,
Y
i
)
∈
n
e
i
g
h
b
o
u
r
Y
i
/
K
(16)
\hat{f}(X) = \sum_{(X_i, Y_i) \in neighbour} Y_i/K \tag{16}
f^(X)=(Xi,Yi)∈neighbour∑Yi/K(16)
和上式相比,唯一的区别在于进行求均值的样本范围不同,线性回归使用和输入取值相同的样本,而K近邻使用输入的一个邻域范围内的样本。
则,当样本密度足够大时,即当每一个样本的位置都落入K个样本时,此时利用最小二乘法求解的线性回归和K近邻等价,最近的K个样本都落在输入样本的位置上,求均值的范围从一个邻域缩小为一个点,也即pointwise
。
最大似然估计和不同的统计学派
首先,给定一个表达式
P ( X ∣ β ) (17) \bold{P}(X | \beta) \tag{17} P(X∣β)(17)
表示在 β \beta β所描述的模型中,事件 X X X的概率。
当 X X X是变量时,此表达式为条件概率,而 β \beta β变化时,此表达式称为似然函数,给定一组观测,其概率值随着参数的变化而变化,似然函数就是参数 β \beta β的函数。
上文中,给定了 X X X,选择最佳的参数值,恰恰与此契合。
以上操作记为极大似然估计(maximum likelihood estimation(MLE)
),给出由参数决定的概率值,通过调整参数取值使得当前事件的发生获得最大的概率值,即
max
β
∏
i
P
(
μ
i
∣
β
)
(18)
\max_{\beta} \prod_i \bold{P}(\mu_i | \beta) \tag{18}
βmaxi∏P(μi∣β)(18)
当前一共有两种较大的统计学派,频率学派和贝叶斯学派。
-
频率学派
认为未知参数是一个固定的数值,可以进行大量重复实验进行逼近得到。但是这存在一定的局限性,这要求事件可以进行重复实验,一来可能没有重复的条件,二来若观测是对于未来进行预测,则实验也无法进行。
和极大似然估计结合时,由于我们认为参数值固定,需要选择一个确定的值来使得观测到的事件发生的概率最大,这个使得似然函数值最大的参数最有可能是真实的参数值。即
β ^ = arg max β P ( X ∣ β ) (19) \hat{\beta} = \argmax_{\beta} \bold{P}(X | \beta) \tag{19} β^=βargmaxP(X∣β)(19)
-
贝叶斯学派
贝叶斯学派则认为未知变量是一个满足某种先验分布的随机变量。
综上可知,极大似然估计是一种频率学派的算法,贝叶斯学派有其自身的贝叶斯推断
。
用于解释模型的效果指标— R 2 R^2 R2
经过上述的论证,在给定了一个列满秩的 X X X和对应的 Y Y Y之后,可以利用他们求得当前使得MSE最小的参数 β ^ l s \hat{\beta}^{ls} β^ls。
引入一个新的指标
R
2
R^2
R2
R
2
=
1
−
S
S
E
/
S
S
T
(20)
R^2 = 1- SSE/SST \tag{20}
R2=1−SSE/SST(20)
其中
S
S
E
=
∑
i
(
y
i
−
y
i
^
)
2
(21)
SSE = \sum_i (y_i - \hat{y_i})^2 \tag{21}
SSE=i∑(yi−yi^)2(21)
S
S
T
=
∑
i
(
y
i
−
y
ˉ
)
2
(22)
SST = \sum_i (y_i - \bar{y})^2 \tag{22}
SST=i∑(yi−yˉ)2(22)
接下来对 R 2 R^2 R2尝试进行理解
先来看 S S T SST SST,它描述的是所有的输出值之间的方差,即数据的散布情况。
再来看 S S E SSE SSE,它描述的是预测值和真实值之间的差异,模型训练完毕之后,预测值 y ^ \hat{y} y^在真实值 y y y的附近发生不可控的震荡,此时 S S E SSE SSE描述了在固定了模型中所有参数的取值之后,剩下的那部分不受控的变化。
减少的量,可理解为输出值减少了多少随机性,在多大的程度上被此时的模型解释。
故, S S T SST SST描述了数据中输出的方差大小,而 S S E SSE SSE描述了模型训练完毕之后,有多少方差被保留,相应的 R 2 R^2 R2实际描述了此模型可以消除,即可以解释多少方差,显然,这个指标越大越好。
还有另一个思路:
当只得到了数据集而未训练得到模型时,若采用mse指标,可使用数据集的均值作为每一个样本的预测值,故此时的方差实际也是对此时预测误差大小的描述。
对应的,式21中的SSE即为模型对每一个样本进行预测所产生的误差之和。
那么 R 2 R^2 R2实际也描述了当前模型可以减少多少预测误差,体现了模型的预测能力。
再给出一个在计量统计中常见的统计量
S
S
R
=
∑
i
(
y
i
^
−
y
ˉ
)
2
(23)
SSR = \sum_i (\hat{y_i} - \bar{y})^2 \tag{23}
SSR=i∑(yi^−yˉ)2(23)
β
^
l
s
\hat{\beta}^{ls}
β^ls使得凸函数SSE最小,即一阶导数为0,则若记
y
i
^
=
β
0
+
β
T
x
i
(24)
\hat{y_i} = \beta_0 + \beta^Tx_i \tag{24}
yi^=β0+βTxi(24)
则有
∂
S
S
E
∂
β
0
=
2
∑
i
y
i
−
y
i
^
=
0
(25)
\frac{\partial{SSE}}{\partial\beta_0}=2\sum_i y_i - \hat{y_i}=0 \tag{25}
∂β0∂SSE=2i∑yi−yi^=0(25)
∂ S S E ∂ β = 2 ∑ i x i ( y i − y i ^ ) = 0 (26) \frac{\partial{SSE}}{\partial\beta}=2\sum_ix_i(y_i - \hat{y_i})=0 \tag{26} ∂β∂SSE=2i∑xi(yi−yi^)=0(26)
进一步有
S
S
T
=
∑
i
(
y
i
−
y
ˉ
)
2
=
∑
i
(
y
i
−
y
i
^
+
y
i
^
−
y
ˉ
)
2
=
∑
i
(
y
i
−
y
i
^
)
2
+
∑
i
(
y
i
^
−
y
ˉ
)
2
+
2
∑
i
(
y
i
−
y
i
^
)
(
y
i
^
−
y
ˉ
)
=
S
S
E
+
S
S
R
+
2
i
n
t
e
r
s
e
c
t
i
o
n
(27)
\begin{aligned} SST &= \sum_i (y_i - \bar{y})^2 \\ &=\sum_i (y_i - \hat{y_i} + \hat{y_i} - \bar{y})^2 \\ &=\sum_i (y_i -\hat{y_i})^2 +\sum_i (\hat{y_i} - \bar{y})^2 + 2\sum_i (y_i - \hat{y_i} )(\hat{y_i} - \bar{y}) \\ &= SSE + SSR + 2intersection \tag{27} \end{aligned}
SST=i∑(yi−yˉ)2=i∑(yi−yi^+yi^−yˉ)2=i∑(yi−yi^)2+i∑(yi^−yˉ)2+2i∑(yi−yi^)(yi^−yˉ)=SSE+SSR+2intersection(27)
其中intersection
∑
i
(
y
i
−
y
i
^
)
(
y
i
^
−
y
ˉ
)
=
∑
i
−
(
y
i
−
y
i
^
)
y
ˉ
+
(
y
i
−
y
i
^
)
y
i
^
(28)
\sum_i (y_i - \hat{y_i} )(\hat{y_i} - \bar{y})=\sum_i-(y_i - \hat{y_i})\bar{y} + (y_i -\hat{y_i})\hat{y_i} \tag{28}
i∑(yi−yi^)(yi^−yˉ)=i∑−(yi−yi^)yˉ+(yi−yi^)yi^(28)
由式25、26,有
∑
i
(
y
i
−
y
i
^
)
y
i
^
=
∑
i
(
y
i
−
y
i
^
)
(
β
x
i
+
β
0
)
=
β
0
∑
i
(
y
i
−
y
i
^
)
+
β
∑
i
x
i
(
y
i
−
y
i
^
)
=
0
(29)
\begin{aligned} \sum_i (y_i -\hat{y_i})\hat{y_i}&=\sum_i(y_i - \hat{y_i})(\beta x_i + \beta_0) \\ &=\beta_0\sum_i(y_i - \hat{y_i})+\beta \sum_ix_i(y_i - \hat{y_i})\\ &= 0 \tag{29} \end{aligned}
i∑(yi−yi^)yi^=i∑(yi−yi^)(βxi+β0)=β0i∑(yi−yi^)+βi∑xi(yi−yi^)=0(29)
又
y
ˉ
\bar{y}
yˉ为常数,故
∑
i
(
y
i
−
y
i
^
)
y
ˉ
=
y
ˉ
(
∑
i
(
y
i
−
y
i
^
)
)
=
0
(30)
\begin{aligned} \sum_i (y_i - \hat{y_i})\bar{y} &= \bar{y} \bigg(\sum_i(y_i - \hat{y_i} ) \bigg)\\ &= 0 \tag{30} \end{aligned}
i∑(yi−yi^)yˉ=yˉ(i∑(yi−yi^))=0(30)
故式27有
∑
i
(
y
i
−
y
i
^
)
(
y
i
^
−
y
ˉ
)
=
−
∑
i
(
y
i
−
y
i
^
)
y
ˉ
+
(
y
i
−
y
i
^
)
y
i
^
=
0
(31)
\begin{aligned} \sum_i (y_i - \hat{y_i} )(\hat{y_i} - \bar{y}) &=-\sum_i(y_i - \hat{y_i})\bar{y} + (y_i -\hat{y_i})\hat{y_i} \\ & =0 \tag{31} \end{aligned}
i∑(yi−yi^)(yi^−yˉ)=−i∑(yi−yi^)yˉ+(yi−yi^)yi^=0(31)
因此有
S
S
T
=
S
S
E
+
S
S
R
(32)
SST = SSE + SSR \tag{32}
SST=SSE+SSR(32)