主流機(jī)器學(xué)習(xí)算法簡(jiǎn)介與其優(yōu)缺點(diǎn)分析

姓名:高強(qiáng)???? 學(xué)號(hào):17011210057

轉(zhuǎn)載自:cloud.tencent.com/developer/article/1006970案站,有刪改

【嵌牛導(dǎo)讀】:本文主要介紹各種機(jī)器學(xué)習(xí)算法的優(yōu)缺點(diǎn)

【嵌牛鼻子】:機(jī)器學(xué)習(xí)算法茅姜,優(yōu)缺點(diǎn),回歸怕篷,聚類(lèi)

【嵌牛提問(wèn)】:各種的機(jī)器學(xué)習(xí)算法的優(yōu)缺點(diǎn)分別是什么?

【嵌牛正文】:

機(jī)器學(xué)習(xí)算法的分類(lèi)是棘手的酗昼,有幾種合理的分類(lèi)廊谓,他們可以分為生成/識(shí)別,參數(shù)/非參數(shù)麻削,監(jiān)督/無(wú)監(jiān)督等蒸痹。例如,Scikit-Learn的文檔頁(yè)面通過(guò)學(xué)習(xí)機(jī)制對(duì)算法進(jìn)行分組呛哟。這產(chǎn)生類(lèi)別如:1叠荠,廣義線性模型,2扫责,支持向量機(jī)榛鼎,3,最近鄰居法鳖孤,4者娱,決策樹(shù),5苏揣,神經(jīng)網(wǎng)絡(luò)黄鳍,等等…

但是,從我們的經(jīng)驗(yàn)來(lái)看平匈,這并不總是算法分組最為實(shí)用的方法框沟。那是因?yàn)閷?duì)于應(yīng)用機(jī)器學(xué)習(xí)藏古,你通常不會(huì)想,“今天我要訓(xùn)練一個(gè)支持向量機(jī)忍燥!”相反校翔,你心里通常有一個(gè)最終目標(biāo),如利用它來(lái)預(yù)測(cè)結(jié)果或分類(lèi)觀察灾前。

所以在機(jī)器學(xué)習(xí)中防症,有一種叫做“沒(méi)有免費(fèi)的午餐”的定理。簡(jiǎn)而言之哎甲,它的意思就是說(shuō)沒(méi)有任何一種算法可以完美地解決每個(gè)問(wèn)題蔫敲,這對(duì)于監(jiān)督式學(xué)習(xí)(即預(yù)測(cè)性建模)尤其重要。

因此炭玫,我們想要介紹另一種分類(lèi)算法的方法奈嘿,即通過(guò)機(jī)器學(xué)習(xí)所負(fù)責(zé)的任務(wù)來(lái)分類(lèi)。

1.? 回歸

回歸是一種用于建模和預(yù)測(cè)連續(xù)數(shù)值變量的監(jiān)督學(xué)習(xí)任務(wù)吞加。例如預(yù)測(cè)房地產(chǎn)價(jià)格裙犹,股價(jià)變動(dòng)或?qū)W生考試分?jǐn)?shù)。

回歸任務(wù)的特征是具有數(shù)字目標(biāo)變量的標(biāo)記數(shù)據(jù)集衔憨。換句話說(shuō)叶圃,對(duì)于每個(gè)可用于監(jiān)督算法的觀察結(jié)果,您都有一些“基于事實(shí)”的數(shù)值践图。

1.1? 線性回歸

線性回歸是回歸任務(wù)中最常用的算法之一掺冠。它最簡(jiǎn)單的形式是試圖將一個(gè)直的超平面整合到你的數(shù)據(jù)集中(即當(dāng)你只有兩個(gè)變量的時(shí)候,你只能得到一條直線)码党。正如您可能猜到的那樣德崭,當(dāng)數(shù)據(jù)集的變量之間存在線性關(guān)系時(shí),它的效果是非常好的揖盘。

實(shí)際上眉厨,簡(jiǎn)單的線性回歸經(jīng)常被正則化的同類(lèi)算法(LASSO,Ridge和Elastic-Net)所忽略兽狭。正則化是一種懲罰大系數(shù)的技術(shù)憾股,以避免過(guò)度擬合,它應(yīng)該調(diào)整其懲罰的力度椭符。

