线性回归模型的概率解释

在广义线性模型中留了个小彩蛋,今天就把这个彩蛋补完啦!
这篇博客主要解释了怎么去构造cost function(损失函数)
回顾线性模型
在广义线性模型中已经推导出线性回归模型的假设函数(hypothesis):
h Θ ( X ) = Θ T X + b h_Θ(X) = Θ^TX + b hΘ(X)=ΘTX+b
其中 Θ = [ θ 1 , θ 2 , … … θ m ] ; X = [ x 1 , x 2 , … … , x m ] Θ=[θ_1,θ_2,……θ_m]; X = [x_1,x_2,……,x_m] Θ=[θ1,θ2,θm];X=[x1,x2,,xm],b为偏置单元(bias unit),是一个常数!
这篇博客就是来解释为什么cost function(损失函数)是 J ( Θ ) = 1 / 2 ∑ i = 1 # s a m p l e s ( h Θ ( X i ) − y i ) 2 J(Θ) = 1/2\sum_{i =1 }^{\#samples} (h_Θ(X^i) - y^i)^2 J(Θ)=1/2i=1#samples(hΘ(Xi)yi)2

概率解释
符号说明:
y i y^i yi:第i个训练样本的真实值;
h Θ ( x i ) h_Θ(x^i) hΘ(xi): 第i个训练样本的预测值,也记为 y ^ \hat{y} y^
ε i ε^i εi: 误差(可能是由各种无法预知的状况引起的)

假设 y i = h Θ ( x i ) + ε i y^i = h_Θ(x^i) + ε^i yi=hΘ(xi)+εi
也就是说真实值与预测值之间存在有误差ε
其中ε~ N ( 0 , σ 2 ) N(0,σ^2) N(0,σ2), 均值为0,方差为 , σ 2 ,σ^2 ,σ2的正太分布!
所以 p ( ε i ) = 1 2 π σ 2 e − ( ε i ) 2 2 σ 2 p(ε^i) = \frac{1}{\sqrt{2}\piσ^2}e^{-\frac{(ε^i)^2}{2σ^2}} p(εi)=2 πσ21e2σ2(εi)2, 正态分布概率公式的啦
那么为什么 ε i 服 从 ( 0 , σ 2 ) ε^i服从(0,σ^2) εi(0,σ2)的正态分布呢???
重点内容:
有两个解释,第一个有点无脑哈哈哈哈哈哈
a. 使用正态分布便于计算,因为后面计算涉及到极大似然估计,对数化后原来的指数函数会便于计算!
b. 中心极限定理证明了许多独立的随机变量之和会趋向于服从高斯分布(正态分布),而误差是由多个可认定为独立因素结合在一起的结果。例如房价预测中,房价可能会取决于房主的心情,房子的位置,房子有没有带花园…这些都可以认为是互不影响的因素,换句话说就是独立的因素,因此将误差假设为服从高斯分布是比较合理的。

:在机器学习中没有完全正确的假设,只要假设合理,在现实中有足够的泛化能力即可!

因此 ( y i ∣ x i ; Θ ) (y^i|x^i;Θ) (yixi;Θ)便可认定为是服从均值为 h Θ ( x i ) , 方 差 为 σ 2 的 高 斯 分 布 h_Θ(x^i),方差为σ^2的高斯分布 hΘ(xi)σ2,,这个可以理解为ε均值为0,而 y = h Θ ( x ) + ϵ y = h_Θ(x) + \epsilon y=hΘ(x)+ϵ,因此 y i y^i yi的均值即为 h Θ ( x i ) + 0 h_Θ(x^i) + 0 hΘ(xi)+0

