1. 程式人生 > >011.線性迴歸演算法推導

011.線性迴歸演算法推導

預備知識

  • PS:
    • 之前一直比較糾結,最大似然估計的定義為什麼是概率密度函式(或概率質量函式)的累積,看了上面的似然函式中的計算例項才逐漸明白。似然函式取得最大值表示相應的引數能夠使得統計模型最為合理。

線性模型

  線性迴歸是依據樣本資料上抽取的特徵,預測連續值結果。簡單的例子如依據身高去預測體重,如實驗室中根據有色物質濃度得到吸光度曲線,再根據未知濃度有色物質吸光度得到其濃度,如上圖所示。稍複雜點的如已知房子的很多特徵,房子面積、臥室數目、房子所在街道、小區等,去預測房價。   假設有份房價預測資料,我們有n個特徵(房子面積,臥室數量…),m個樣本(房子1,房子2…),θ1為房子面積係數,θ2為臥室數量係數…,hθ(x)表示最後的房價,通過線性迴歸,我們可以得到以下公式: h

θ(x)=θ0x0+θ1x1+...+θnxx=θTXh_{\theta}(x)=\theta_0x_0+\theta_1x_1+...+\theta_nx_x=\boldsymbol{\theta}^T\boldsymbol{X}   x0x_0為1,θ0θ_0即代表常數項,θθXX預設為列向量,所以θθ需要轉置乘以XX再加,使用矩陣是因為矩陣運算高效。

誤差項分析

  真實值和預測值之間肯定是存在差異的(用ε來表示誤差)。對於每個樣本: y(i)=θTx(i)+ε(i)y^{(i)}=\boldsymbol{\theta }^Tx^{(i)}+\varepsilon^{(i)}

  統計學家對誤差項做了符合普遍規律的假設,即誤差項ε是獨立且具有相同的分佈,服從均值為0方差為ε的高斯分佈

  獨立: 如果是預測房價:房屋1的價格和房屋2的價格是沒有關係的,樣本之間互相不會影響。

  同分布: 如果是預測房價:每個房子的背景以及自身的價格變數必須相同,不能房子1是上海的,房子2是新疆的。

推導

  (1) 預測值與誤差:y(i)=θTx(i)+ε(i)y^{(i)}=\boldsymbol{\theta }^Tx^{(i)}+\varepsilon^{(i)}

  (2) 由於誤差服從高斯分佈:p(ε(i

))=12πσexp((ε(i))22σ2)p\left( \varepsilon ^{(i)} \right) =\frac{1}{\sqrt{2\pi}\sigma}\exp \left( \frac{-\left( \varepsilon ^{(i)} \right) ^2}{2\sigma ^2} \right)

  將(1)代入(2):p(y(i)x(i),θ)=12πσexp((y(i)x(i))22σ2)p\left( y^{(i)}|x^{(i)},\theta \right) =\frac{1}{\sqrt{2\pi}\sigma}\exp \left( \frac{-\left( y^{(i)}-x^{(i)} \right) ^2}{2\sigma ^2} \right)

   似然函式: L(θ)=Πmi=1p(y(i)x(i);θ)=Πmi=112πσexp((y(i)θTx(i))22σ2)L\left( \theta \right) =\underset{i=1}{\overset{m}{\Pi}}p\left( y^{(i)}|x^{(i)};\theta \right) =\underset{i=1}{\overset{m}{\Pi}}\frac{1}{\sqrt{2\pi}\sigma}\exp \left( -\frac{\left( y^{(i)}-\boldsymbol{\theta }^Tx^{(i)} \right) ^2}{2\sigma ^2} \right) \ \

   累乘難求最大值,於是引入對數

   對數似然函式: l(θ)=log(L(θ))=log(Πmi=112πσexp((y(i)θTx(i))22σ2))l\left( \theta \right) =\log \left( L\left( \theta \right) \right) =\log \left( \underset{i=1}{\overset{m}{\Pi}}\frac{1}{\sqrt{2\pi}\sigma}\exp \left( -\frac{\left( y^{(i)}-\boldsymbol{\theta }^Tx^{(i)} \right) ^2}{2\sigma ^2} \right) \right) l(θ)=i=1mlog(12πσ)i=1m(y(i)θTx(i))22σ2l\left( \theta \right) =\sum\limits_{i=1}^m{\log \left( \frac{1}{\sqrt{2\pi}\sigma} \right)}-\sum\limits_{i=1}^m{\frac{\left( y^{(i)}-\boldsymbol{\theta }^Tx^{(i)} \right) ^2}{2\sigma ^2}} l(θ)=i=1mlog(12πσ)1σ212i=1m(y(i)θTx(i))2l\left( \theta \right) =\sum\limits_{i=1}^m{\log \left( \frac{1}{\sqrt{2\pi}\sigma} \right)}-\frac{1}{\sigma ^2}\cdot \frac{1}{2}\cdot \sum\limits_{i=1}^m{\left( y^{(i)}-\boldsymbol{\theta }^Tx^{(i)} \right) ^2}    因為 i=1mlog(12πσ)\sum\limits_{i=1}^m{\log \left( \frac{1}{\sqrt{2\pi}\sigma} \right)}