【CSDN 編者按】經(jīng)過(guò)數(shù)十年的演進(jìn),人工智能走出了從推理,到知識(shí),再到學(xué)習(xí)的發(fā)展路徑。尤其近十年由深度學(xué)習(xí)開啟神經(jīng)網(wǎng)絡(luò)的黃金新時(shí)代,機(jī)器學(xué)習(xí)成為解決人工智能面臨諸多難題的重要途徑。然而,這一涉及概率論、統(tǒng)計(jì)學(xué)、逼近論、凸分析、算法復(fù)雜度等理論的交叉學(xué)科讓很多開發(fā)者犯難,尤其是紛繁復(fù)雜的各類算法。本文作者結(jié)合自身多年的工作經(jīng)驗(yàn)和日常學(xué)習(xí),匯編了一份2023年度的機(jī)器學(xué)習(xí)算法大全。希望在新的一年,這些算法可以成為開發(fā)者的“書簽”,從而解決各類數(shù)據(jù)科學(xué)處理中面臨的難題。
在過(guò)去的幾年里,我根據(jù)自己的工作經(jīng)驗(yàn),與其他數(shù)據(jù)科學(xué)家的交流,包括在網(wǎng)上閱讀到的內(nèi)容,匯編了自認(rèn)為最重要的機(jī)器學(xué)習(xí)算法。
今年,我想在去年發(fā)表文章的基礎(chǔ)上提供各類別中更多的模型。希望提供一個(gè)工具和技術(shù)的寶庫(kù),你可以將其作為書簽,這樣就可以解決各種數(shù)據(jù)科學(xué)的問(wèn)題了。
說(shuō)到這里,讓我們深入了解以下六種最重要的機(jī)器學(xué)習(xí)算法類型。
解釋型算法
模式挖掘算法
集成算法
聚類算法
時(shí)間序列算法
相似度算法
解釋型算法
機(jī)器學(xué)習(xí)面臨的一大問(wèn)題是理解各種模型如何達(dá)到最終預(yù)測(cè),我們經(jīng)常知道是“什么”,但很難解釋“為什么”。
解釋型算法幫助我們識(shí)別那些對(duì)我們感興趣的結(jié)果有重要影響的變量。這些算法使我們能夠理解模型中變量之間的關(guān)系,而不僅僅是用模型來(lái)對(duì)結(jié)果進(jìn)行預(yù)測(cè)。
有幾種算法可以用來(lái)更好地理解某個(gè)模型的自變量和因變量之間的關(guān)系。

