本人在學(xué)習(xí)斯坦福大學(xué)的機(jī)器學(xué)習(xí)課程,特記錄課程概要內(nèi)容烘跺。課程地址: Andrew Ng機(jī)器學(xué)習(xí)課程
梯度下降算法
前面課程我們有了一種方法來衡量假設(shè)函數(shù)如何擬合數(shù)據(jù)。現(xiàn)在我們需要估計(jì)假設(shè)函數(shù)中的參數(shù),這就需要梯度下降方法稀余。
想象一下,我們基于 θ0 和 θ1 繪制假設(shè)函數(shù)(實(shí)際上我們將代價(jià)函數(shù)繪制為參數(shù)估計(jì)的函數(shù))酥筝。我們不是繪制x和y滚躯,而是繪制假設(shè)函數(shù)的參數(shù)范圍和一組特定參數(shù)計(jì)算出的代價(jià)函數(shù)。
我們將θ0放在x軸上嘿歌,θ1放在y軸上掸掏,代價(jià)函數(shù)結(jié)果則在z軸上。所以圖上的點(diǎn)是我們使用假設(shè)函數(shù)和一些特定的 θ
參數(shù)計(jì)算的代價(jià)函數(shù)的結(jié)果宙帝。下圖顯示了這樣的結(jié)果集丧凤。
我們可以知道當(dāng)代價(jià)函數(shù)處于圖中凹坑的最底部時,即當(dāng)其值是最小值時步脓,假設(shè)函數(shù)對數(shù)據(jù)集的擬合度是最高的愿待。圖中紅色箭頭指示了最小點(diǎn)。
而我們獲得最小點(diǎn)的方式是通過計(jì)算代價(jià)函數(shù)的導(dǎo)數(shù)(函數(shù)切線)靴患。切線的斜率是在切點(diǎn)的導(dǎo)數(shù)仍侥,它可以給我們指定一個移動的方向。使得我們以最快的下降方向降低代價(jià)函數(shù)值鸳君。每個下降幅度由參數(shù)α確定农渊,我們稱之為學(xué)習(xí)速率。
例如或颊,上圖中的每個“星”之間的距離表示由參數(shù)α確定的步長砸紊。較小的α將導(dǎo)致較小的步長,較大的α導(dǎo)致較大的步長囱挑。下降的方向則由 J(θ0, θ1) 的偏導(dǎo)數(shù)決定醉顽。從圖上的哪一個點(diǎn)開始,可能會在不同的地方結(jié)束平挑。上圖顯示了兩個不同的起點(diǎn)游添,最終得到兩個不同的地方。
梯度下降算法為:
*重復(fù)以下步驟直到收斂: *
(j=0,1表示特征值索引)
在每次迭代 j 中通熄,應(yīng)同時更新參數(shù) θ1, θ2, ..., θn 否淤。在第 j(th) 次迭代計(jì)算另一個參數(shù)之前更新特定的參數(shù)會導(dǎo)致錯誤。
梯度下降算法 - 解析
我們先討論一個參數(shù) θ1 的梯度下降情況棠隐。公式是:
重復(fù)直到收斂:
無論斜率
另外隐解,我們應(yīng)該調(diào)整參數(shù)α鞍帝,以確保梯度下降算法在合理的時間內(nèi)收斂。無法收斂或花太多時間來獲得最小值意味著我們的步長是錯誤的煞茫。
梯度下降算法如何以固定的步長α收斂呢帕涌?
收斂的結(jié)果就是當(dāng)我們接近函數(shù)最底部時,
線性回歸的梯度下降算法
當(dāng)具體應(yīng)用于線性回歸的情況時,可以導(dǎo)出梯度下降方程的新形式钦扭。 我們可以用實(shí)際代價(jià)函數(shù)和實(shí)際假設(shè)函數(shù)來代替:
*重復(fù)直到收斂: * {
其中 m 是訓(xùn)練集的大小纫版,θ0 是與 θ1 同時變化的常數(shù),xi客情,yi 是給定訓(xùn)練集(數(shù)據(jù))的值其弊。
注意,我們將 θj 分為 θ0 和 θ1 的單獨(dú)方程; 并且對于 θ1 膀斋,由于導(dǎo)數(shù)而在結(jié)尾處乘以 xi 梭伐。以下是單個θ的推導(dǎo):
如果我們從一個猜測點(diǎn)的假設(shè)函數(shù)開始,然后重復(fù)應(yīng)用梯度下降方程仰担,那么我們的假設(shè)函數(shù)將會越來越準(zhǔn)確糊识。
這是簡單的代價(jià)函數(shù)J的梯度下降方程。該方法根據(jù)整個訓(xùn)練集的實(shí)例的計(jì)算每個步驟惰匙,稱為批量梯度下降。請注意铃将,雖然梯度下降一般容易受局部極小值的限制项鬼,但我們在此提出的線性回歸的優(yōu)化問題只有一個全局的最小值,沒有其他的局部最優(yōu)劲阎;因此梯度下降總是收斂(假設(shè)學(xué)習(xí)速率α不是太大)到全局最小值绘盟,因?yàn)镴是一個二次函數(shù)。 這個梯度下降的示例會趨向最小化二次函數(shù)悯仙。
上圖所示的橢圓是二次函數(shù)的輪廓圖龄毡。還顯示了由(48, 30)初始化的梯度下降所采取的軌跡。圖中的x軸(由直線連接)標(biāo)記了梯度下降過程中經(jīng)過的 θ 逐漸收斂到最小值的連續(xù)值锡垄。