自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

人工智能 機(jī)器學(xué)習(xí) 算法
隨著我對(duì)機(jī)器學(xué)習(xí)的了解的增加,機(jī)器學(xué)習(xí)算法的數(shù)量也在增加! 本文將介紹數(shù)據(jù)科學(xué)界常用的機(jī)器學(xué)習(xí)算法。

隨著我對(duì)機(jī)器學(xué)習(xí)的了解的增加,機(jī)器學(xué)習(xí)算法的數(shù)量也在增加! 本文將介紹數(shù)據(jù)科學(xué)界常用的機(jī)器學(xué)習(xí)算法。

[[353567]]

請(qǐng)記住,我將比其他更多地詳細(xì)闡述某些算法,因?yàn)槿绻覍?duì)每種算法進(jìn)行了詳盡的解釋,那么本文將與本書一樣長(zhǎng)!我還將嘗試盡量減少本文中的數(shù)學(xué)運(yùn)算量,因?yàn)槲抑肋@對(duì)于那些數(shù)學(xué)上不精通的人來(lái)說(shuō)可能是令人生畏的。相反,我將嘗試對(duì)每個(gè)功能進(jìn)行簡(jiǎn)要概述,并指出一些關(guān)鍵功能。

考慮到這一點(diǎn),我將首先介紹一些更基本的算法,然后再介紹一些較新的算法,例如CatBoost,Gradient Boost和XGBoost。

線性回歸

線性回歸是用于對(duì)因變量和一個(gè)或多個(gè)自變量之間的關(guān)系進(jìn)行建模的最基本算法之一。簡(jiǎn)而言之,它涉及找到代表兩個(gè)或多個(gè)變量的"最佳擬合線"。

最佳擬合線是通過(guò)最小化點(diǎn)與最佳擬合線之間的平方距離來(lái)找到的-這稱為最小化殘差平方和。殘差等于預(yù)測(cè)值減去實(shí)際值。

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

> Image Created by Author

如果還沒(méi)有意義,請(qǐng)考慮上面的圖片。 將最適合的綠線與紅線進(jìn)行比較,請(qǐng)注意,綠線的垂直線(殘差)比紅線大得多。 這是有道理的,因?yàn)榫G線離這些點(diǎn)太遠(yuǎn)了,根本就不能很好地表示數(shù)據(jù)!

如果您想了解有關(guān)線性回歸背后的數(shù)學(xué)知識(shí)的更多信息,那么我將從Brilliant的解釋開始。

邏輯回歸

Logistic回歸與線性回歸相似,但用于建模離散結(jié)果數(shù)(通常為兩個(gè))的概率。 乍一看,邏輯回歸聽起來(lái)比線性回歸復(fù)雜得多,但實(shí)際上只需要多做一步。

首先,您使用與最適合線性回歸的直線方程式相似的方程式計(jì)算得分。

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

額外的步驟是將您先前在下面的S型函數(shù)中計(jì)算出的分?jǐn)?shù)提供給您,以便您獲得回報(bào)的可能性。然后可以將此概率轉(zhuǎn)換為二進(jìn)制輸出,即1或0。

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

為了找到初始方程的權(quán)重以計(jì)算分?jǐn)?shù),使用了諸如梯度下降或最大似然法之類的方法。 由于它不在本文的討論范圍之內(nèi),所以我將不做進(jìn)一步的詳細(xì)介紹,但是現(xiàn)在您知道了它的工作原理!

K最近鄰居

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

> Image created by author

K近鄰是一個(gè)簡(jiǎn)單的想法。首先,從已分類的數(shù)據(jù)(即紅色和藍(lán)色數(shù)據(jù)點(diǎn))開始。然后,當(dāng)您添加新數(shù)據(jù)點(diǎn)時(shí),可以通過(guò)查看k個(gè)最近的分類點(diǎn)對(duì)其進(jìn)行分類。得票最多的哪個(gè)類別決定將新點(diǎn)分類為什么。

在這種情況下,如果將k設(shè)置為1,則可以看到與灰色樣本最接近的第一個(gè)點(diǎn)是紅色數(shù)據(jù)點(diǎn)。 因此,該點(diǎn)將被分類為紅色。