優(yōu)點(diǎn):線性回歸可以直觀地理解和解釋?zhuān)⑶铱梢哉齽t化以避免過(guò)度擬合荔燎。另外耻姥,使用隨機(jī)梯度下降的新數(shù)據(jù)可以很容易地更新線性模型销钝。

缺點(diǎn):當(dāng)存在非線性關(guān)系時(shí),線性回歸表現(xiàn)不佳琐簇。它們本身并不具有足夠的靈活性來(lái)捕捉更為復(fù)雜的模式蒸健,對(duì)于添加正確的交互作用項(xiàng)或者多項(xiàng)式來(lái)說(shuō)可能會(huì)非常棘手和耗時(shí)座享。

1.2? 回歸樹(shù)

回歸樹(shù)(決策樹(shù)的一種)是通過(guò)將數(shù)據(jù)集反復(fù)分割成單獨(dú)的分支來(lái)實(shí)現(xiàn)分層化學(xué)習(xí),從而最大化每個(gè)分割信息的增益效果似忧。這種分支結(jié)構(gòu)允許回歸樹(shù)自然地學(xué)習(xí)非線性關(guān)系渣叛。

隨機(jī)森林(RF)和梯度增強(qiáng)樹(shù)(GBM)等集成方法結(jié)合了許多單獨(dú)樹(shù)的特性。我們不會(huì)在這里介紹他們的基本機(jī)制盯捌,但是在實(shí)踐中淳衙,隨機(jī)森林通常表現(xiàn)地非常好,而梯度增強(qiáng)樹(shù)則很難調(diào)整饺著,但是后者往往會(huì)有更高的性能上限箫攀。

優(yōu)點(diǎn):回歸樹(shù)可以學(xué)習(xí)非線性關(guān)系,并且對(duì)異常值相當(dāng)敏銳幼衰。在實(shí)踐中靴跛,回歸樹(shù)也表現(xiàn)地非常出色,贏得了許多經(jīng)典(即非深度學(xué)習(xí))的機(jī)器學(xué)習(xí)比賽渡嚣。

缺點(diǎn):無(wú)約束的單個(gè)樹(shù)很容易過(guò)擬合梢睛,因?yàn)樗鼈兛梢员3址种е钡剿鼈冇涀×怂械挠?xùn)練數(shù)據(jù)。但是识椰,這個(gè)問(wèn)題可以通過(guò)使用集成的方式來(lái)緩解绝葡。

1.3? 深度學(xué)習(xí)

深度學(xué)習(xí)是指能學(xué)習(xí)極其復(fù)雜模式的多層神經(jīng)網(wǎng)絡(luò)。他們使用輸入和輸出之間的“隱藏層”來(lái)模擬其他算法難以學(xué)習(xí)的數(shù)據(jù)中介碼腹鹉。

他們有幾個(gè)重要的機(jī)制挤牛,如卷積和丟棄,使他們能夠有效地從高維數(shù)據(jù)中學(xué)習(xí)种蘸。然而墓赴,與其他算法相比,深度學(xué)習(xí)仍然需要更多的數(shù)據(jù)來(lái)訓(xùn)練航瞭,因?yàn)檫@些模型需要更多的參數(shù)來(lái)實(shí)現(xiàn)其更準(zhǔn)確的推測(cè)诫硕。

優(yōu)點(diǎn):深度學(xué)習(xí)是在諸如計(jì)算機(jī)視覺(jué)和語(yǔ)音識(shí)別等領(lǐng)域內(nèi),目前可以被利用的最先進(jìn)的方法刊侯。深度神經(jīng)網(wǎng)絡(luò)在圖像章办,音頻和文本數(shù)據(jù)上表現(xiàn)地非常出色,可以輕松地使用成批量的傳播方法來(lái)更新數(shù)據(jù)滨彻。它的體系結(jié)構(gòu)(即層的數(shù)量和結(jié)構(gòu))可以適應(yīng)許多類(lèi)型的問(wèn)題藕届,并且它們的隱藏層減少了對(duì)特征工程的需要。

