EdX-Columbia機器學習課第2講筆記:線性回歸與最小二乘

回歸的定義:給定輸入xin mathbb{R}^d,輸出y in mathbb{R},回歸問題的目的是找到函數f: mathbb{R}^d 
ightarrow mathbb{R}使得對數據對(x,y)y approx f(x;w)。這裡f(x;w)稱為一個回歸函數,其自由參數為w。如果f是未知參數w的線性函數,則稱此回歸為線性的

線性回歸的模型可以表示為

y_i approx f(x_i;w) = w_0 + sum_{j=1}^d x_{ij} w_j

目標函數為最小二乘函數,即選取使平方誤差和最小的w

w_{
m LS} = mathop{
m arg}min_w sum_{i=1}^n left(y_i - f(x_i;w)
ight)^2 equiv mathop{
m arg}min_w mathcal{L} \mathcal{L} = sum_{i=1}^n(y_i - w_0 - sum_{j=1}^dx_{ij}w_j)^2 \mathcal{L} = sum_{i=1}^n(y_i - x_i^Tw)^2  {
m vectorized}

向量形式下推導如下:

egin{aligned}0 &= sum_{i=1}^n 
abla_w (y_i - x_i^Tw)^2  \&= sum_{i=1}^n 
abla_w (y_i - x_i^Tw)^T(y_i - x_i^Tw) \&= sum_{i=1}^n 
abla_w (y_i^Ty_i - y_i^Tx_i^Tw - w^Tx_iy_i + w^Tx_ix_i^Tw)end{aligned}

由於y_i, w^Tx_i都是標量,標量的轉置與自身相同,因此上式可以轉化為

sum_{i=1}^n 
abla_w (y_i^2 - 2w^Tx_iy_i + w^Tx_ix_i^Tw) = 0

根據之前的向量求導法則,有

-sum_{i=1}^n2y_ix_i + left(sum_{i=1}^n 2x_ix_i^T 
ight)w = 0 Rightarrow w_{
m LS} = left(sum_{i=1}^n x_ix_i^T
ight)^{-1}left(sum_{i=1}^n y_ix_i 
ight)

矩陣形式可以更加簡潔

mathcal{L} = sum_{i=1}^n (y_i - x_i^Tw)^2 = |!|y-Xw|!|^2 = (y - Xw)^T(y-Xw)

根據求導法則


abla_w mathcal{L} = 2X^TXw - 2X^Ty = 0 Rightarrow w_{
m LS} = (X^TX)^{-1}X^Ty

上式有解的條件是X^TX是滿秩矩陣,即n	imes (d+1)矩陣X有至少d+1個線性無關的行

可以通過向模型中加入x^2,x^3,ldots等高次變數對線性回歸進行擴展,擬合出更複雜的曲線。如果把x^2,x^3,ldots看作是不同的變數,則其還是一個線性回歸問題,之前的解法仍然有效


推薦閱讀:

從聚合轉移的統一視角淺談卷積神經網路架構設計 | Paper Reading 第二季第三期
集智:負基礎就能學會的機器學習(二) 無需任何編程基礎
機器學習入門基礎——邏輯回歸
《機器學習基石》課程學習總結(二)
機器如何做「閱讀理解」?

TAG:機器學習 | 線性回歸 |