要記住的一點(diǎn)是,如果k的值設(shè)置得太低,可能會(huì)導(dǎo)致異常值。另一方面,如果k的值設(shè)置得太高,那么它可能會(huì)忽略只有幾個(gè)樣本的類。

樸素貝葉斯

樸素貝葉斯是一種分類算法。 這意味著當(dāng)輸出變量為離散變量時(shí),將使用樸素貝葉斯。

樸素貝葉斯(Naive Bayes)似乎是一個(gè)令人生畏的算法,因?yàn)樗枰邆錀l件概率和貝葉斯定理的初步數(shù)學(xué)知識(shí),但這是一個(gè)非常簡(jiǎn)單且"樸素"的概念,我將盡力舉例說(shuō)明:

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

> Image Created by Author

假設(shè)我們輸入了有關(guān)天氣特征(外觀,溫度,濕度,大風(fēng))以及是否打過(guò)高爾夫球的數(shù)據(jù)(即最后一欄)。

樸素貝葉斯本質(zhì)上所做的是比較每個(gè)輸入變量與輸出變量中類別之間的比例。可以在下表中顯示。

 

 

> Image Created by Author

為了幫助您閱讀本示例,在溫度部分中,打高爾夫球的9天中有2天很熱(即是)。

用數(shù)學(xué)術(shù)語(yǔ),您可以將其表示為打高爾夫球時(shí)很熱的概率。數(shù)學(xué)符號(hào)為P(hot | yes)。這就是條件概率,對(duì)于理解我將要說(shuō)的其余內(nèi)容至關(guān)重要。

掌握了這些信息后,您就可以根據(jù)天氣特征的任意組合預(yù)測(cè)是否要打高爾夫球。

想象一下,我們具有以下特征的新一天:

  • 展望:晴天
  • 溫度:溫和
  • 濕度:正常
  • 大風(fēng):假

首先,我們將計(jì)算在給定X,P(y | X)的情況下打高爾夫球的概率,然后計(jì)算在給定X,P(no | X)的情況下您打高爾夫球的概率。

使用上面的圖表,我們可以獲得以下信息:

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

現(xiàn)在我們可以簡(jiǎn)單地將此信息輸入以下公式:

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

同樣,您將為P(no | X)完成相同的步驟順序。

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

由于P(yes | X)> P(no | X),因此您可以預(yù)測(cè)此人會(huì)打高爾夫球,因?yàn)榍熬扒缋?,溫度適中,濕度正常且沒(méi)有大風(fēng)。

這是樸素貝葉斯的精髓!

支持向量機(jī)

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

> Image created by Author

支持向量機(jī)是一種監(jiān)督分類技術(shù),實(shí)際上可能會(huì)變得非常復(fù)雜,但在最基本的級(jí)別上卻非常直觀。 為了本文的方便,我們將其保持在較高水平。

假設(shè)有兩類數(shù)據(jù)。 支持向量機(jī)將在兩類數(shù)據(jù)之間找到一個(gè)超平面或邊界,以使兩類數(shù)據(jù)之間的余量最大化(請(qǐng)參見上文)。 有許多平面可以將兩個(gè)類別分開,但是只有一個(gè)平面可以使兩個(gè)類別之間的邊距或距離最大化。

如果您想了解支持向量機(jī)背后的數(shù)學(xué)知識(shí),請(qǐng)查看此系列文章。

決策樹

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

> Image created by author

隨機(jī)森林

在理解隨機(jī)森林之前,您需要了解以下兩個(gè)術(shù)語(yǔ):

  • 集成學(xué)習(xí)是一種結(jié)合使用多種學(xué)習(xí)算法的方法。這樣做的目的是,與單獨(dú)使用單個(gè)算法相比,它可以實(shí)現(xiàn)更高的預(yù)測(cè)性能。
  • 自舉采樣是一種重采樣方法,該方法使用隨機(jī)采樣進(jìn)行替換。 聽起來(lái)很復(fù)雜,但是當(dāng)我說(shuō)它非常簡(jiǎn)單時(shí),請(qǐng)相信我-在此處了解更多信息。
  • 當(dāng)您使用自舉數(shù)據(jù)集的匯總來(lái)做決定時(shí),請(qǐng)進(jìn)行裝袋–我在該主題上撰寫了一篇文章,因此,如果這樣做不完全有意義,請(qǐng)隨時(shí)在此處查看。