缺點(diǎn):深度學(xué)習(xí)算法不適合作為通用算法亭饵,因?yàn)樗鼈冃枰罅康臄?shù)據(jù)休偶。事實(shí)上,對(duì)于傳統(tǒng)的機(jī)器學(xué)習(xí)問(wèn)題辜羊,它們的表現(xiàn)通常遜色于決策樹(shù)踏兜。另外词顾,它們需要密集型的計(jì)算訓(xùn)練,而且需要更多的專(zhuān)業(yè)知識(shí)來(lái)做調(diào)試(即設(shè)置架構(gòu)和超參數(shù))碱妆。

2.? 分類(lèi)

分類(lèi)是建模和預(yù)測(cè)分類(lèi)變量的監(jiān)督學(xué)習(xí)任務(wù)肉盹。例如預(yù)測(cè)員工的流失,垃圾郵件疹尾,財(cái)務(wù)欺詐或者學(xué)生信件等級(jí)上忍。如你所見(jiàn),許多回歸算法都有分類(lèi)對(duì)應(yīng)纳本。這種算法適用于預(yù)測(cè)類(lèi)(或類(lèi)概率)而不是實(shí)數(shù)類(lèi)睡雇。

2.1 (正則化的)邏輯回歸

邏輯回歸是線性回歸的分類(lèi)對(duì)應(yīng)。它預(yù)測(cè)被映射到介于0和1之間的邏輯函數(shù)饮醇,這意味著預(yù)測(cè)可以被解釋為類(lèi)概率它抱。

模型本身仍然是“線性的”,所以當(dāng)你的類(lèi)是線性可分的(即它們可以被一個(gè)單一的決策表面分開(kāi))時(shí)候朴艰,邏輯回歸算法十分有效观蓄。 邏輯回歸也可以通過(guò)具有可調(diào)懲罰強(qiáng)度的系數(shù)來(lái)實(shí)現(xiàn)正則化。

優(yōu)點(diǎn):數(shù)據(jù)的輸出有一個(gè)很好的概率解釋?zhuān)惴梢哉齽t化以避免過(guò)度擬合祠墅。 邏輯回歸可以使用隨機(jī)梯度下降的方法使得新數(shù)據(jù)的更新變得更為輕松侮穿。

缺點(diǎn):當(dāng)存在多個(gè)或非線性的決策邊界時(shí),邏輯回歸往往表現(xiàn)不佳毁嗦。它不夠靈活亲茅,無(wú)法自然地捕捉到更復(fù)雜的關(guān)系。

2.2? 分類(lèi)樹(shù)(集成)

分類(lèi)樹(shù)是回歸樹(shù)的分類(lèi)對(duì)應(yīng)算法狗准。它們倆被統(tǒng)稱(chēng)為“決策樹(shù)”克锣,或者被稱(chēng)為“分類(lèi)和回歸(CART)”。

優(yōu)點(diǎn):與回歸樹(shù)一樣腔长,集成分類(lèi)樹(shù)在實(shí)踐中的表現(xiàn)也很好袭祟。它們對(duì)于異常值的控制是可靠的和可擴(kuò)展的,并且由于它們的層次結(jié)構(gòu)捞附,能夠自然地對(duì)非線性決策邊界進(jìn)行建模巾乳。

缺點(diǎn):不受約束的單個(gè)樹(shù)容易過(guò)度擬合,但是這可以通過(guò)集成方法來(lái)緩解鸟召。

2.3? 深度學(xué)習(xí)

延續(xù)其一貫的趨勢(shì)胆绊,深度學(xué)習(xí)也很容易適應(yīng)分類(lèi)問(wèn)題。實(shí)際上欧募,深度學(xué)習(xí)往往是分類(lèi)中比較常用的方法压状,比如在圖像分類(lèi)中。

優(yōu)點(diǎn):在分類(lèi)音頻槽片,文本和圖像數(shù)據(jù)時(shí)何缓,深度學(xué)習(xí)表現(xiàn)地非常出色肢础。

缺點(diǎn):與回歸一樣还栓,深度神經(jīng)網(wǎng)絡(luò)需要大量的數(shù)據(jù)進(jìn)行訓(xùn)練碌廓,所以它不被視為通用算法。

2.4? 支持向量機(jī)

支持向量機(jī)(SVM)使用稱(chēng)為核心(kernels)的機(jī)制剩盒,它計(jì)算兩個(gè)觀察對(duì)象之間的距離谷婆。隨后支持向量機(jī)算法找到一個(gè)決策邊界,最大化不同類(lèi)別的最近成員之間的距離辽聊。

