最小二乘法简明推导过程

最小二乘法简明推导过程最小二乘法推导最小二乘法公式J(θ)=1m∑i=1m(y(i)−hθ(x(i)))2J(\theta)=\frac1m\sum_{i=1}^m(y^{(i)}-h_{\theta}(x^{(i)}))^2J(θ)=m1​i=1∑m​(y(i)−hθ​(x(i)))2证明1.假设设数据中未被考虑进来的特征和人为无法控制的噪声为ε\varepsilonε。即y(i)=θTx(i)…

大家好,又见面了,我是你们的朋友全栈君。

最小二乘法推导

最小二乘法公式

J ( θ ) = 1 m ∑ i = 1 m ( y ( i ) − h θ ( x ( i ) ) ) 2 J(\theta) = \frac1m\sum_{i=1}^m(y^{(i)} – h_{\theta}(x^{(i)}))^2 J(θ)=m1i=1m(y(i)hθ(x(i)))2

证明

1.假设

设数据中未被考虑进来的特征和人为无法控制的噪声为 ε \varepsilon ε

y ( i ) = θ T x ( i ) + ε ( i ) y^{(i)} = \theta^{T}x^{(i)} + \varepsilon^{(i)} y(i)=θTx(i)+ε(i)

ε ∼ N ( 0 , σ 2 ) \varepsilon \sim \mathcal{N}(0,\sigma^2) εN(0,σ2)

ε ( i ) i s I I D \varepsilon^{(i)} is IID ε(i)isIID (独立同分布)。

简单的说就是 ε ( i ) \varepsilon^{(i)} ε(i) 之间互不影响,前一个的变化,不影响后一个的变化。

可得 P ( y ( i ) ∣ x ( i ) ; θ ) ∼ N ( θ T x ( i ) , σ 2 ) P(y^{(i)} | x^{(i)};\theta) \sim \mathcal{N}(\theta^{T}x^{(i)},\sigma^2) P(y(i)x(i);θ)N(θTx(i),σ2)因为视这里的 θ T x ( i ) \theta^{T}x^{(i)} θTx(i) 为定值。

注意:此处的分号表示 θ \theta θ为参数而不是随机变量。

2.证明:

于是乎展开:

P ( y ( i ) ∣ x ( i ) ; θ ) = 1 2 π σ e x p ( − ( y ( i ) − θ T x ( i ) ) 2 2 σ 2 ) P(y^{(i)} | x^{(i)};\theta) = \frac{1}{\sqrt{2\pi}\sigma}exp(-\frac{(y^{(i)} – \theta^Tx^{(i)})^2}{2\sigma^2}) P(y(i)x(i);θ)=2π
σ
1
exp(2σ2(y(i)θTx(i))2)
留着备用。

定义似然率:

L ( θ ) = P ( y ⃗ ∣ x ; θ ) \mathcal{L}(\theta) = P(\vec{y}|x;\theta) L(θ)=P(y
x;θ)

= ∏ i = 1 m P ( y ( i ) ∣ x ( i ) ; θ ) =\prod^{m}_{i=1}P(y^{(i)}|x^{(i)};\theta) =i=1mP(y(i)x(i);θ)

= ∏ i = 1 m 1 2 π σ e x p ( − ( y ( i ) − θ T x ( i ) ) 2 2 σ 2 ) = \prod^{m}_{i=1}\frac{1}{\sqrt{2\pi}\sigma}exp(-\frac{(y^{(i)} – \theta^Tx^{(i)})^2}{2\sigma^2}) =i=1m2π
σ
1
exp(2σ2(y(i)θTx(i))2)

这个式子推出来有何意义呢?我们先看一下高斯分布的图像:

最小二乘法简明推导过程

如果这个图像中的0点即是 y ( i ) y^{(i)} y(i)是每个x对应的正确答案,如果这幅图就是$P(y^{(i)} | x^{(i)};\theta) $ 的话,那么横坐标轴上的点表示的就是 y ( i ) − ε ( i ) y^{(i)} – \varepsilon^{(i)} y(i)ε(i)也就是 θ T x ( i ) \theta^{T}x^{(i)} θTx(i)(参见假设一)

