第二週(多變數線性迴歸 +Matlab使用)-【機器學習-Coursera Machine Learning-吳恩達】
阿新 • • 發佈:2019-02-01
目錄:
多變數線性迴歸(模型、梯度下降技巧)
特徵選擇和多項式迴歸
正規方程
- 代價函式:和單變量回歸一樣
解:在Octave中實用pinv求逆矩陣,總可以給出一個值,即使不可逆
從原因中找解決辦法,造成不可逆的原因在於:
(1)冗餘的特徵,2個特徵關係非常密切
1)基本操作:包含輸入變數、矩陣
2)資料移動:裝載資料檔案、資料儲存、矩陣簡單操作
3)資料的計算:針對矩陣資料的個各種運算與方法
4)圖資料:plot、
5)控制語句、函式
6)向量化
多變數線性迴歸(模型、梯度下降技巧)
特徵選擇和多項式迴歸
正規方程
Matlab學習
1 多變數線性迴歸
1)模型- 假設函式:
- 代價函式:和單變量回歸一樣
- 梯度下降:
2)梯度下降演算法的實用技巧
- 特徵縮放(Feature Scaling)
均值歸一化
u為該特徵平均值;s為範圍,也就是max-min
- 學習率 alpha
0.001,0.01,0.1……直到開始發散(alpha太小,收斂太慢;alpha太大可能會發散)
2 特徵選擇和多項式迴歸
特徵是有很多選擇的,利用一些多項式,可以實現非線性迴歸(特別注意特徵縮放)
3 正規方程(Normal equation)
直接一次性利用公式求 引數theta在某些線性迴歸中,用正規方程法求最多引數theta的最優值更好。
Octave:theta = pinv(x' * x) * x' *y
(在n達到一萬左右時,考慮換成梯度下降法,其它時間用正規方程比較好)
- 如果出現XTX不可逆怎麼辦?解:在Octave中實用pinv求逆矩陣,總可以給出一個值,即使不可逆
從原因中找解決辦法,造成不可逆的原因在於:
(1)冗餘的特徵,2個特徵關係非常密切
(2)太多的特徵值了(eg:m<=n)
4 Octave/Matlab學習:
2)資料移動:裝載資料檔案、資料儲存、矩陣簡單操作
3)資料的計算:針對矩陣資料的個各種運算與方法
4)圖資料:plot、
5)控制語句、函式
6)向量化