例如纪挎,具有線性內(nèi)核的支持向量機(jī)類(lèi)似于邏輯回歸。因此跟匆,在實(shí)踐中异袄,支持向量機(jī)的好處通常來(lái)自于使用非線性的內(nèi)核來(lái)建模一種非線性的決策邊界。

優(yōu)點(diǎn):支持向量機(jī)可以模擬非線性決策邊界玛臂,并有許多內(nèi)核可供選擇烤蜕。它們對(duì)于過(guò)度擬合的控制力也相當(dāng)強(qiáng)大,特別是在高維空間迹冤。

缺點(diǎn):然而讽营,支持向量機(jī)是難以調(diào)整的內(nèi)存密集型算法,而且很依賴于選擇正確的核心泡徙,并且不能很好地?cái)U(kuò)展到較大的數(shù)據(jù)集里橱鹏。目前在行業(yè)中,隨機(jī)森林通常優(yōu)于支持向量機(jī)堪藐。

3.? 聚類(lèi)

聚類(lèi)是一種無(wú)監(jiān)督的學(xué)習(xí)任務(wù)莉兰,用于基于數(shù)據(jù)集中的固有結(jié)構(gòu)來(lái)發(fā)現(xiàn)自然的觀測(cè)分組(即聚類(lèi))。例子包括客戶細(xì)分礁竞,電子商務(wù)中的類(lèi)似項(xiàng)目分組以及社交網(wǎng)絡(luò)分析贮勃。

因?yàn)榫垲?lèi)是無(wú)監(jiān)督的(即沒(méi)有“正確答案”),所以通常使用可視化的數(shù)據(jù)來(lái)評(píng)估結(jié)果苏章。如果有“正確的答案”(即你的訓(xùn)練集中有預(yù)標(biāo)記的聚類(lèi))寂嘉,那么選擇分類(lèi)算法通常更合適。

3.1? K-Means算法

K-Means算法是一種通用算法枫绅,它根據(jù)點(diǎn)之間的幾何距離(即坐標(biāo)平面上的距離)進(jìn)行聚類(lèi)泉孩。這些集群圍繞著質(zhì)心分組,使它們成為球形并淋,并具有相似的大小寓搬。

對(duì)于初學(xué)者來(lái)說(shuō),這是我們推薦的一種算法县耽,因?yàn)樗芎?jiǎn)單句喷,而且足夠靈活镣典,可以為大多數(shù)問(wèn)題獲得合理的結(jié)果。

優(yōu)點(diǎn):K-Means算法是最流行的聚類(lèi)算法唾琼,因?yàn)槿绻腩A(yù)處理數(shù)據(jù)或者編譯有用的功能兄春,它是一種快速,簡(jiǎn)單和擁有令人驚訝的靈活性的一種算法锡溯。

缺點(diǎn):用戶必須指定簇的數(shù)目赶舆,這并不總是很容易的。另外祭饭,如果數(shù)據(jù)中真實(shí)的底層聚類(lèi)不是球狀的芜茵,那么K-Means算法將產(chǎn)生錯(cuò)誤的聚類(lèi)。

3.2? 近鄰傳播

近鄰傳播是一種相對(duì)較新的聚類(lèi)技術(shù)倡蝙,可以根據(jù)點(diǎn)之間的圖距進(jìn)行聚類(lèi)九串。集群傾向于變得更小和具有不均勻的大小。

優(yōu)點(diǎn):用戶不需要指定簇的數(shù)量(但是需要指定“樣本偏好”和“阻尼”超參數(shù))寺鸥。

缺點(diǎn):近鄰傳播的主要缺點(diǎn)是速度很慢猪钮,占用內(nèi)存很大,難以擴(kuò)展到較大的數(shù)據(jù)集析既。另外躬贡,它也需要假設(shè)真正的底層集群是球狀的。

3.3? 分層聚類(lèi)

分層聚類(lèi)眼坏,又名聚集聚類(lèi)拂玻,是基于相同思想的一套算法:(1)從它自己的聚類(lèi)中的每個(gè)點(diǎn)開(kāi)始。 (2)對(duì)于每個(gè)簇宰译,根據(jù)一些標(biāo)準(zhǔn)將其與另一個(gè)簇合并檐蚜。 (3)重復(fù),直到只剩下一個(gè)群集沿侈,并留下一個(gè)簇的層次結(jié)構(gòu)闯第。

