在理解了我們需要解決的機器學(xué)習(xí)問題之后,我們可以思考一下我們需要收集什么數(shù)據(jù)以及我們可以用什么算法。本文我們會過一遍最流行的機器學(xué)習(xí)算法,大致了解哪些方法可用,很有幫助。 機器學(xué)習(xí)領(lǐng)域有很多算法,然后每種算法又有很多延伸,所以對于一個特定問題,如何確定一個正確的算法是很困難的。本文中我想給你們兩種方法來歸納在現(xiàn)實中會遇到的算法。 學(xué)習(xí)方式根據(jù)如何處理經(jīng)驗、環(huán)境或者任何我們稱之為輸入的數(shù)據(jù),算法分為不同種類。機器學(xué)習(xí)和人工智能課本通常先考慮算法可以適應(yīng)的學(xué)習(xí)方式。 這里只討論幾個主要的學(xué)習(xí)風(fēng)格或?qū)W習(xí)模型,并且有幾個基本的例子。這種分類或者組織的方法很好,因為它迫使你去思考輸入數(shù)據(jù)的角色和模型準(zhǔn)備的過程,然后選擇一個最適合你的問題的算法,從而得到最佳的結(jié)果。
當(dāng)整合數(shù)據(jù)模擬商業(yè)決策時,大多數(shù)會用到監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)的方法。當(dāng)下一個熱門話題是半監(jiān)督學(xué)習(xí),比如圖像分類問題,這中問題中有一個大的數(shù)據(jù)庫,但是只有一小部分圖片做了標(biāo)記。增強學(xué)習(xí)多半還是用在機器人控制和其他控制系統(tǒng)的開發(fā)上。 算法相似性算法基本上從功能或者形式上來分類。比如,基于樹的算法,神經(jīng)網(wǎng)絡(luò)算法。這是一個很有用的分類方式,但并不完美。因為有許多算法可以輕易地被分到兩類中去,比如說Learning Vector Quantization就同時是神經(jīng)網(wǎng)絡(luò)類的算法和基于實例的方法。正如機器學(xué)習(xí)算法本身沒有完美的模型一樣,算法的分類方法也沒有完美的。 在這一部分我列出了我認(rèn)為最直觀的方法歸類的算法。我并沒有窮盡算法或者分類方法,但是我想對于讓讀者有一個大致了解很有幫助。如果有你了解的我沒有列出來,歡迎留言分享?,F(xiàn)在我們開始! RegressionRegression(回歸分析)關(guān)心的是變量之間的關(guān)系。它應(yīng)用的是統(tǒng)計方法,幾個算法的例子包括:
Instance-based MethodsInstance based learning(基于實例的學(xué)習(xí))模擬了一個決策問題,所使用的實例或者例子是對模型非常重要的。這種方法對現(xiàn)有數(shù)據(jù)建立一個數(shù)據(jù)庫然后把新數(shù)據(jù)加進(jìn)去,再用一個相似性測量方法從而在數(shù)據(jù)庫里找出一個最優(yōu)匹配,進(jìn)行一個預(yù)測。由于這個原因,這種方法也被稱為勝者為王方法和基于內(nèi)存的方法?,F(xiàn)在關(guān)注的焦點在存儲數(shù)據(jù)的表現(xiàn)形式和相似性測量方法。
Regularization Methods這是一個對其他方法的延伸(通常是回歸方法),這個延伸對越簡單的模型越有利,并且更擅長歸納。我在這里列出它是因為它的流行和強大。
Decision Tree LearningDecision tree methods(決策樹方法)建立了一個根據(jù)數(shù)據(jù)中實際值決策的模型。決策樹用來解決歸納和回歸問題。
BayesianBayesian method(貝葉斯方法)是在解決歸類和回歸問題中應(yīng)用了貝葉斯定理的方法。
Kernel MethodsKernel Method(核方法)中最有名的是Support Vector Machines(支持向量機)。這種方法把輸入數(shù)據(jù)映射到更高維度上,是的一些歸類和回歸問題更容易建模。
Clustering MethodsClustering(聚類),本身就形容了問題和方法。聚類方法通常是由建模方式分類的。所有的聚類方法都是用統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)來組織數(shù)據(jù),使得每組內(nèi)有最多的共同點。
Association Rule LearningAssociation rule learning(聯(lián)合規(guī)則學(xué)習(xí))是用來對數(shù)據(jù)間提取規(guī)律的方法,通過這些規(guī)律可以發(fā)現(xiàn)巨量多維空間數(shù)據(jù)之間的聯(lián)系,而這些重要的聯(lián)系可以被組織拿來使用。
Artificial Neural NetworksArtificial Neural Networks(人工神經(jīng)網(wǎng)絡(luò))是從生物神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)和功能得到啟發(fā)的。它屬于模式匹配一類,經(jīng)常被用于回歸和分類問題,但是它存在上百個算法和變種組成。其中有一些是經(jīng)典流行的算法(我把深度學(xué)習(xí)拿出來單獨講):
Deep LearningDeep Learning(深度學(xué)習(xí))方法是人工神經(jīng)網(wǎng)絡(luò)的一種現(xiàn)代的更新。相比傳統(tǒng)的神經(jīng)網(wǎng)絡(luò),它有更多更復(fù)雜的網(wǎng)絡(luò)構(gòu)成,許多方法都是關(guān)心半監(jiān)督學(xué)習(xí),這種學(xué)習(xí)的問題中有很大的數(shù)據(jù),但是其中很少是被標(biāo)記的數(shù)據(jù)。
Dimensionality ReductionDimensionality Reduction(維度縮減),像聚類方法一樣,追求和利用數(shù)據(jù)中的統(tǒng)一的結(jié)構(gòu),但是它用更少的信息來對數(shù)據(jù)做歸納和形容。這對于對數(shù)據(jù)進(jìn)行可視化或者簡化數(shù)據(jù)很有用。
Ensemble MethodsEnsemble methods(組合方法)由許多小的模型組成,這些模型經(jīng)過獨立訓(xùn)練,做出獨立的結(jié)論,最后組成一個總的預(yù)測。很多研究集中在使用什么模型以及這些模型怎么被組合起來。這是一個非常強大且流行的技術(shù)。
這是一個用組合方法進(jìn)行擬合的例子(來自維基),每個消防法用灰色表示,最后合成的最終預(yù)測是紅色的。 其他資源這趟機器學(xué)習(xí)算法之旅意在讓你對有什么算法和關(guān)聯(lián)算法的一些工具給你一個總體了解。 下面是一些其他資源, 請不要覺得太多,了解越多算法對你越有好處,但是對某些算法有深層次的了解也會很有用。
我希望你覺得這趟旅行對你有意,如果有任何問題或建議,都?xì)g迎留言。 |
|