1. 程式人生 > >機器學習筆記(參考吳恩達機器學習視訊筆記)04_多變數線性迴歸

機器學習筆記(參考吳恩達機器學習視訊筆記)04_多變數線性迴歸

4 多變數線性迴歸

4.1 多維特徵

代表特徵矩陣中第i行的第j個特徵,也就是第i個訓練例項的第j個特徵。

支援多變數的假設函式h表示為:,其中,引入。此時模型中的引數是一個n+1維的向量,特徵矩陣X的維度是m*(n+1)。因此公式可以簡化為:

4.2 多變數梯度下降

在多變數線性迴歸中,代價函式表示為:,其中:

多變數線性迴歸的批量梯度下降演算法為:

1)特徵縮放:將所有特徵的尺度都儘量縮放到-1到1之間。最簡單的方法是令:,其中是平均值,是標準差。

2)學習率:學習率過小,則達到收斂所需的迭代次數會非常高;學習率過高,可能會越過區域性最小值導致無法收斂。通常可以考慮的

值為:0.01,0.03,0.1,0.3,1,3,10。

3)特徵與多項式迴歸:線性迴歸並不適用於所有資料,有時需要曲線來適應資料,比如二次方程模型:。通常需要先觀察資料然後再決定選擇怎樣的模型。另外,可以令:,將模型轉化為線性迴歸模型。

4.3 正規方程

正規方程是通過求解下面的方程來找出使得代價函式最小的引數:。訓練集特徵矩陣為(包含了=1)並且訓練集結果為向量y,則利用正規方程解出向量

4.4 梯度下降與正規方程比較

只要特徵變數的數目並不大,標準方程是一個很好的計算引數的替代方法。具體來說,只要特徵變數數量小於一萬,通常使用標準方程法,而不使用梯度下降法。兩種方法的比較如表:

 

 

梯度下降

正規方程

需要選擇學習率

不需要

需要多次迭代

一次運算得出

當特徵數量n大時也能較好適用

需要計算如果特徵數量n較大則運算代價大,因為矩陣逆的計算時間複雜度為,通常來說當n小於10000時還是可以接受的

適用於各種型別的模型

只適用於線性模型,不適合邏輯迴歸模型等其他模型