想了解機器學(xué)習(xí)?你需要知道的十個基礎(chǔ)算法關(guān)于機器學(xué)習(xí),,你需要知道的十個基礎(chǔ)算法毫無疑問,,作為人工智能的子領(lǐng)域—機器學(xué)習(xí)在過去的幾年中越來越受歡迎。由于大數(shù)據(jù)是目前科技行業(yè)最熱門的趨勢,,基于大量的數(shù)據(jù)機器學(xué)習(xí)在提前預(yù)測和做出建議方面有巨大的潛力。一些有關(guān)機器學(xué)習(xí)常見的例子有:Netflix基于你以前看過的電影再給你做出影片的推薦,,或者亞馬遜根據(jù)你以前買過的書籍再給你進行圖書推薦,。 如果想了解更多有關(guān)機器學(xué)習(xí)的知識,要從哪里開始呢,?作者第一次入門是在哥本哈根海外交流時選了一門有關(guān)人工智能的課程,。這門課程的講師是丹麥科技大學(xué)(Technical University of Denmark)的應(yīng)用數(shù)學(xué)以及計算機科學(xué)全職教授,他的研究領(lǐng)域主要是邏輯學(xué)和人工智能方面,,主要研究內(nèi)容是使用邏輯來對計算機類人行為(比如計劃,、推理以及問題解決等)進行建模。這門課包括理論,、核心概念探討以及親自動手解決問題,。作者所使用的教材是人工智能(AI)領(lǐng)域的經(jīng)典教材之一:Peter Norvig's Artificial Intelligence?—?A Modern Approach(人工智能—現(xiàn)代方法),在其中我們學(xué)習(xí)的幾個主題包括:智能agents,、通過搜索解決問題,、社會化AI、AI的哲學(xué)/社會學(xué)/未來,。在課程的結(jié)尾,,作者使用簡單的基于搜索的agents來解決虛擬環(huán)境中的傳輸問題,。 作者表示通過這門課程學(xué)到了相當(dāng)多的知識,也決定繼續(xù)學(xué)習(xí)這個特殊的課題,。在接下來的幾個星期,,作者在舊金山參加了很多關(guān)于機器學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò),、數(shù)據(jù)架構(gòu)的科技講座,,特別是一個有很多業(yè)內(nèi)知名學(xué)者參加的機器學(xué)習(xí)會議。最重要的是,,作者在Udacity中選修了一門“機器學(xué)習(xí)入門”的在線課程,,最近已經(jīng)完成學(xué)習(xí)。在本文中,,作者將在課程中學(xué)習(xí)到的機器學(xué)習(xí)算法分享給大家,。 機器學(xué)習(xí)算法可以分為三個大類:監(jiān)督學(xué)習(xí)、無監(jiān)督學(xué)習(xí),、強化學(xué)習(xí),。其中:
監(jiān)督學(xué)習(xí)1.決策樹(Decision Trees): 決策樹是一個決策支持工具,它使用樹形圖或決策模型以及序列可能性,。包括各種偶然事件的后果,、資源成本、功效,。下圖展示的是它的大概原理:
從業(yè)務(wù)決策的角度來看,大部分情況下決策樹是評估作出正確的決定的概率最不需要問是/否問題的辦法,。它能讓你以一個結(jié)構(gòu)化的和系統(tǒng)化的方式來處理這個問題,,然后得出一個合乎邏輯的結(jié)論。 2.樸素貝葉斯分類(Naive Bayesian classification): 樸素貝葉斯分類是一種十分簡單的分類算法,,叫它樸素貝葉斯分類是因為這種方法的思想真的很樸素,,樸素貝葉斯的思想基礎(chǔ)是這樣的:對于給出的待分類項,求解在此項出現(xiàn)的條件下各個類別出現(xiàn)的概率,,哪個最大,,就認為此待分類項屬于哪個類別。 它的現(xiàn)實使用例子有:
3.最小二乘法(Ordinary Least Squares Regression): 如果你懂統(tǒng)計學(xué)的話,,你可能以前聽說過線性回歸。最小二乘法是一種計算線性回歸的方法,。你可以把線性回歸當(dāng)做在一系列的點中畫一條合適的直線的任務(wù),。有很多種方法可以實現(xiàn)這個,“最小二乘法”是這樣做的?—你畫一條線,,然后為每個數(shù)據(jù)點測量點與線之間的垂直距離,,并將這些全部相加,最終得到的擬合線將在這個相加的總距離上盡可能最小,。 4.邏輯回歸(Logistic Regression): 邏輯回歸是一種強大的統(tǒng)計方法,它能建模出一個二項結(jié)果與一個(或多個)解釋變量,。它通過估算使用邏輯運算的概率,,測量分類依賴變量和一個(或多個)獨立的變量之間的關(guān)系,這是累積的邏輯分布情況,。 總的來說,邏輯回歸可以用于以下幾個真實應(yīng)用場景:
5.支持向量機(Support Vector Machine): SVM(Support Vector Machine)是二元分類算法,。給定一組2種類型的N維的地方點,,SVM(Support Vector Machine)產(chǎn)生一個(N - 1)維超平面到這些點分成2組。假設(shè)你有2種類型的點,,且它們是線性可分的,。 SVM(Support Vector Machine)將找到一條直線將這些點分成2種類型,并且這條直線會盡可能地遠離所有的點,。 在規(guī)模方面,,目前最大的使用支持向量機SVM(Support Vector Machine)(在適當(dāng)修改的情況下)的問題是顯示廣告,人類剪接位點識別,,基于圖像的性別檢測,大規(guī)模的圖像分類等,。 6.組合方法(Ensemble methods): 組合方法是學(xué)習(xí)算法,它構(gòu)建一系列分類,,然后通過采取加權(quán)投票預(yù)測的方式來對新的數(shù)據(jù)點進行分類,。原始的集成方法是貝葉斯平均法,但最近的算法包括對其糾錯輸出編碼,、套袋,、加速等。 那么組合方法如何運行的呢,?為什么說它們比其他的模型要優(yōu)秀,?因為:
無監(jiān)督學(xué)習(xí)7.聚類算法(Clustering Algorithms): 聚類是一種聚集對象的任務(wù),例如:相比其他不同的組在同一組(集群)的對象彼此更為相似,。 每個聚類算法都是不同的,,比如說有以下幾種:
8.主成分分析(Principal Component Analysis,,PCA): 通過正交變換將一組可能存在相關(guān)性的變量轉(zhuǎn)換為一組線性不相關(guān)的變量,,轉(zhuǎn)換后的這組變量叫主成分。 一些主成分分析PCA程序的應(yīng)用包括壓縮,、簡化數(shù)據(jù),、可視化。注意,,對于選擇是否使用主成分分析領(lǐng)域知識是非常重要的,。當(dāng)數(shù)據(jù)是嘈雜的時候(所有的組件的主成分分析有相當(dāng)高的方差),它是不適合的,。 9. 奇異值分解(Singular Value Decomposition): 在線性代數(shù)中,SVD是一個非常復(fù)雜矩陣的因數(shù)分解,。對于一個給定的m×n矩陣M,,存在一個分解,M = UΣV,,其中u和v是單一矩陣,,Σ是對角矩陣。 主成分分析PCA其是奇異值分解SVD的簡單應(yīng)用,。在計算機視覺領(lǐng)域,,第一人臉識別算法,運用主成分分析PCA其是奇異值分解SVD來代表面孔作為一個線性組合的“特征臉”,,并對其做降維,,然后通過簡單的方法匹配合適的身份,;雖然現(xiàn)代方法更復(fù)雜,但是許多人仍然依靠類似的技術(shù),。 10.獨立成分分析(Independent Component Analysis): 獨立成分分析(Independent Component Analysis,ICA)是一種揭示構(gòu)筑隨機變量,、技術(shù)測量,、信號等隱藏因素的統(tǒng)計技術(shù)。ICA定義了所觀察到的多變量數(shù)據(jù)生成模型,,這通常是給定為一個大型數(shù)據(jù)庫的樣本,。在該模型中,數(shù)據(jù)變量被假定為一些未知潛變量的線性混合,,同時混合系統(tǒng)也仍然未知,。潛變量被假定是非高斯和相互獨立的,它們被稱為所觀察到的數(shù)據(jù)的獨立分量,。 ICA與PCA是相關(guān)的,但它更強大,。在這些經(jīng)典的方法完全失敗的時候,,ICA能夠找到源頭的潛在因素。它的應(yīng)用包括數(shù)字圖像,、文檔數(shù)據(jù)庫,、經(jīng)濟指標(biāo)和心理測試。 通過以上介紹,,相信大部分人對于機器學(xué)習(xí)的算法都有一定的了解,。如果對這方面感興趣的話,可以接著運用你理解的算法去創(chuàng)造機器學(xué)習(xí)應(yīng)用,,為世界各地的人們創(chuàng)造更好的生活條件,。 PS : 本文由雷鋒網(wǎng)(搜索“雷鋒網(wǎng)”公眾號關(guān)注)獨家編譯,未經(jīng)許可拒絕轉(zhuǎn)載,! |
|