參考資料:
吳恩達教授機器學習課程
機器學習課程中文筆記git
多變量就時當一個example裏有n個特徵的狀況,將n個特徵統一到一個matrix裏去看做總體。
多變量線性迴歸仍是先出cost function,而後用梯度降低算法/正規方程法使cost function最小化github
多變量線性迴歸中有不少特徵,選擇合適的特徵很重要,下面是常見的可用特徵:算法
由多個特徵合成的一個新特徵(例如:長度*寬度=面積,面積做爲新特徵)機器學習
運算後的特徵,如x: x2,x1/2函數
面對多維特徵問題的時候,在對代價函數使用梯度降低算法前要對特徵進行一些處理。保證這些特徵都具備相近的尺度,這將幫助梯度降低算法更快地收斂。學習
將training set中的同一特徵值進行scaling處理,用下面公式:(x-平均值)/(最大值-最小值)範圍 能夠將全部的這一特徵值控制在-0.5<=x<=0.5,方便進行梯度降低3d
梯度降低算法的每次迭代受到學習率的影響,若是學習率太小,則達到收斂所需的迭代次數會很是高;若是學習率過大,每次迭代可能不會減少代價函數,可能會越過局部最小值致使沒法收斂。blog
一般能夠考慮嘗試些學習率:0.01,0.03,0.1,0.3,1,3ip
將cost function最小化除了用梯度降低還能夠用正規方程。正規方程法不須要學習率,不須要特徵縮放,能夠直接一次計算出:
get
只要特徵變量的數目並不大,標準方程是一個很好的計算參數的替代方法。具體地說,只要特徵變量數量小於一萬,我一般使用標準方程法,而不使用梯度降低法。
注意:有些時候對於某些模型不能使用正規方程而只能用梯度降低。