3.多變數線性迴歸 (Linear Regression with multiple variable)

3.1 多維特徵(Multiple Features)

  • n 代表特徵的數量
  • x(i)代表第 i 個訓練例項,是特徵矩陣中的第 i 行,是一個向量(vector)。
  • x(i)j代表特徵矩陣中第 i 行的第 j 個特徵,也就是第 i 個訓練例項的第 j 個特徵。

多維線性方程:

hθ=θ0+θ1x+θ2x+...+θnx.

這個公式中有 n+1 個引數和 n 個變數,為了使得公式能夠簡化一些,引入 x0=1, 所以引數θ和訓練樣本X都是n+1 緯的向量
θ=θ0θ1θn
X=x0x1xn

多維線性方程 簡化為:

hθ=θTX

這裡寫圖片描述

3.2 多變數梯度下降(Gradient descent for multiple variables)

cost function :

J(θ)=12m1m(hθ(x(i))y(i))2

在 Octave 中,寫作: J = sum((X * theta - y).^2)/(2*m);

梯度下降公式:

θj:=θjαθjJ(θ0,θ1)
=θjα1m1m(hθ(x(i))y(i))x(i)j

在 Octave 中,寫作:
theta=thetaalpha/mX(Xthetay);

這裡寫圖片描述

3.3 特徵縮放(feature scaling)

以房價問題為例,假設我們使用兩個特徵,房屋的尺寸和房間的數量,尺寸的值為 0- 2000 平方英尺,而房間數量的值則是 0-5,繪製代價函式的等高線圖,看出影象會顯得很扁,梯度下降演算法下降的慢,而且可能來回震盪才能收斂。
這裡寫圖片描述

mean normalization

解決的方法是嘗試將所有特徵的尺度都儘量歸一化到-1 到 1 之間。最簡單的方法是令xiμi 代替 xi,使得特徵的平均值接近0(x0除外) :

xn=xnμnsn

其中  μn是平均值, sn 是標準差sn 或特徵範圍max(xi)min(xi)

這裡寫圖片描述

3.4 學習率(Learning rate)

  1. 確保梯度下降working correctly
    繪製迭代次數和代價函式的圖表來觀測演算法在何時趨於收斂。下降說明正常
    這裡寫圖片描述

若增大或來回波動,可能是α過大

這裡寫圖片描述

這裡寫圖片描述

2.如何選取 α
先在10倍之間取,找到合適的區間後,在其中再細化為3倍左右(log)
We recommend trying values of the learning rate α on a log-scale, at multiplicative steps of about 3 times the previous value
α=…,0.001,0.01,0.1,1,…
α=…,0.001,0.03,0.01,0.03,0.1,0.3,1,…

3.5 多項式迴歸(Features and Polynomial Regression)

房價預測問題
已知x1=frontage(臨街寬度),x2=depth(縱向深度),則hθ=θ0+θ1相關文章