算法
線性/邏輯回歸:對(duì)因變量和一個(gè)或多個(gè)自變量之間的線性關(guān)系進(jìn)行建模的一種統(tǒng)計(jì)方法——可用于了解基于t-檢驗(yàn)和系數(shù)的變量之間的關(guān)系。
決策樹:一種機(jī)器學(xué)習(xí)算法,為決策及其可能的后果創(chuàng)建一個(gè)樹狀模型,有助于通過(guò)觀察分支進(jìn)行分割的規(guī)則進(jìn)而理解變量之間的關(guān)系。
主成分分析(PCA):一種降維技術(shù),將數(shù)據(jù)投射到一個(gè)較低的維度空間,同時(shí)保留盡可能多的差異。PCA可用于簡(jiǎn)化數(shù)據(jù)或確定重要特征。
局部可解釋模型——不可知論解釋(LIME):一種解釋機(jī)器學(xué)習(xí)模型預(yù)測(cè)的算法,使用線性回歸或決策樹等技術(shù)構(gòu)建一個(gè)更簡(jiǎn)單的模型,通過(guò)預(yù)測(cè)周圍情況局部近似地解釋模型。
沙普利加法解釋(SHAPLEY):一種解釋機(jī)器學(xué)習(xí)模型的預(yù)測(cè)算法,通過(guò)基于“邊際貢獻(xiàn)”的方法計(jì)算每個(gè)特征對(duì)預(yù)測(cè)的貢獻(xiàn)。在某些情況下,它比SHAP更準(zhǔn)確。
沙普利近似法(SHAP):一種通過(guò)預(yù)估每個(gè)特征在預(yù)測(cè)中的重要性來(lái)解釋機(jī)器學(xué)習(xí)模型預(yù)測(cè)的方法。SHAP使用一種叫做“合作博弈”的方法來(lái)近似Shapley值(Shapley value),通常比SHAPLEY更快。
模式挖掘算法
模式挖掘算法是一種數(shù)據(jù)挖掘技術(shù),用于識(shí)別數(shù)據(jù)集中的模式和關(guān)系。這些算法可用于實(shí)現(xiàn)各種目的,如識(shí)別零售業(yè)中的客戶購(gòu)買模式,了解網(wǎng)站/應(yīng)用程序的常見用戶行為序列,或在科學(xué)研究中尋找不同變量之間的關(guān)系。
模式挖掘算法通常通過(guò)分析大型數(shù)據(jù)集和尋找重復(fù)模式或變量之間的關(guān)聯(lián)展開工作。一旦這些模式被識(shí)別出來(lái),它們就可以用來(lái)預(yù)測(cè)未來(lái)的趨勢(shì)或結(jié)果,或者理解數(shù)據(jù)中的潛在關(guān)系。
算法
Apriori算法:一種用于在事務(wù)數(shù)據(jù)庫(kù)中查找頻繁項(xiàng)集的算法——高效且廣泛用于關(guān)聯(lián)規(guī)則挖掘任務(wù)。
遞歸神經(jīng)網(wǎng)絡(luò) (RNN):一種神經(jīng)網(wǎng)絡(luò)算法,旨在處理序列數(shù)據(jù),能夠獲取數(shù)據(jù)中的時(shí)間依賴性。
長(zhǎng)短期記憶網(wǎng)絡(luò) (LSTM):一種循環(huán)神經(jīng)網(wǎng)絡(luò),旨在可以更長(zhǎng)時(shí)間地記住信息。LSTM能夠獲取數(shù)據(jù)中的長(zhǎng)期依賴關(guān)系,通常用于語(yǔ)言翻譯和語(yǔ)言生成等任務(wù)中。
使用等價(jià)類的序列模式發(fā)現(xiàn)(SPADE):一種通過(guò)將某種意義上等價(jià)的項(xiàng)目組合在一起,從而查找序列數(shù)據(jù)中經(jīng)常出現(xiàn)的模式的方法。這種方法能夠高效處理大型數(shù)據(jù)集,但可能不適用于稀疏數(shù)據(jù)。
前綴投影的模式挖掘(PrefixSpan):一種通過(guò)構(gòu)建前綴樹并修剪不常見項(xiàng)目的方式查找序列數(shù)據(jù)中常見模式的算法。PrefixScan能夠高效處理大型數(shù)據(jù)集,但可能不適用于稀疏數(shù)據(jù)。

集成算法

作為機(jī)器學(xué)習(xí)技術(shù),集成算法結(jié)合多模型,從而做出比任何單獨(dú)模型更準(zhǔn)確的預(yù)測(cè)。集成算法能夠勝過(guò)傳統(tǒng)機(jī)器學(xué)習(xí)算法的原因有幾個(gè):
多樣性。通過(guò)結(jié)合多模型預(yù)測(cè),集成算法可以捕捉到數(shù)據(jù)中更廣泛的模式。
穩(wěn)健性。集成算法通常對(duì)數(shù)據(jù)中的噪音和異常值不那么敏感,這可以使預(yù)測(cè)更加穩(wěn)定和可靠。
減少過(guò)度擬合。通過(guò)對(duì)多模型的平均化預(yù)測(cè),集成算法可以減少單個(gè)模型對(duì)訓(xùn)練數(shù)據(jù)的過(guò)度擬合,從而提升對(duì)新數(shù)據(jù)的集成。
提高準(zhǔn)確性。集成算法已被證明在各種情況下都保持相較于傳統(tǒng)機(jī)器學(xué)習(xí)算法的優(yōu)勢(shì)。
算法
隨機(jī)森林:一種機(jī)器學(xué)習(xí)算法,它構(gòu)建了一個(gè)決策樹的集合,并根據(jù)樹的多數(shù)“投票”進(jìn)行預(yù)測(cè)。
極限梯度提升算法(XGBoost):一種梯度提升算法,使用決策樹作為其基礎(chǔ)模型,被稱為最強(qiáng)的機(jī)器學(xué)習(xí)預(yù)測(cè)算法之一。
LightGBM:另一種梯度提升算法,旨在比其他提升算法更快、更高效。
CatBoost:一種梯度提升算法,專門被設(shè)計(jì)處理分類變量。
聚類算法

