線性回歸模型(linear regression model)
包括線性假設(linear hypothesis)和平方差代價函式(
squared error cost function
)字母的含義:
m = number of training examples 訓練樣本的數量
x = "input"variable / features 輸入變數/特徵
y = "output"variable / "target"variable 輸出變數
/目標變數
( x,
y ) 表示乙個訓練樣本(training example)
( x(i), y(i) ) 表示第
i個訓練樣本(這個上標
i是訓練集的乙個索引)
大致流程:
訓練集(training set)
學習演算法(learning algorithm)
x —>
假設函式
: h(
hypothesis
)—> y
h是乙個引導x得到
y的函式
先從線性函式(linear function)開始,因為它是學習的基礎。
這種特定的模型被稱為線性回歸(linear regression)
一元線性回歸(單變數x的函式)
hθ(x) = θ
0 + θ
1 * x
或者可以叫做:單變數線性回歸(univariate linear regression)
(hθ(x)也可以寫成
h(x) ; θ
0 和θ1
稱為模型引數)
通過乙個訓練集得出θ0
和θ1這兩個引數的值,
來讓假設函式表示的直線盡量地與這些資料點很好的擬合。
如何得到θ
0和θ1
?這兩個值要能使h(x)(輸入
x時我們的**值)最接近該樣本對應的y值。
要盡量選擇引數值,使得在訓練集中的x值,我們能準確地**
y的值。
要h(x)和
y之間的差距要小,也可以要兩者之間的差的平方最小。
現在要做的是對所有訓練樣本(i=1到
i=m的樣本)進行乙個求和。
所以我們要讓:
將第i號對應的**結果(
h(x)
)減去第
i號的實際結果所得的差的平方相加得到的總和
這個值盡量小。
代價函式(cost function)也被稱作平方誤差代價函式(
squared error cost function
)代價函式:
(有點像方差公式)
(這裡的h(x)就是
hθ(x) = θ
0 + θ
1 x )
因為這個式子裡x和
y都是樣本用例,是固定不變的,
所以在相同用例下j隨θ0
,θ1的值變化而變化。
最終目標:要找到θ0 和θ1 的值來使這個j最小
這個函式是解決回歸問題最常用的手段(還有其他代價函式也可以)。
當θ0=0時,θ1
和j(θ1 )的函式是一條開口朝上的拋物線,最低點就是
j的最小值。
當j在最低點時,此時θ1 就是答案了。
當θ0,θ1
均不為0
時,θ0
,θ1和
j(θ0
,θ1)
的影象類似碗的乙個三維曲面。
如圖:
也可以用等高線圖(contour plots),或稱為等高影象(
contour figures
)來描述代價函式j。
如圖:
左邊的是h(x)的影象,右邊是等高線圖
等高線圖同乙個圈上的點具有相同的j(θ0
,θ1)
值。梯度下降(
gradient descent
)可以用梯度下降演算法最小化任意函式j。
做法(有點像乙個從山的某一處開始下山的過程):
1、給定θ0
和θ1初始值(通常將θ0
和θ1都設為0)。
2、不停地一點點改變θ0
和θ1,來使j(θ
0 ,θ
1 )變小,
直到找到j的最小值。
反覆做一下這動作,直到收斂
注意:(1)
:= 表示賦值,是乙個賦值運算子(
assignment operator
)(如果是 = 的話,就是乙個真假判定)
(2)這裡的α是乙個被稱為學習率(learning rate)的數字,
用來控制梯度下降時,我們邁出多大的步子。
如果α值很大,梯度下降就很迅速,我們會用大步伐下山;反之亦然。
(3)α後面那一大塊,是乙個導數項(derivative term)。
是影象上那一點的切線的斜率。
當越來越接近最低點時,導數項會越來越趨向於0。
(4)需要同時更新 θ
0和θ1
。(同步更新 simultaneous updates)
∂temp0 = θ
0 - α ------- j(θ
0 ,θ
1 )
∂θ0∂
temp1 = θ
1 - α ------- j(θ
0 ,θ
1 )
∂θ1θ0 := temp0
θ1 := temp1
在梯度下降法中,當我們接近區域性最低點時,梯度下降法會自動採取更小的幅度,
這是因為當我們接近區域性最低點時,根據定義,在區域性最低是導數等於零。
所以沒必要另外減小α。
將梯度下降和代價函式合起來就是回歸的梯度下降法(gradient descent algorithm)
(也可以稱為batch梯度下降法)
反覆做一下這動作,直到收斂{
1 m
θ0 :=θ
0 -α--- * ∑(h(x(i))-y(i))
m i=1
1 m
θ1 :=θ
1 -α--- * ∑(h(x(i))-y(i)) * x(i)
m i=1
單變數線性回歸
參考 模型表示 線性回歸 linear regression 是利用稱為線性回歸方程的最小平方函式對乙個或多個自變數和因變數之間關係進行建模的一種回歸分析。這種函式是乙個或多個稱為回歸係數的模型引數的線性組合。只有乙個自變數的情況稱為簡單回歸,大於乙個自變數情況的叫做多元回歸。詳細描述 之前的房屋交...
單變數線性回歸
這是乙個單變數 房子的面積 問題。這是乙個監督學習的問題,對於每乙個資料我們都給出了乙個正確的price。準備工作 在書中他的表示是 h x 0 1x1,它的意思是因為只有乙個變數x1所以稱之為單變數線性回歸。這些都目前看來沒有什麼問題。下一步提出了乙個代價函式的感念,也就是說。每一次 出的誤差都是...
回歸問題 單變數線性回歸
回歸問題之單變數線性回歸 代價函式 模型表示 梯度下降 梯度下降的線性回歸 一 模型表示 我們通過 學習演算法 之 線性回歸演算法 了解監督學習的流程,以之前的房屋交易為例。所用到的引數 m 訓練集中例項的個數 x 代表特徵 輸入變數 y 代表目標變數 輸出變數 x,y 代表訓練集中的例項 xi,y...