優(yōu)點(diǎn):分層聚類(lèi)的主要優(yōu)點(diǎn)是不會(huì)假設(shè)球體是球狀的。另外缀拭,它可以很好地?cái)U(kuò)展到更大的數(shù)據(jù)集里咳短。

缺點(diǎn):就像K-Means算法一樣,用戶必須選擇聚類(lèi)的數(shù)量(即在算法完成之后要保留的層次級(jí)別)蛛淋。

3.4? DBSCAN(Density-Based Spatial Clustering of Applications with Noise)

DBSCAN是一種基于密度的算法咙好,可以為密集的點(diǎn)區(qū)域生成集群。還有一個(gè)最近的新發(fā)展被稱(chēng)為HDBSCAN褐荷,允許產(chǎn)生密度不同的集群勾效。

優(yōu)點(diǎn):DBSCAN不假設(shè)集群為球狀,其性能也是可擴(kuò)展的。另外层宫,它不需要將每個(gè)點(diǎn)都分配給一個(gè)簇杨伙,從而減少簇的噪聲(這可能是一個(gè)弱點(diǎn),取決于你的用的地方)萌腿。

缺點(diǎn):用戶必須調(diào)用超參數(shù)“epsilon”和“min_samples”限匣,它們定義了簇的密度。 DBSCAN對(duì)這些超參數(shù)非常敏感哮奇。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末膛腐,一起剝皮案震驚了整個(gè)濱河市睛约,隨后出現(xiàn)的幾起案子鼎俘,更是在濱河造成了極大的恐慌,老刑警劉巖辩涝,帶你破解...
    沈念sama閱讀 212,816評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件贸伐,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡怔揩,警方通過(guò)查閱死者的電腦和手機(jī)捉邢,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)商膊,“玉大人伏伐,你說(shuō)我怎么就攤上這事≡尾穑” “怎么了藐翎?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,300評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)实幕。 經(jīng)常有香客問(wèn)我吝镣,道長(zhǎng),這世上最難降的妖魔是什么昆庇? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,780評(píng)論 1 285
  • 正文 為了忘掉前任末贾,我火速辦了婚禮,結(jié)果婚禮上整吆,老公的妹妹穿的比我還像新娘拱撵。我一直安慰自己,他們只是感情好表蝙,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,890評(píng)論 6 385
  • 文/花漫 我一把揭開(kāi)白布拴测。 她就那樣靜靜地躺著,像睡著了一般勇哗。 火紅的嫁衣襯著肌膚如雪昼扛。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 50,084評(píng)論 1 291
  • 那天,我揣著相機(jī)與錄音抄谐,去河邊找鬼渺鹦。 笑死,一個(gè)胖子當(dāng)著我的面吹牛蛹含,可吹牛的內(nèi)容都是我干的毅厚。 我是一名探鬼主播,決...
    沈念sama閱讀 39,151評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼浦箱,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼吸耿!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起酷窥,我...
    開(kāi)封第一講書(shū)人閱讀 37,912評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤咽安,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后蓬推,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體妆棒,經(jīng)...
    沈念sama閱讀 44,355評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,666評(píng)論 2 327
  • 正文 我和宋清朗相戀三年沸伏,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了糕珊。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,809評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡毅糟,死狀恐怖红选,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情姆另,我是刑警寧澤喇肋,帶...
    沈念sama閱讀 34,504評(píng)論 4 334
  • 正文 年R本政府宣布,位于F島的核電站蜕青,受9級(jí)特大地震影響苟蹈,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜右核,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,150評(píng)論 3 317
  • 文/蒙蒙 一慧脱、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧贺喝,春花似錦菱鸥、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,882評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至染苛,卻和暖如春鹊漠,著一層夾襖步出監(jiān)牢的瞬間主到,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,121評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工躯概, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留登钥,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,628評(píng)論 2 362
  • 正文 我出身青樓娶靡,卻偏偏與公主長(zhǎng)得像牧牢,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子姿锭,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評(píng)論 2 351

推薦閱讀更多精彩內(nèi)容