天天看點

正規方程 Normal Equation正規方程 Normal Equation

正規方程 Normal Equation

前幾篇部落格介紹了一些梯度下降的實用技巧,特征縮放(詳見http://blog.csdn.net/u012328159/article/details/51030366)和學習率(詳見http://blog.csdn.net/u012328159/article/details/51030961)。線上性回歸中,為了求得參數

正規方程 Normal Equation正規方程 Normal Equation

的最優值,一般采用梯度下降和本文将要介紹的正規方程(normal equation)。相比較梯度下降采用多次疊代逼近的方式,normal equation采用矩陣運算可以直接求解出參數

正規方程 Normal Equation正規方程 Normal Equation

。先介紹下什麼是normal equation,假設一個資料集X有m個樣本,n個特征。則假設函數為:

正規方程 Normal Equation正規方程 Normal Equation

 ,資料集X的特征向量表示為:

正規方程 Normal Equation正規方程 Normal Equation
正規方程 Normal Equation正規方程 Normal Equation

表示第i個訓練樣本,

正規方程 Normal Equation正規方程 Normal Equation

表示第i個訓練樣本的第j個特征。之是以在X中加了第一列全為1,是為了讓

正規方程 Normal Equation正規方程 Normal Equation

,若希望假設函數能夠拟合Y,則

正規方程 Normal Equation正規方程 Normal Equation

。又因為

正規方程 Normal Equation正規方程 Normal Equation

  ,是以可以通過矩陣運算求出參數

正規方程 Normal Equation正規方程 Normal Equation

。 熟悉線性代數的同學應該知道怎麼求出參數

正規方程 Normal Equation正規方程 Normal Equation

,但是前提是矩陣X存在逆矩陣

正規方程 Normal Equation正規方程 Normal Equation

。但隻有方陣才有可能存在逆矩陣(不熟悉定理的同學建議去補補線性代數),是以可以通過左乘 

正規方程 Normal Equation正規方程 Normal Equation

使等式變成

正規方程 Normal Equation正規方程 Normal Equation

 ,是以

正規方程 Normal Equation正規方程 Normal Equation

,有同學可能會有疑問

正規方程 Normal Equation正規方程 Normal Equation

不一定存在啊,确實是,但是

正規方程 Normal Equation正規方程 Normal Equation

極少不存在,後面會介紹

正規方程 Normal Equation正規方程 Normal Equation

不存在的處理方法,先别着急。現在你隻需要明白為什麼

正規方程 Normal Equation正規方程 Normal Equation

就可以了,并且記住。

介紹完normal equation求解參數

正規方程 Normal Equation正規方程 Normal Equation

,我們已經知道了兩種求解參數

正規方程 Normal Equation正規方程 Normal Equation

的方法,normal equation和梯度下降,現在來對比下這兩種方法的優缺點以及什麼場景選擇什麼方法。具體見下表吧:

正規方程 Normal Equation正規方程 Normal Equation

回到上面說的

正規方程 Normal Equation正規方程 Normal Equation

不一定存在,這種情況是極少存在的。如果

正規方程 Normal Equation正規方程 Normal Equation

不可逆了,一般要考慮一下兩者情況: (1) 移除備援特征,一些特征存線上性依賴。 (2) 特征太多時,要删除一些特征。例如(m<n),對于小樣本資料使用正則化。

繼續閱讀