聚類算法是一種無(wú)監(jiān)督的學(xué)習(xí)作業(yè),用于將數(shù)據(jù)分為“群組”。與目標(biāo)變量已知的監(jiān)督式學(xué)習(xí)相比,聚類算法中沒(méi)有目標(biāo)變量。
這項(xiàng)技術(shù)對(duì)于尋找數(shù)據(jù)中的自然模式和趨勢(shì)非常有用,并且經(jīng)常在數(shù)據(jù)分析階段使用,以獲得對(duì)數(shù)據(jù)的進(jìn)一步理解。此外,聚類算法可以用來(lái)根據(jù)各種變量將數(shù)據(jù)集劃分為不同的部分,一個(gè)常見應(yīng)用是在細(xì)分客戶或用戶的時(shí)候。
算法
K-Modes聚類:一種專門為分類數(shù)據(jù)設(shè)計(jì)的聚類算法,能夠很好地處理高維分類數(shù)據(jù),而且實(shí)現(xiàn)起來(lái)相對(duì)簡(jiǎn)單。
DBSCAN密度聚類:一種基于密度的聚類算法,能夠識(shí)別任意形狀的聚類。它對(duì)噪聲處理相對(duì)穩(wěn)健,能夠識(shí)別數(shù)據(jù)中的異常值。
譜系聚類法:一種聚類算法,使用相似性矩陣的特征向量來(lái)將數(shù)據(jù)點(diǎn)歸入聚類,能夠處理非線性可分離的數(shù)據(jù),并且相對(duì)高效。
時(shí)間序列算法

時(shí)間序列算法是用于分析與時(shí)間有關(guān)的數(shù)據(jù)的技術(shù)。這些算法考慮到一個(gè)系列中的數(shù)據(jù)點(diǎn)之間的時(shí)間依賴性,這在對(duì)未來(lái)價(jià)值進(jìn)行預(yù)測(cè)時(shí)尤其重要。
時(shí)間序列算法被用于各種商業(yè)應(yīng)用中,如預(yù)測(cè)產(chǎn)品需求、銷售,或分析客戶在一段時(shí)間內(nèi)的行為,它們還可以用來(lái)檢測(cè)數(shù)據(jù)中的異常情況或趨勢(shì)變化。
算法
Prophet時(shí)間序列模型:一個(gè)由Facebook開發(fā)的時(shí)間序列預(yù)測(cè)算法,設(shè)計(jì)直觀、易于使用。它的一些主要優(yōu)勢(shì)包括處理缺失數(shù)據(jù)和預(yù)測(cè)趨勢(shì)變化,對(duì)異常值具有魯棒性,可以快速擬合。
?自回歸綜合移動(dòng)平均法(ARIMA):?一種用于預(yù)測(cè)時(shí)間序列數(shù)據(jù)的統(tǒng)計(jì)方法,對(duì)數(shù)據(jù)和其滯后值之間的相關(guān)性進(jìn)行建模。ARIMA可以處理廣泛的時(shí)間序列數(shù)據(jù),但比其他的一些方法更難實(shí)現(xiàn)。
指數(shù)平滑法:一種預(yù)測(cè)時(shí)間序列數(shù)據(jù)的方法,使用過(guò)去數(shù)據(jù)的加權(quán)平均來(lái)進(jìn)行預(yù)測(cè)。指數(shù)平滑法的實(shí)現(xiàn)相對(duì)簡(jiǎn)單,可以用于廣泛的數(shù)據(jù),但可能不如更復(fù)雜的方法表現(xiàn)出色。
相似度算法