現(xiàn)在您已經(jīng)了解了這些術(shù)語(yǔ),讓我們深入研究它。

隨機(jī)森林是一種基于決策樹的整體學(xué)習(xí)技術(shù)。 隨機(jī)森林涉及使用原始數(shù)據(jù)的自舉數(shù)據(jù)集創(chuàng)建多個(gè)決策樹,并在決策樹的每個(gè)步驟中隨機(jī)選擇變量的子集。 然后,模型選擇每個(gè)決策樹的所有預(yù)測(cè)的模式(裝袋)。 這有什么意義? 通過(guò)依靠"多數(shù)勝利"模型,它降低了單個(gè)樹出錯(cuò)的風(fēng)險(xiǎn)。

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

> Image Created by author

例如,如果我們創(chuàng)建一個(gè)決策樹,第三個(gè)決策樹,它將預(yù)測(cè)0。但是,如果我們依靠所有4個(gè)決策樹的模式,則預(yù)測(cè)值為1。這就是隨機(jī)森林的力量!

AdaBoost

AdaBoost或Adaptive Boost也是一種集成算法,它利用打包和增強(qiáng)方法來(lái)開發(fā)增強(qiáng)的預(yù)測(cè)器。

AdaBoost與Random Forests的相似之處在于,預(yù)測(cè)來(lái)自許多決策樹。但是,AdaBoost的獨(dú)特之處在于三個(gè)主要區(qū)別:

 

2021年碼農(nóng)應(yīng)該了解的所有機(jī)器學(xué)習(xí)算法

 

> Example of a stump

  • 首先,AdaBoost創(chuàng)建了一個(gè)由樹樁而非樹木組成的森林。樹樁是僅由一個(gè)節(jié)點(diǎn)和兩片葉子組成的樹(如上圖所示)。
  • 其次,在最終決策(最終預(yù)測(cè))中未對(duì)創(chuàng)建的樹樁加權(quán)平均。產(chǎn)生更多錯(cuò)誤的樹樁在最終決定中將沒(méi)有發(fā)言權(quán)。
  • 最后,樹樁的制作順序很重要,因?yàn)槊總€(gè)樹樁的目的都是減少先前樹樁造成的錯(cuò)誤。

從本質(zhì)上講,AdaBoost采取了一種更具迭代性的方法,即從以前的樹樁所犯的錯(cuò)誤中尋求迭代地改進(jìn)。

如果您想了解有關(guān)AdaBoost背后的基礎(chǔ)數(shù)學(xué)的更多信息,請(qǐng)查看我的文章" 5分鐘內(nèi)AdaBoost的數(shù)學(xué)解釋"。

梯度提升

漸變?cè)鰪?qiáng)也是一種集成算法,使用增強(qiáng)方法來(lái)開發(fā)增強(qiáng)型預(yù)測(cè)因子也就不足為奇了。在許多方面,Gradient Boost與AdaBoost相似,但有兩個(gè)主要區(qū)別:

  • 與AdaBoost可以構(gòu)建樹樁不同,Gradient Boost可以構(gòu)建通常具有8–32片葉子的樹木。
  • 梯度增強(qiáng)將增強(qiáng)問(wèn)題視為優(yōu)化問(wèn)題,它使用損失函數(shù)并嘗試將誤差最小化。 這就是為什么它受梯度下降的啟發(fā)而稱為"梯度增強(qiáng)"的原因。
  • 最后,這些樹用于預(yù)測(cè)樣本的殘差(預(yù)測(cè)值減去實(shí)際值)。

盡管最后一點(diǎn)可能令人困惑,但您需要知道的是,Gradient Boost首先要構(gòu)建一棵樹以嘗試擬合數(shù)據(jù),而隨后構(gòu)建的樹則旨在減少殘差(錯(cuò)誤)。它通過(guò)專注于現(xiàn)有學(xué)習(xí)者表現(xiàn)較差的領(lǐng)域來(lái)做到這一點(diǎn),類似于AdaBoost。

XGBoost

