西瓜書-第3章 線性模型

3.1 基本形式

給定由d個屬性描述的示例x=(x_{1};x_{2};...;x_{d}),其中x_{1}是x的第i個屬性上的取值,線性模型試圖學得一個通過屬性的線性組合來進行預測的函數, 即

                                                                   f(x)=\omega _{1}x_{1}+\omega_{2}x_{2}+...+\omega_{d}x{d}+b

一般用向量形式寫成

                                                                                     f(x)=\omega^Tx+b

其中\omega=(\omega_1;\omega_2;...;\omega_d).\omega和b學得之後,模型就可以確定。

3.2 線性迴歸

給定數據集D=\left \{ (x_{1}, y_{1}),(x_{2}, y_{2}),...,(x_{m},y_{m})\right \},其中x_{i}=(x_{i1};x_{i2};...;x_{id}), y_{i}\in \mathbb{R}。”線性迴歸“試圖學得一個線性模型以儘可能準確地預測實值輸出標記。我們先考慮最簡單的情形:輸入屬性的數目只有一個。爲便於討論,此時我們忽略關於屬性的下標,即D=\left \{ (x_{i}, y_{i}) \right \}_{i=1}^{m},其中x_{i}\in \mathbb{R}.對離散屬性,若屬性間存在”序“關係,可通過連續化將其轉化爲連續值,例如二值屬性”身高“的取值”高“”矮“可轉化爲{1.0, 0.0},三值屬性”高度“的取值”高“”中“”低“可轉化爲{1.0, 0.5, 0.0};若屬性間不存在序關係,假定有k個屬性值,則通過轉化爲k維向量。

爲確定\omega和b,由於均方誤差時迴歸任務中最常用的性能度量,因此我們可讓均方誤差最小化,即

                                      (\omega^{*}, b^{*})=\underset{(\omega, b)}{argmin}\sum_{i=1}^{m}(f(x_{i})-y_{i})^2=\underset{(\omega, b)}{argmin}\sum_{i=1}^{m}(y_{i}-\omega x_{i}-b)^2

均方誤差有非常好的集合意義,它對應了常用的歐幾里得距離或簡稱”歐式距離“。基於均方誤差最小化來進行模型求解的方法稱爲”最小二乘法“。在線性迴歸中,最小二乘法就是試圖找到一條直線,使所有樣本到直線上的歐式距離之和最小。

求解\omega和b使E_{(\omega, b)}=\sum_{i=1}^{m}(y_{i}-\omega x_{i}-b)^2最小化的過程,稱爲線性迴歸模型的最小二乘”參數估計“。我們可將E_{(\omega,b)}分別對\omega和b求導,得到

                           \frac{\partial E_{(\omega, b)} }{\partial \omega}=2(\omega\sum_{i=1}^{m}x_{i}^{2}-\sum_{i=1}^{m}(y_{i}-b)x_{i}), \frac{\partial E_{(\omega, b)} }{\partial \omega}=2(mb-\sum_{i=1}^{m}(y_{i}-\omega x_{i}))

然後令上面兩式爲0可得到\omega和b最優解的閉式解,即:

                                               \omega=\frac{\sum_{i=1}^{m}y_{i}(x_{i}-\bar{x})}{\sum_{i=1}^{m}x_{i}^{2}-\frac{1}{m}(\sum_{i=1}^{m})^{2}}, b=\frac{1}{m}\sum_{i=1}^{m}(y_{i}-\omega x_{i})

其中\bar{x}=\frac{1}{m}\sum_{i=1}^{m}(y_{i}-\omega x_{i})爲x的均值。

更一般的情形是如本節開頭的數據集D,樣本有d個屬性描述。此時我們試圖學得f(x_{i})=\omega^{T}x_{i}+b,使得f(x_{i})\simeq y_{i},這就稱爲“多元線性迴歸”。類似的,可利用最小二乘法對\omega和b進行估計。爲便於討論,我們把\omega和b吸收入向量形式\hat{\omega}=(\omega;b),相應的,把數據集D表示爲一個m*(d+1)大小的矩陣X,其中每行對應一個示例,該行前d個元素對應於示例的d個屬性值對應於示例的d個屬性值,最後一個元素橫置爲1,即:

                                         X=\begin{pmatrix} x_{11} & x_{12} & ... & x_{1d} & 1\\ x_{21} & x_{22} & ... & x_{2d} & 1 \\ ... & ... & ... & ...& ...\\ x_{m1} & x_{m2} & ... & x_{md} & 1 \end{pmatrix}=\begin{pmatrix} x_{1}^{T} & 1\\ x_{2}^{T} & 1\\ ... & ...\\ x_{m}^{T} & 1 \end{pmatrix}

再把標記也寫成標量的形式y=(y_{1};y_{2};...;y_{m}),有\hat{\omega^{*}}=\underset{\hat{\omega}}{argmin}(y-X \hat{\omega})^{T}(y-X \hat{\omega})

E_{\hat\omega}=(y-X \hat\omega)^{T}(y-X\hat\omega),對\hat\omega求導得到\frac{\partial E_{\hat\omega}}{\partial \hat\omega}=2X^{T}(X\hat\omega-y),令其爲0可得\hat\omega最優解的閉式解,此時我們做一個簡單的討論。當X^{T}X爲滿秩矩陣或正定矩陣時,令前面的式子爲0可得\hat{\omega^{*}}=(X^{T}X)^{-1}X^{T}y。令\hat{x_{i}}=(x_{i}, 1),則最終學得的多元線性迴歸模型爲f(\hat x_{i}^{T})=\hat x_{i}^{T}(X^{T}X)^{-1}X^{T}y

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章