相似度算法被用來(lái)衡量一對(duì)記錄、節(jié)點(diǎn)、數(shù)據(jù)點(diǎn)或文本之間的相似性。這些算法可以基于兩個(gè)數(shù)據(jù)點(diǎn)之間的距離(如歐氏距離)或文本的相似性(如Levenshtein算法)。
這些算法有廣泛應(yīng)用,尤其在推薦方面特別有用。它們可以用來(lái)識(shí)別類似的項(xiàng)目或向用戶推薦相關(guān)內(nèi)容。
算法
歐氏距離:對(duì)歐氏空間中兩點(diǎn)之間直線距離的測(cè)量。歐氏距離計(jì)算簡(jiǎn)單,在機(jī)器學(xué)習(xí)中被廣泛使用,但在數(shù)據(jù)分布不均勻的情況下可能不是最佳選擇。
余弦相似度:基于兩個(gè)向量之間的角度來(lái)衡量它們的相似度。
Levenshtein算法:一種測(cè)量?jī)蓚€(gè)字符串之間距離的算法,基于將一個(gè)字符串轉(zhuǎn)化為另一個(gè)字符串所需的最小單字符編輯數(shù)(插入、刪除或替換)。Levenshtein算法通常用于拼寫檢查和字符串匹配的任務(wù)中。
Jaro-Winkler算法:一種測(cè)量?jī)蓚€(gè)字符串之間相似度的算法,基于匹配字符的數(shù)量和轉(zhuǎn)置的數(shù)量。它與Levenshtein算法類似,經(jīng)常被用于記錄鏈接和實(shí)體解析的任務(wù)中。
奇異值分解(SVD):一種矩陣分解方法,將一個(gè)矩陣分解為三個(gè)矩陣的乘積,在最先進(jìn)的推薦系統(tǒng)中,奇異值分解是重要的組成部分。
審核編輯 :李倩
-
算法
+關(guān)注
關(guān)注
23文章
4800瀏覽量
98515 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
67文章
8561瀏覽量
137208
原文標(biāo)題:值得收藏!2023 年,你應(yīng)該知道的所有機(jī)器學(xué)習(xí)算法~
文章出處:【微信號(hào):AI科技大本營(yíng),微信公眾號(hào):AI科技大本營(yíng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
為何你的機(jī)器人手臂“知覺(jué)”存在偏差?探秘力傳感器的奧秘
算法工程師需要具備哪些技能?
機(jī)器學(xué)習(xí)和深度學(xué)習(xí)中需避免的 7 個(gè)常見錯(cuò)誤與局限性
【社區(qū)之星】向愨——通過(guò)文檔來(lái)梳理自己的思路,讓自己思維更細(xì)致,更規(guī)范
【社區(qū)之星】歐小龍——保護(hù)你的好奇心:它是所有創(chuàng)造力的源泉
量子機(jī)器學(xué)習(xí)入門:三種數(shù)據(jù)編碼方法對(duì)比與應(yīng)用
AI 驅(qū)動(dòng)三維逆向:點(diǎn)云降噪算法工具與機(jī)器學(xué)習(xí)建模能力的前沿應(yīng)用
貿(mào)澤電子2025邊緣AI與機(jī)器學(xué)習(xí)技術(shù)創(chuàng)新論壇回顧(上)
FPGA在機(jī)器學(xué)習(xí)中的具體應(yīng)用
NVIDIA Isaac Lab可用環(huán)境與強(qiáng)化學(xué)習(xí)腳本使用指南
【嘉楠堪智K230開發(fā)板試用體驗(yàn)】K230機(jī)器視覺(jué)相關(guān)功能體驗(yàn)
【「# ROS 2智能機(jī)器人開發(fā)實(shí)踐」閱讀體驗(yàn)】視覺(jué)實(shí)現(xiàn)的基礎(chǔ)算法的應(yīng)用
【「# ROS 2智能機(jī)器人開發(fā)實(shí)踐」閱讀體驗(yàn)】機(jī)器人入門的引路書
機(jī)器人主控芯片平臺(tái)有哪些 機(jī)器人主控芯片一文搞懂
2023年你應(yīng)該知道的所有機(jī)器學(xué)習(xí)算法
評(píng)論