XGBoost是當(dāng)今最流行和使用最廣泛的算法之一,因?yàn)樗侨绱藦?qiáng)大。它類似于Gradient Boost,但具有一些使其更強(qiáng)大的額外功能,包括……

  • 葉節(jié)點(diǎn)按比例縮小(修剪)—用于改善模型的泛化
  • 牛頓加速-提供比梯度下降更直接的最小值,使其更快
  • 額外的隨機(jī)化參數(shù)-減少樹之間的相關(guān)性,最終提高整體強(qiáng)度
  • 樹木的獨(dú)特懲罰

我強(qiáng)烈建議您觀看StatQuest的視頻,以更詳細(xì)地了解算法的工作原理。

LightGBM

如果您認(rèn)為XGBoost是目前最好的算法,請(qǐng)?jiān)倏紤]一下。 LightGBM是另一種增強(qiáng)算法,已顯示出比XGBoost更快甚至更高的準(zhǔn)確性。

LightGBM的與眾不同之處在于,它使用一種稱為基于梯度的單面采樣(GOSS)的獨(dú)特技術(shù)來(lái)過(guò)濾出數(shù)據(jù)實(shí)例以查找分割值。這與XGBoost不同,后者使用預(yù)排序和基于直方圖的算法來(lái)找到最佳分割。

在這里閱讀更多關(guān)于Light GBM vs XGBoost的信息!

CatBoost

CatBoost是基于梯度下降的另一種算法,具有一些細(xì)微的差異,使其獨(dú)特:

  • CatBoost實(shí)現(xiàn)對(duì)稱樹,這有助于減少預(yù)測(cè)時(shí)間,并且默認(rèn)情況下樹深度也較淺(六個(gè))
  • CatBoost利用類似于XGBoost具有隨機(jī)參數(shù)的方式的隨機(jī)排列
  • 但是,與XGBoost不同,CatBoost使用有序增強(qiáng)和響應(yīng)編碼等概念更優(yōu)雅地處理分類功能

總體而言,使CatBoost如此強(qiáng)大的原因是其低延遲要求,這意味著它比XGBoost快大約八倍。

如果您想更詳細(xì)地了解CatBoost,請(qǐng)查閱本文。

謝謝閱讀!

如果您成功了,那就恭喜!現(xiàn)在,您應(yīng)該對(duì)所有不同的機(jī)器學(xué)習(xí)算法有了更好的了解。

如果您很難理解最后幾種算法,不要灰心–它們不僅更復(fù)雜,而且相對(duì)較新!因此,請(qǐng)繼續(xù)關(guān)注更多資源,這些資源將更深入地應(yīng)用于這些算法。

責(zé)任編輯:華軒 來(lái)源: 今日頭條
相關(guān)推薦

2021-01-01 14:59:51

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

2020-08-14 12:17:48

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

2013-09-22 10:34:08

碼農(nóng)機(jī)器學(xué)習(xí)算法

2019-03-26 11:15:34

AI機(jī)器學(xué)習(xí)人工智能

2012-11-21 10:24:31

創(chuàng)業(yè)碼農(nóng)程序員

2017-08-25 14:05:01

機(jī)器學(xué)習(xí)算法模型

2019-02-14 08:10:22

機(jī)器學(xué)習(xí)API程序

2020-12-03 08:01:42

機(jī)器學(xué)習(xí)人工智能AI

2020-12-08 13:42:41

機(jī)器學(xué)習(xí)人工智能

2021-02-14 00:39:57

機(jī)器學(xué)習(xí)技術(shù)人工智能

2020-05-28 08:40:10

人工智能

2023-11-02 08:32:11

機(jī)器學(xué)習(xí)人工智能

2020-11-11 09:42:34

軟件開發(fā) 技術(shù)

2021-08-17 08:51:38

機(jī)器學(xué)習(xí)庫(kù)人工智能

2022-11-30 14:57:39

產(chǎn)業(yè)互聯(lián)網(wǎng)

2017-10-24 14:21:30

機(jī)器學(xué)習(xí)人工智能算法

2018-07-02 08:57:27

碼農(nóng)業(yè)務(wù)程序員

2021-03-06 13:34:20

網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊漏洞

2013-11-14 13:58:06

硅谷碼農(nóng)

2017-10-18 11:32:44

機(jī)器學(xué)習(xí)無(wú)監(jiān)督學(xué)習(xí)監(jiān)督學(xué)習(xí)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)