監督學習算法

  • 本文首發自公衆號:RAIS,點擊直接關注。

前言

本系列文章爲 《Deep Learning》 讀書筆記,可以參看原書一起閱讀,效果更佳。由於各平臺 Markdown 解析差異,有些公式顯示效果不好,請到我 個人維護網站 查看。

監督學習算法

監督學習算法的定義是,給定一組輸入 x 和輸出 y,學習如何將其關聯起來,現在的大部分情況都是監督學習算法的範疇。

邏輯迴歸

很多的監督學習算法是基於估計概率分 布P(y|x) 的,假設參數服從高斯分佈,我們可以使用最大似然估計找到對於有參分佈族 P(y|x;θ) 最好的參數向量 θ,即用最大似然估計得到目標函數,優化這個目標函數。線性迴歸對應於高斯分佈分佈族,通過定義一族不同的概率分佈,可將線性迴歸擴展到分類情況中。

具體的做法就是將線性函數的輸出使用 sigmoid 函數(就是前文說的那個樣子像 S 型)將其壓縮到 (0, 1) 空間內,這就叫做邏輯迴歸。注意這個邏輯迴歸不是迴歸,而是用來解決分類問題。當然,線性迴歸也可以推廣爲 Softmax 迴歸,不是這裏的重點。

支持向量機

支持向量機是監督學習中關於分類與迴歸問題中重要的算法。與邏輯迴歸類似,這個模型也是基於線性函數的,不過輸出有所不同,不輸出概率,而是輸出類別,爲正正類,爲負負類。

核技巧,其實這是一個數學上的概念,用來增加維度區分不同數據,如下圖,區分下圖中左側的四個點,用的方法是增加一個維度,然後用平面分割,這與用一條曲線去分割沒什麼本質的區別,來自 視頻

核技巧

上面這樣做也會有一個問題,在數據量大且維數很多的情況下,會導致計算量急劇增大,這不好。核函數就是用來解決這個問題的,核函數只是用來計算映射到高維空間之後的內積的一種簡便方法,隱含着也從低緯到高維的映射,但其計算量可控,降低計算的複雜度,甚至把不可能的計算變爲可能,可以將低緯空間內線性不可分的兩類點變成線性可分的。

機器學習中最常用的核函數是高斯核(也稱徑向基函數),N(x;μ,∑) 是標準正態分佈,能夠把原始特徵映射到無窮維,能夠比較 u 和 v 的相似度,映射到 0 和 1:

\[k(u,v)=N(u-v;0,\sigma^2I) \]

其他監督學習算法

臨近迴歸:前面介紹過最近臨近迴歸,這也是一種非概率監督學習算法。K-最近鄰迴歸是一種可以用於分類或迴歸的算法,K-最近鄰算法就是從訓練集(根本就沒訓練,感覺叫訓練集都不太準確,應該叫樣本集)中找到與測試輸入的點最近的 K 個點,然後採用少數服從多數的思想,誰多就聽誰的(分類),或者求平均(迴歸),但是這在 K 取值不同的時候,得到的結果可能不同,因此 K 的選擇是比較重要的。這個方法的特點是訓練集可以趨近於無窮大,在比較好的情況下回收斂到貝葉斯錯誤率。這個方法需要訓練集較大,訓練集較少的情況下泛化程度不夠好;且其由於幾乎沒有訓練的過程,因此也不能學習出特徵中哪些是更有識別力的,無法找到關鍵屬性。

決策樹:決策樹會將輸入空間分成不重疊的子區域,葉節點和輸出區域一一對應。構建決策樹前需要根據信息增益的方法進行特徵選擇,然後生成決策樹,爲防止過擬合可能還需要進行剪枝。

總結

本文介紹了幾種最常見的監督學習算法。

  • 本文首發自公衆號:RAIS,點擊直接關注。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章