十大機(jī)器學(xué)習(xí)算法

https://zhuanlan.zhihu.com/p/33794257

<header class="Post-Header" style="overflow: hidden; width: 690px; margin: 0px auto;">

Machine Learning: 十大機(jī)器學(xué)習(xí)算法

RiboseYim

Engineer & Writer

?關(guān)注他

40 人贊同了該文章

</header>

  • 機(jī)器學(xué)習(xí)算法分類:監(jiān)督學(xué)習(xí)尝丐、無監(jiān)督學(xué)習(xí)邢享、強(qiáng)化學(xué)習(xí)
  • 基本的機(jī)器學(xué)習(xí)算法:線性回歸筝尾、支持向量機(jī)(SVM)徐钠、最近鄰居(KNN)涡扼、邏輯回歸、決策樹壁公、k平均、隨機(jī)森林焚鲜、樸素貝葉斯、降維放前、梯度增強(qiáng)
  • 公式忿磅、圖示、案例

機(jī)器學(xué)習(xí)算法大致可以分為三類:

  • 監(jiān)督學(xué)習(xí)算法 (Supervised Algorithms):在監(jiān)督學(xué)習(xí)訓(xùn)練過程中凭语,可以由訓(xùn)練數(shù)據(jù)集學(xué)到或建立一個(gè)模式(函數(shù) / learning model)葱她,并依此模式推測(cè)新的實(shí)例。該算法要求特定的輸入/輸出叽粹,首先需要決定使用哪種數(shù)據(jù)作為范例览效。例如,文字識(shí)別應(yīng)用中一個(gè)手寫的字符虫几,或一行手寫文字。主要算法包括神經(jīng)網(wǎng)絡(luò)挽拔、支持向量機(jī)辆脸、最近鄰居法、樸素貝葉斯法螃诅、決策樹等啡氢。
  • 無監(jiān)督學(xué)習(xí)算法 (Unsupervised Algorithms):這類算法沒有特定的目標(biāo)輸出,算法將數(shù)據(jù)集分為不同的組术裸。
  • 強(qiáng)化學(xué)習(xí)算法 (Reinforcement Algorithms):強(qiáng)化學(xué)習(xí)普適性強(qiáng)倘是,主要基于決策進(jìn)行訓(xùn)練,算法根據(jù)輸出結(jié)果(決策)的成功或錯(cuò)誤來訓(xùn)練自己袭艺,通過大量經(jīng)驗(yàn)訓(xùn)練優(yōu)化后的算法將能夠給出較好的預(yù)測(cè)搀崭。類似有機(jī)體在環(huán)境給予的獎(jiǎng)勵(lì)或懲罰的刺激下,逐步形成對(duì)刺激的預(yù)期,產(chǎn)生能獲得最大利益的習(xí)慣性行為瘤睹。在運(yùn)籌學(xué)和控制論的語境下升敲,強(qiáng)化學(xué)習(xí)被稱作“近似動(dòng)態(tài)規(guī)劃”(approximate dynamic programming,ADP)轰传。

基本的機(jī)器學(xué)習(xí)算法:

  • 線性回歸算法 Linear Regression
  • 支持向量機(jī)算法 (Support Vector Machine,SVM)
  • 最近鄰居/k-近鄰算法 (K-Nearest Neighbors,KNN)
  • 邏輯回歸算法 Logistic Regression
  • 決策樹算法 Decision Tree
  • k-平均算法 K-Means
  • 隨機(jī)森林算法 Random Forest
  • 樸素貝葉斯算法 Naive Bayes
  • 降維算法 Dimensional Reduction
  • 梯度增強(qiáng)算法 Gradient Boosting

1. 線性回歸算法 Linear Regression

回歸分析(Regression Analysis)是統(tǒng)計(jì)學(xué)的數(shù)據(jù)分析方法驴党,目的在于了解兩個(gè)或多個(gè)變量間是否相關(guān)、相關(guān)方向與強(qiáng)度获茬,并建立數(shù)學(xué)模型以便觀察特定變量來預(yù)測(cè)其它變量的變化情況港庄。

線性回歸算法(Linear Regression)的建模過程就是使用數(shù)據(jù)點(diǎn)來尋找最佳擬合線。公式恕曲,y = mx + c攘轩,其中 y 是因變量,x 是自變量码俩,利用給定的數(shù)據(jù)集求 m 和 c 的值度帮。
線性回歸又分為兩種類型,即
簡(jiǎn)單線性回歸(simple linear regression)稿存,只有 1 個(gè)自變量笨篷;多變量回歸(multiple regression)*,至少兩組以上自變量瓣履。

image

下面是一個(gè)線性回歸示例:基于 Python scikit-learn 工具包描述率翅。

image

2. 支持向量機(jī)算法(Support Vector Machine,SVM)

