1. 程式人生 > >吳恩達機器學習筆記--第二週-3.解析法計算引數

吳恩達機器學習筆記--第二週-3.解析法計算引數

week2-3.Computing Parameters Analytically

一、Normal Equation

正規方程(normal equation)用求(偏)導的方法求最值(若是多元變數函式,需要對每個變數求偏導,然後令他們都為0):使用正規方程求J函式最值:構建設計矩陣:例子:用以下公式可直接求出使得代價函式J最小的theta值:推導過程:normal equation採用矩陣運算能夠直接求解出引數先介紹下什麼是normal equation,如果一個數據集X有m個樣本,n個特徵。則如果函式為:。資料集X的特徵向量表示為:
表示第i個訓練樣本,表示第i個訓練樣本的第j個特徵。之所以在X中加了第一列全為1,是為了讓

若希望如果函式可以擬合Y,則。又由於,所以可以通過矩陣運算求出引數熟悉線性代數的同學應該知道怎麼求出引數。可是前提是矩陣X存在逆矩陣但僅僅有方陣才有可能存在逆矩陣(不熟悉定理的同學建議去補補線性代數),因此能夠通過左乘使等式變成,因此,有同學可能會有疑問不一定存在啊,確實是,可是極少不存在,後面會介紹不存在的處理方法,先彆著急。如今你僅僅須要明確為什麼就能夠了。而且記住。使用正規方程可以不進行特徵縮放。梯度下降法與正規方程法的優缺點:

 推薦:特徵變數數小於1w,使用正規方程法;否則使用梯度下降法。

二、Normal Equation Noninvertibility

使用pinv函式在矩陣不可逆(non-invertible/singular/degenerate)情況下也能得到正確的theta值。矩陣不可逆的幾個情況:

解決方法:1.刪除重複的特徵變數;2.減少特徵變數或使用正則化(regularization)方法。