我们希望 ε ( i ) \varepsilon^{(i)} ε(i)尽可能的小,也就是 θ T x ( i ) \theta^{T}x^{(i)} θTx(i)更加靠近正确答案 y ( i ) y^{(i)} y(i),怎么做?只要令$P(y^{(i)} | x^{(i)};\theta) $尽可能大即可

从此我们得到了最大似然算法。

3.最大似然算法

我们对 L ( θ ) \mathcal{L}(\theta) L(θ)取对数(以e为底)

l ( θ ) = log ⁡ L ( θ ) \mathcal{l}(\theta) = \log{\mathcal{L}(\theta)} l(θ)=logL(θ)

= l o g ∏ i = 1 m 1 2 π σ e x p ( − ( y ( i ) − θ T x ( i ) ) 2 2 σ 2 ) = log{\prod^{m}_{i=1}\frac{1}{\sqrt{2\pi}\sigma}exp(-\frac{(y^{(i)} – \theta^Tx^{(i)})^2}{2\sigma^2})} =logi=1m2π
σ
1
exp(2σ2(y(i)θTx(i))2)
对数化乘为加

= ∑ i = 1 m log ⁡ 1 2 π σ e x p ( − ( y ( i ) − θ T x ( i ) ) 2 2 σ 2 ) =\sum^m_{i=1}\log{\frac{1}{\sqrt{2\pi}\sigma}exp(-\frac{(y^{(i)} – \theta^Tx^{(i)})^2}{2\sigma^2})} =i=1mlog2π
σ
1
exp(2σ2(y(i)θTx(i))2)

= log ⁡ m 2 π σ ∑ i = 1 m log ⁡ e x p ( − ( y ( i ) − θ T x ( i ) ) 2 2 σ 2 ) =\log{\frac{m}{\sqrt{2\pi}\sigma}}\sum^m_{i=1}\log{exp(-\frac{(y^{(i)} – \theta^Tx^{(i)})^2}{2\sigma^2})} =log2π
σ
m
i=1mlogexp(2σ2(y(i)θTx(i))2)

= log ⁡ m 2 π σ ∑ i = 1 m − ( y ( i ) − θ T x ( i ) ) 2 2 σ 2 =\log{\frac{m}{\sqrt{2\pi}\sigma}}\sum^m_{i=1}-\frac{(y^{(i)} – \theta^Tx^{(i)})^2}{2\sigma^2} =log2π
σ
m
i=1m2σ2(y(i)θTx(i))2

将它最大化只需 ∑ i = 1 m ( y ( i ) − θ T x ( i ) ) 2 2 \sum^m_{i=1}\frac{(y^{(i)} – \theta^Tx^{(i)})^2}{2} i=1m2(y(i)θTx(i))2最小

证明完毕-

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/145446.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 不同卷积操作详解

    不同卷积操作详解不同卷积操作详解References:Aguidetoconvolutionarithmeticfordeeplearning,VincentDumoulinandFrancescoVisin;https://github.com/vdumoulin/conv_arithmetic/blob/master/README.md.引言我们知道CNN在深度学习中占有举…

  • python 字符串方法isdigit()

    python 字符串方法isdigit()

    2021年10月22日
  • webservice最大长度_网址最大长度

    webservice最大长度_网址最大长度各浏览器HTTPGet请求URL最大长度并不相同,几类常用浏览器最大长度及超过最大长度后提交情况如下:IE6.0:url最大长度2083个字符,超过最大长度后无法提交。IE7.0:url最大长度2083个字符,超过最大长度后仍然能提交,但是只能传过去2083个字符。firefox3.0.3:url最大长度7764个字符,超过最大长度后无法提交。Opera9.52:url最大长度7648个字符,超过最

  • oracle中的sequence

    oracle中的sequence1、什么是sequence?在oracle中sequence就是序号,每次取的时候它会自动增加。sequence与表没有关系。2、sequence的作用?当需要建立一个自增字段时,需要用到sequen

  • 伏地魔

    伏地魔

  • Framework7 Vue 教程 入门 学习

    Framework7 Vue 教程 入门 学习网上关于Framework7的博客、学习资料少之又少,所以我想把我学习Framework7Vue的入门记录一下。Framework7Framework7是一个开源免费的框架可以用来开发混合移动应用(原生和HTML混合)或者开发iOS&Android风格的WEBAPP。也可以用来作为原型开发工具,可以迅速创建一个应用的原型。Framework7最主要的功能是可以…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号