在上一節中,我們介紹了最簡單的學習演算法——最小二乘法去預測奧運會男子100米時間。但是可以發現,它的自變數只有一個:年份。通常,我們所面對的資料集往往不是單個特徵,而是有成千上萬個特徵組成。那麼我們就引入特徵的向量來表示,這裡涉及到矩陣的乘法,向量,矩陣求導等一些線性代數的知識。

一. 將擬合函式由單變數改寫為多變數

設我們的擬合函式

f(xi;ω)=ωTxi

其中, w表示擬合函式的引數,xi表示資料集中第i條資料。

對於上節中的f(x;a,b)=ax+b,我們可以令

ω=[ab],xi=[x1]

則這兩個函式等價。為了方便推導,我們在損失函式前邊加上1N,由於N是定值,它代表資料集的記錄數。那麼,損失函式可以寫為:

L=1Ni=1N(yiωTxi)2=1N(yXω)T(yXω)1

那麼上式的推導過程也很簡單,令
X=xT1xT2xTn=111x1x2xn
y=y1y2yn,ω=[ω0ω1]

帶入(1)式即可得證,此處略過。

二.多特徵下求解引數 ω

L=1N(yXω)T(yXω)=1N(yTωTXT)(yXω)=1N(yTyyTXωωTXTy+ωTXTXω)=1N(ωTXTXω2ωTXTy+yTy)(2)

我們的目標是讓損失函式最小,即求(2)的最小值,我們對ω求偏導數,令其等於0,就可以求出L取得極小值時引數ω的值。