你想要的機器學(xué)習課程筆記在這:主要討論監督學(xué)習和無(wú)監督學(xué)習
機器學(xué)習定義:A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E(一個(gè)程序從經(jīng)驗E中學(xué)習解決任務(wù)T進(jìn)行某一任務(wù)量度P,通過(guò)P測量在T的表現而提高經(jīng)驗E(另一種定義:機器學(xué)習是用數據或以往的經(jīng)驗,以此優(yōu)化計算機程序的性能標準。)
本文引用地址:http://dyxdggzs.com/article/201810/393509.htm不同類(lèi)型的機器學(xué)習算法:主要討論監督學(xué)習和無(wú)監督學(xué)習
監督學(xué)習:利用一組已知類(lèi)別的樣本調整分類(lèi)器的參數,使其達到所要求性能的 過(guò)程,也稱(chēng)為監督訓練或有教師學(xué)習。(樣本有明確的標簽和定義,數據間有明確的邏輯關(guān)系。通過(guò)已有的數據來(lái)預測未知的數據。),主要涉及回歸問(wèn)題和分類(lèi)問(wèn)題。



無(wú)監督學(xué)習:根據沒(méi)有標記的數據樣本識別各種問(wèn)題。典型例子是聚類(lèi)算法。
1.線(xiàn)性回歸問(wèn)題
設計一個(gè)函數,使它盡量滿(mǎn)足我們所給出的數據(訓練集,可能有很多個(gè)特征,這里簡(jiǎn)化假設只有一個(gè)特征也就是只有一個(gè)變量x,我們假設給出m組數據*),并可以對數據做出可信的預測。
如果我們的假設函數設為
hθ(x)=θ0+θ1x,此處的θ為模型參數,選擇不同的θ0和θ1能夠得到不同的函數圖像?,F在如何得到最能夠擬合數據的一組θ0和θ1呢?
這個(gè)“最能擬合數據”可以理解為對每一個(gè)x,其預測值與真實(shí)值,也即
|hθ(xi)-yi| 最小,我們引入一個(gè)代價(jià)函數 J(θ0,θ1):
J(θ0,θ1)=1/2m∑(hθ(xi)-yi)^2
可以看出,我們的目的就是找出最適合的θ0和θ1,使代價(jià)函數J(θ0,θ1)的值最小。
要找出這個(gè)最小值,我們可以采用一種梯度下降的方法,在此之前,先得更深層次地理解代價(jià)函數。
我們先忽視θ0,那么代價(jià)函數是關(guān)于θ1的函數,要找出其最小值,通過(guò)圖像可以看到:

θ1取中間那一點(diǎn)就是我們所求值。我們可以從其他的點(diǎn)不斷”逼近“最低點(diǎn),具體操作為:
不斷更新θ1:
θ1:=θ1-α/θ1*J(θ1)
后面那一項是J在θ1這一點(diǎn)的偏導數??梢岳斫鉃閷ⅵ?向其斜率方向偏移一點(diǎn)點(diǎn),由于J(θ1)不斷減小,偏移量也不斷減小。這樣隨著(zhù)不斷更新,我們可以得到最終結果。
現在如果我們在引入θ0,那么代價(jià)函數是關(guān)于兩個(gè)變量的函數,所成的圖像是一個(gè)曲面,同樣要找到”最低點(diǎn)“,應對兩變量同時(shí)進(jìn)行上面的更新。
同樣的,如果特征量非常多,J是有關(guān)n個(gè)變量的函數,同樣沿用上面的方法。
梯度下降的幾個(gè)注意點(diǎn):
更新式子的α可以理解為下降的”“步幅”,但α過(guò)小會(huì )導致回歸速度很慢,需要更新多次。而α過(guò)大會(huì )導致無(wú)法達到最低點(diǎn),在更新一次后可能越過(guò)最低點(diǎn)。

α(稱(chēng)為學(xué)習率)的選取可以觀(guān)察(更新次數)~J的圖像。
藍色的曲線(xiàn)表示所取的α較合適,下面的綠色表示α過(guò)小,上面的綠色表示α過(guò)大。
對于θ的更新,式子可以展開(kāi)簡(jiǎn)化為
*θi=θi-1/m∑(hθ(xi)-yi)xi
(i=0,1,2,3···n)其中x0=1;
特征縮放。對于有多個(gè)特征的數據,如果各個(gè)特征的范圍比較接近,梯度下降法可以更快的收斂。
執行時(shí)更一般地將特征約束到-1到1之間??梢杂眠@個(gè)式子:
xi=(xi-μi)/si其中μ為特征x的平均值,s為特征x的范圍。
正則化問(wèn)題。實(shí)際問(wèn)題中一個(gè)結果可能和多個(gè)特征有關(guān),如果特征過(guò)多,而訓練數據較少,為了強行滿(mǎn)足所有的數據,會(huì )出現“過(guò)擬合”現象:

解決方法是盡量去掉不必要的特征量,或者進(jìn)行正則化,將所有特征量減小(一般不包括x0)。
J(θ)=1/2m[∑(hθ(x)-y)2+λ∑θ 2](后面加的稱(chēng)為懲罰項)要讓這個(gè)式子盡量小,那么θ就要盡量小,以此達到減小θ的目的。
將這個(gè)修改后的代價(jià)函數帶入更新式。
θ=θ(1-αλ/m)-a/m∑(h(x)-y)x
這會(huì )使曲線(xiàn)相對平滑。正則化參數要設的大一點(diǎn),但如果太大的話(huà)所有θ相當于不存在,曲線(xiàn)就會(huì )成一條水平直線(xiàn)。
2,分類(lèi)問(wèn)題
在分類(lèi)問(wèn)題中,我們簡(jiǎn)化模型為只有兩個(gè)分類(lèi)0和1.但數據的范圍遠在0至1之外,所以我們可以用logistic函數做處理:
h(x)=1/(1+e-fθ(x))
z為0時(shí)g(z)取0.5,g(z)在0到1之間
這樣就可以將正負改為與0.5的大小區別,實(shí)際上h(x)=P(y=1|x;θ)
即得到的結果可以代表y為1的概率
這樣當h(x)>0.5時(shí)我們可以認為對應的xi分類(lèi)為使y為1,h(x)<0.5認為對應的xi使y為0。

如圖的h(x)將數據分為兩部分,這條線(xiàn)叫做決策邊界。在線(xiàn)內外的數據位置分別對應著(zhù)與零的大小,概率表現在h(x)上。當然決策邊界可以是不同形式的函數。
評論