一、含義[1]
正規方程是通過求解代價函數的導數,導數爲0來求得theta的值。
二、推導
上面第一個等式是線性迴歸的代價函數,寫成向量化的形式即爲第二個等式,向量的轉置乘以該向量的含義是求向量中各元素的平方和,即XT * X = x12+x22+…+xn2
對代價函數求導[3]:
令導數爲0時即爲theta最小值
三、表現[1]
注:對於那些不可逆的矩陣(通常是因爲特徵之間不獨立,如同時包含英尺爲單位的尺寸和米爲單位的尺寸兩個特徵,也有可能是特徵數量大於訓練集的數量),正規方程方法是不能用的。
梯度下降與正規方程的比較:
梯度下降 | 正規方程 |
---|---|
需要選擇學習率 | 不需要 |
一次運算得出,當特徵數量n大時也能較好適用 | 需要計算如果特徵數量n較大則運算代價大,因爲矩陣逆的計算時間複雜度爲 ,通常來說當n小於10000 時還是可以接受的 |
適用於各種類型的模型 | 只適用於線性模型,不適合邏輯迴歸模型等其他模型 |
Reference:
[1] 吳恩達機器學習
[2] Linear Regression(線性迴歸)(二)—正規方程(normal equations)
[3] 機器學習_正規方程(最小二乘法)的推導