支持向量機(jī)/網(wǎng)絡(luò)算法(SVM)屬于分類型算法。SVM模型將實(shí)例表示為空間中的點(diǎn)袖迎,將使用一條直線分隔數(shù)據(jù)點(diǎn)冕臭。需要注意的是,支持向量機(jī)需要對(duì)輸入數(shù)據(jù)進(jìn)行完全標(biāo)記燕锥,僅直接適用于兩類任務(wù)辜贵,應(yīng)用將多類任務(wù)需要減少到幾個(gè)二元問題。

image
image
image

3. 最近鄰居/k-近鄰算法 (K-Nearest Neighbors,KNN)

KNN算法是一種基于實(shí)例的學(xué)習(xí)归形,或者是局部近似和將所有計(jì)算推遲到分類之后的惰性學(xué)習(xí)托慨。用最近的鄰居(k)來預(yù)測(cè)未知數(shù)據(jù)點(diǎn)。k 值是預(yù)測(cè)精度的一個(gè)關(guān)鍵因素暇榴,無論是分類還是回歸厚棵,衡量鄰居的權(quán)重都非常有用,較近鄰居的權(quán)重比較遠(yuǎn)鄰居的權(quán)重大蔼紧。

KNN 算法的缺點(diǎn)是對(duì)數(shù)據(jù)的局部結(jié)構(gòu)非常敏感婆硬。計(jì)算量大,需要對(duì)數(shù)據(jù)進(jìn)行規(guī)范化處理奸例,使每個(gè)數(shù)據(jù)點(diǎn)都在相同的范圍彬犯。

image
image
image

延伸:KNN 的一個(gè)缺點(diǎn)是依賴于整個(gè)訓(xùn)練數(shù)據(jù)集,學(xué)習(xí)向量量化(Learning Vector Quantization,LVQ)是一種監(jiān)督學(xué)習(xí)的人神經(jīng)網(wǎng)絡(luò)算法躏嚎,允許你選擇訓(xùn)練實(shí)例蜜自。LVQ 由數(shù)據(jù)驅(qū)動(dòng),搜索距離它最近的兩個(gè)神經(jīng)元卢佣,對(duì)于同類神經(jīng)元采取拉攏重荠,異類神經(jīng)元采取排斥,最終得到數(shù)據(jù)的分布模式虚茶。如果基于 KNN 可以獲得較好的數(shù)據(jù)集分類效果戈鲁,利用 LVQ 可以減少存儲(chǔ)訓(xùn)練數(shù)據(jù)集存儲(chǔ)規(guī)模。典型的學(xué)習(xí)矢量量化算法有LVQ1嘹叫、LVQ2和LVQ3婆殿,尤以LVQ2的應(yīng)用最為廣泛。

image

4. 邏輯回歸算法 Logistic Regression

邏輯回歸算法(Logistic Regression)一般用于需要明確輸出的場(chǎng)景罩扇,如某些事件的發(fā)生(預(yù)測(cè)是否會(huì)發(fā)生降雨)婆芦。通常,邏輯回歸使用某種函數(shù)將概率值壓縮到某一特定范圍喂饥。
例如消约,Sigmoid 函數(shù)(S 函數(shù))是一種具有 S 形曲線、用于二元分類的函數(shù)员帮。它將發(fā)生某事件的概率值轉(zhuǎn)換為 0, 1 的范圍表示或粮。

Y = E ^(b0+b1 x)/(1 + E ^(b0+b1 x ))

以上是一個(gè)簡(jiǎn)單的邏輯回歸方程,B0捞高,B1是常數(shù)氯材。這些常數(shù)值將被計(jì)算獲得,以確保預(yù)測(cè)值和實(shí)際值之間的誤差最小硝岗。

image
image

5. 決策樹算法 Decision Tree

決策樹(Decision tree)是一種特殊的樹結(jié)構(gòu)氢哮,由一個(gè)決策圖和可能的結(jié)果(例如成本和風(fēng)險(xiǎn))組成,用來輔助決策辈讶。機(jī)器學(xué)習(xí)中命浴,決策樹是一個(gè)預(yù)測(cè)模型,樹中每個(gè)節(jié)點(diǎn)表示某個(gè)對(duì)象贱除,而每個(gè)分叉路徑則代表某個(gè)可能的屬性值,而每個(gè)葉節(jié)點(diǎn)則對(duì)應(yīng)從根節(jié)點(diǎn)到該葉節(jié)點(diǎn)所經(jīng)歷的路徑所表示的對(duì)象的值媳溺。決策樹僅有單一輸出月幌,通常該算法用于解決分類問題。

