正規方程是通過求解代價函數的導數,令導數爲0來求theta的值。
第一個等式是線性迴歸的代價函數,第二個等式是將其寫成向量化的形式。
我們知道向量的轉置乘以該向量的含義是求出向量中各元素的平方和
令導數爲0時求出theta最小值爲
下面我們對theta的求導過程進行推導:
推導一相對好理解,推導二中對應向量的求導可以參考向量與矩陣求導與實例分析中對於求導的例子。
另外
對於那些不可逆的矩陣(通常是因爲特徵之間不獨立,如同時包含英尺爲單位的尺寸和米爲單位的尺寸兩個特徵,也有可能是特徵數量大於訓練集的數量),正規方程方法是不能用的。
求特徵參數的兩種方法,梯度下降與正規方程的比較:
梯度下降 | 正規方程 |
需要學習率,需要多次迭代 | 不需要 |
一次運算得出,當特徵數量n大時也能較好使用 | 如果特徵數量n較大則運算代價大,因爲矩陣逆的計算時間複雜度爲O(n^3),通常來說當n小於10000時還是可以接受的 |
適用於各種類型的模型 | 只適用於線性模型,不適用於邏輯迴歸模型等其他模型 |
Reference:
[1] 吳恩達機器學習
[3]向量與矩陣求導與實例分析