写成概率形式即是 ( y i ∣ x i ; Θ ) (y^i|x^i;Θ) (yixi;Θ)~ N ( h Θ ( x i ) , σ 2 ) N(h_Θ(x^i),σ^2) N(hΘ(xi),σ2)
p ( y i ∣ x i ; Θ ) = 1 2 π σ e − ( y i − h Θ ( x i ) ) 2 2 σ 2 p(y^i|x^i;Θ) = \frac{1}{\sqrt{2\pi}\sigma}e^{-\frac{(y^i-h_Θ(x^i))^2}{2σ^2}} p(yixi;Θ)=2π σ1e2σ2(yihΘ(xi))2
接下来是对Θ极大似然估计,目的是使得得到真实值的概率最大:
L ( Θ ) = ∏ i = 1 # s a m p l e s p ( y i ∣ x i ; Θ ) L(Θ) = \prod_{i = 1}^{\#samples}p(y^i|x^i;Θ) L(Θ)=i=1#samplesp(yixi;Θ)
讲L(Θ)变换成logL(Θ),这在概率论中是有提到的,为了方便计算!
l ( θ ) = l o g L ( θ ) = l o g ∏ i = 1 # s a m p l e s p ( y i ∣ x i ; Θ ) = ∑ i = 1 # s a m p l e s l o g 1 2 π σ e − ( y i − h Θ ( x i ) ) 2 2 σ 2 = ∑ i = 1 # s a m p l e s l o g 1 2 π σ + ∑ i = 1 # s a m p l e s ( − ( y i − h Θ ( x i ) ) 2 2 σ 2 ) = l o g # s a m p l e s 2 π σ + ∑ i = 1 # s a m p l e s ( − ( y i − h Θ ( x i ) ) 2 2 σ 2 ) l(\theta) = logL(\theta)\\ =log \prod_{i = 1}^{\#samples}p(y^i|x^i;Θ)\\ =\sum_{i = 1}^{\#samples}log\frac{1}{\sqrt{2\pi}\sigma}e^{-\frac{(y^i-h_Θ(x^i))^2}{2σ^2}}\\ = \sum_{i=1}^{\#samples}log\frac{1}{\sqrt{2\pi}\sigma}+\sum_{i=1}^{\#samples}(-\frac{(y^i-h_Θ(x^i))^2}{2σ^2})\\ =log\frac{\#samples}{\sqrt{2\pi}\sigma}+\sum_{i=1}^{\#samples}(-\frac{(y^i-h_Θ(x^i))^2}{2σ^2}) l(θ)=logL(θ)=logi=1#samplesp(yixi;Θ)=i=1#sampleslog2π σ1e2σ2(yihΘ(xi))2=i=1#sampleslog2π σ1+i=1#samples(2σ2(yihΘ(xi))2)=log2π σ#samples+i=1#samples(2σ2(yihΘ(xi))2)
因为 l o g # s a m p l e s 2 π σ log\frac{\#samples}{\sqrt{2\pi}\sigma} log2π σ#samples是常数,之和训练数据集大小有关,所以在做极大似然估计的时候不需要考虑,因此我们的目标就只有最大化 ∑ i = 1 # s a m p l e s ( − ( y i − h Θ ( x i ) ) 2 2 σ 2 ) \sum_{i=1}^{\#samples}(-\frac{(y^i-h_Θ(x^i))^2}{2σ^2}) i=1#samples(2σ2(yihΘ(xi))2),注意到这里还有一个参数σ,而对θ的优化与σ无关,实际上即是σ未知,θ也能得到相同的结果!因此我们也可以去掉σ,得到最后的式子: ∑ i = 1 # s a m p l e s ( − ( y i − h Θ ( x i ) ) 2 2 ) \sum_{i=1}^{\#samples}(-\frac{(y^i-h_Θ(x^i))^2}{2}) i=1#samples(2(yihΘ(xi))2)
这也就是我们在线性回归模型中得到的cost function了,看到这里是不是有一种柳暗花明又一村的感觉[emoji]
总结:
可以认为cost function实际上就是当有了hypothesis后对Θ的极大似然估计,得到最后和Θ有关的式子再取反即是我们所要的cost function,注意这里一定要取反后才能用梯度下降!因为原式子是要最大化 l ( θ ) l(\theta) l(θ),而梯度下降是要最小化误差,取反后可以使得这两个关系等价。再对这个cost function梯度下降即可得到最优的参数Θ!

你可能感兴趣的:(ML)