一個(gè)決策樹包含三種類型的節(jié)點(diǎn):

  • 決策節(jié)點(diǎn):通常用矩形框來表示
  • 機(jī)會(huì)節(jié)點(diǎn):通常用圓圈來表示
  • 終結(jié)點(diǎn):通常用三角形來表示

簡(jiǎn)單決策樹算法案例悬蔽,確定人群中誰喜歡使用信用卡扯躺。考慮人群的年齡和婚姻狀況,如果年齡在30歲或是已婚录语,人們更傾向于選擇信用卡倍啥,反之則更少。
通過確定合適的屬性來定義更多的類別澎埠,可以進(jìn)一步擴(kuò)展此決策樹虽缕。在這個(gè)例子中,如果一個(gè)人結(jié)婚了蒲稳,他超過30歲氮趋,他們更有可能擁有信用卡(100% 偏好)。測(cè)試數(shù)據(jù)用于生成決策樹江耀。

image
image

注意:對(duì)于那些各類別樣本數(shù)量不一致的數(shù)據(jù)剩胁,在決策樹當(dāng)中信息增益的結(jié)果偏向于那些具有更多數(shù)值的特征。

6. k-平均算法 K-Means

k-平均算法(K-Means)是一種無監(jiān)督學(xué)習(xí)算法祥国,為聚類問題提供了一種解決方案昵观。
K-Means 算法把 n 個(gè)點(diǎn)(可以是樣本的一次觀察或一個(gè)實(shí)例)劃分到 k 個(gè)集群(cluster),使得每個(gè)點(diǎn)都屬于離他最近的均值(即聚類中心舌稀,centroid)對(duì)應(yīng)的集群啊犬。重復(fù)上述過程一直持續(xù)到重心不改變。

image

7. 隨機(jī)森林算法 Random Forest

隨機(jī)森林算法(Random Forest)的名稱由 1995 年由貝爾實(shí)驗(yàn)室提出的random decision forests 而來扩借,正如它的名字所說的那樣椒惨,隨機(jī)森林可以看作一個(gè)決策樹的集合。
隨機(jī)森林中每棵決策樹估計(jì)一個(gè)分類潮罪,這個(gè)過程稱為“投票(vote)”康谆。理想情況下,我們根據(jù)每棵決策樹的每個(gè)投票嫉到,選擇最多投票的分類沃暗。

image
image

8. 樸素貝葉斯算法 Naive Bayes

樸素貝葉斯算法(Naive Bayes)基于概率論的貝葉斯定理,應(yīng)用非常廣泛何恶,從文本分類孽锥、垃圾郵件過濾器、醫(yī)療診斷等等细层。樸素貝葉斯適用于特征之間的相互獨(dú)立的場(chǎng)景惜辑,例如利用花瓣的長(zhǎng)度和寬度來預(yù)測(cè)花的類型∫呤辏“樸素”的內(nèi)涵可以理解為特征和特征之間獨(dú)立性強(qiáng)盛撑。

與樸素貝葉斯算法密切相關(guān)的一個(gè)概念是最大似然估計(jì)(Maximum likelihood estimation),歷史上大部分的最大似然估計(jì)理論也都是在貝葉斯統(tǒng)計(jì)中得到大發(fā)展捧搞。例如抵卫,建立人口身高模型狮荔,很難有人力與物力去統(tǒng)計(jì)全國每個(gè)人的身高,但是可以通過采樣介粘,獲取部分人的身高殖氏,然后通過最大似然估計(jì)來獲取分布的均值與方差。

Naive Bayes is called naive because it assumes that each input variable is independent.

image

9. 降維算法 Dimensional Reduction

在機(jī)器學(xué)習(xí)和統(tǒng)計(jì)學(xué)領(lǐng)域姻采,降維是指在限定條件下雅采,降低隨機(jī)變量個(gè)數(shù),得到一組“不相關(guān)”主變量的過程偎谁,并可進(jìn)一步細(xì)分為特征選擇和特征提取兩大方法总滩。

一些數(shù)據(jù)集可能包含許多難以處理的變量。特別是資源豐富的情況下巡雨,系統(tǒng)中的數(shù)據(jù)將非常詳細(xì)闰渔。在這種情況下,數(shù)據(jù)集可能包含數(shù)千個(gè)變量铐望,其中大多數(shù)變量也可能是不必要的冈涧。在這種情況下,幾乎不可能確定對(duì)我們的預(yù)測(cè)影響最大的變量正蛙。此時(shí)督弓,我們需要使用降維算法,降維的過程中也可能需要用到其他算法乒验,例如借用隨機(jī)森林愚隧,決策樹來識(shí)別最重要的變量。

10. 梯度增強(qiáng)算法 Gradient Boosting

