一、模型描述
上一章已經通過賣房價格的模型簡單介紹了什麼是迴歸:我們嘗試將變量映射到某一個連續函數上。
這章我們將這個問題簡單地量化爲單變量線性迴歸模型(Univariate linear regression)來理解它。
PS:監督學習最常見的兩類問題:
1、迴歸:預測一個具體的數值輸出
2、分類:預測離散值輸出
先來看這個過程是如何進行的:
其中,h表示假設函數:
θ是參數,下一節我們談談如何選擇這兩個參數值。
二、代價函數(Cost function)
我們現在有了數據集,並且可以通過改變參數來調整h函數,那麼,我們如何定義什麼是“更好”的h函數呢?
一般而言,我們通過調整θ,使得所有訓練集數據與其擬合數據的差的平方和更小,即認爲得到了擬合度更好的函數。
我們引入了代價函數:
當代價函數J最小的時候(minimize J(θ0,θ1)),即找到了對於當前訓練集來說擬合度最高的函數h。
對於單變量線性迴歸而言,J關於θ的函數如下:
當我們找到了這些同心橢圓的中心點時,就找到了J函數的最小值,此時擬合度更好。
三、梯度下降基本概念(Gradient descent)
現在我們得到了代價函數J,那麼我們如何求出J的最小值呢?
這一章我們使用數值計算(numerical calculation)的方法(後面我們會學習解析解法):
從某一對θ0,θ1出發
不斷嘗試改變θ0,θ1,使得J(θ0,θ1) 減小,逐步逼近最小值(迭代)
改變的策略:每一次改變的方向,取當前位置梯度下降的方向:
梯度下降算法的定義如下。我們將會反覆重複這一步驟,直至收斂。其中的α是學習率(learning rate)控制下降速度。
(for j=0 and j=1)
迭代步驟如下:
特別需要注意的是,在這個迭代算法中,參數θ是計算完當前迭代輪次所有的θ後才統一更新,而不是算出一個更新一個(若算出一個更新一個,那麼方向就不是當前點的梯度方向了)
四、線性迴歸的梯度下降
將線性迴歸的代價函數代入梯度下降方程中,得到:
線性迴歸的代價函數是一個凸函數,局部最優解就是全局最優解。因此迭代完成後就可以得到最優解。
PS.
1、
2、矩陣相乘沒有交換律,但有結合律