轉載自https://blog.csdn.net/chenlin41204050/article/details/78220280
設有m個訓練實例,每個實例有n個特徵,則訓練實例集爲:
其中表示第i個實例第j個特徵。
特徵參數爲:
輸出變量爲:
故代價函數爲:
進行求導,等價於如下的形式:
- 其中第一項:
- 第二項:
-
該矩陣求導爲分母佈局下的標量/向量形式:
故有, - 第三項:
-
該矩陣求導爲分母佈局下的標量/向量形式:
故有: - 第四項:
-
其中爲標量,可看成一個常數。
該矩陣求導爲分母佈局下的標量/向量形式: -
故有:
綜上,正規方程爲:
最終可得特徵參數的表示:
梯度下降與正規方程的比較:
梯度下降 |
正規方程 |
需要選擇學習率 |
不需要 |
需要多次迭代 |
一次運算得出 |
當特徵數量n大時也能較好適用 |
需要計算如果特徵數量n較大則運算代價大,因爲矩陣逆的計算時間複雜度爲 ,通常來說當n小於10000 時還是可以接受的 |
適用於各種類型的模型 |
只適用於線性模型,不適合邏輯迴歸模型等其他模型 |
總結:
只要特徵變量的數目並不大,標準方程是一個很好的計算參數的替代方法。具體地說,只要特徵變量數量小於一萬,通常使用標準方程法,而不使用梯度下降法。