梯度增強(qiáng)算法(Gradient Boosting)使用多個(gè)弱算法來創(chuàng)建更強(qiáng)大的精確算法锻全。它與使用單個(gè)估計(jì)量不同狂塘,而是使用多個(gè)估計(jì)量創(chuàng)建一個(gè)更穩(wěn)定和更健壯的算法。梯度增強(qiáng)算法有幾種:

  • XGBoost? — 使用線性和樹算法
  • LightGBM? — 只使用基于樹的算法
    梯度增強(qiáng)算法的特點(diǎn)是精度較高鳄厌。此外荞胡,LightGBM 算法具有令人難以置信的高性能。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末了嚎,一起剝皮案震驚了整個(gè)濱河市泪漂,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌歪泳,老刑警劉巖萝勤,帶你破解...
    沈念sama閱讀 222,378評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異呐伞,居然都是意外死亡纵刘,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,970評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門荸哟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來假哎,“玉大人,你說我怎么就攤上這事鞍历《婺ǎ” “怎么了?”我有些...
    開封第一講書人閱讀 168,983評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵劣砍,是天一觀的道長(zhǎng)惧蛹。 經(jīng)常有香客問我,道長(zhǎng)刑枝,這世上最難降的妖魔是什么香嗓? 我笑而不...
    開封第一講書人閱讀 59,938評(píng)論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮装畅,結(jié)果婚禮上靠娱,老公的妹妹穿的比我還像新娘。我一直安慰自己掠兄,他們只是感情好像云,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,955評(píng)論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蚂夕,像睡著了一般迅诬。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上婿牍,一...
    開封第一講書人閱讀 52,549評(píng)論 1 312
  • 那天侈贷,我揣著相機(jī)與錄音,去河邊找鬼等脂。 笑死俏蛮,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的慎菲。 我是一名探鬼主播嫁蛇,決...
    沈念sama閱讀 41,063評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼露该!你這毒婦竟也來了睬棚?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,991評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤解幼,失蹤者是張志新(化名)和其女友劉穎抑党,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體撵摆,經(jīng)...
    沈念sama閱讀 46,522評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡底靠,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,604評(píng)論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了特铝。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片暑中。...
    茶點(diǎn)故事閱讀 40,742評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡壹瘟,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出鳄逾,到底是詐尸還是另有隱情稻轨,我是刑警寧澤,帶...
    沈念sama閱讀 36,413評(píng)論 5 351
  • 正文 年R本政府宣布雕凹,位于F島的核電站殴俱,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏枚抵。R本人自食惡果不足惜线欲,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,094評(píng)論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望汽摹。 院中可真熱鬧李丰,春花似錦、人聲如沸竖慧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,572評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽圾旨。三九已至踱讨,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間砍的,已是汗流浹背痹筛。 一陣腳步聲響...
    開封第一講書人閱讀 33,671評(píng)論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留廓鞠,地道東北人帚稠。 一個(gè)月前我還...
    沈念sama閱讀 49,159評(píng)論 3 378
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像床佳,于是被迫代替她去往敵國和親滋早。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,747評(píng)論 2 361

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

  • 機(jī)器學(xué)習(xí)算法分類:監(jiān)督學(xué)習(xí)砌们、無監(jiān)督學(xué)習(xí)杆麸、強(qiáng)化學(xué)習(xí) 基本的機(jī)器學(xué)習(xí)算法:線性回歸、支持向量機(jī)(SVM)浪感、最近鄰居(K...
    鄭佳露閱讀 575評(píng)論 0 1
  • 機(jī)器學(xué)習(xí)算法分類:監(jiān)督學(xué)習(xí)昔头、無監(jiān)督學(xué)習(xí)、強(qiáng)化學(xué)習(xí) 基本的機(jī)器學(xué)習(xí)算法:線性回歸影兽、支持向量機(jī)(SVM)揭斧、最近鄰居(K...
    RiboseYim閱讀 14,277評(píng)論 0 22
  • 本文列出了數(shù)據(jù)科學(xué)家使用的十大機(jī)器學(xué)習(xí)算法,并且介紹了這十大算法的特點(diǎn)峻堰,供各位機(jī)器學(xué)習(xí)的新人們更好地理解和應(yīng)用讹开。 ...
    煎蛋俠_閱讀 522評(píng)論 0 2
  • 在機(jī)器學(xué)習(xí)領(lǐng)域盅视,有種說法叫做“世上沒有免費(fèi)的午餐”,簡(jiǎn)而言之萧吠,它是指沒有任何一種算法能在每個(gè)問題上都能有最好的效果...
    andyham閱讀 2,312評(píng)論 0 2
  • 不知為什么纸型,隨著年歲的增長(zhǎng),慢慢開始感覺到生活的不易梅忌。身邊雖然沒有碰到骨肉相殘狰腌,忘恩負(fù)義的例子。但是在生活...
    緣分_986c閱讀 344評(píng)論 2 2