學(xué)習(xí)人工智能不得不了解的12個(gè)關(guān)鍵算法,如下
隨著人工智能(AI)技術(shù)對(duì)各行各業(yè)有越來(lái)越深入的影響,我們也更多地在新聞或報(bào)告中聽(tīng)到“機(jī)器學(xué)習(xí)”、“深度學(xué)習(xí)”、“增強(qiáng)學(xué)習(xí)”、“神經(jīng)網(wǎng)絡(luò)”等詞匯,對(duì)于非專業(yè)人士來(lái)說(shuō)略為玄幻。梳理了包括這些在內(nèi)的12個(gè)關(guān)鍵詞,希望幫助讀者更清晰地理解,這項(xiàng)人工智能技術(shù)的內(nèi)涵和潛能。
1、 機(jī)器學(xué)習(xí)
湯姆·米歇爾教授任職于卡內(nèi)基梅隴大學(xué)計(jì)算機(jī)學(xué)院、機(jī)器學(xué)習(xí)系,根據(jù)他在《機(jī)器學(xué)習(xí)》一書(shū)中的定義,機(jī)器學(xué)習(xí)是“研究如何打造可以根據(jù)經(jīng)驗(yàn)自動(dòng)改善的計(jì)算機(jī)程序”。機(jī)器學(xué)習(xí)在本質(zhì)上來(lái)說(shuō)是跨學(xué)科的,使用了計(jì)算機(jī)科學(xué)、統(tǒng)計(jì)學(xué)和人工智能以及其他學(xué)科的知識(shí)。機(jī)器學(xué)習(xí)研究的主要產(chǎn)物是算法,可以幫助基于經(jīng)驗(yàn)的自動(dòng)改善。這些算法可以在各個(gè)行業(yè)有廣泛應(yīng)用,包括計(jì)算機(jī)視覺(jué)、人工智能和數(shù)據(jù)挖掘。
2、 分類
分類的含義是,打造模型,將數(shù)據(jù)分類進(jìn)入不同的類別。這些模型的打造方式,是輸入一個(gè)訓(xùn)練數(shù)據(jù)庫(kù),其中有預(yù)先標(biāo)記好的類別,供算法進(jìn)行學(xué)習(xí)。然后,在模型中輸入類別未經(jīng)標(biāo)記的數(shù)據(jù)庫(kù),讓模型基于它從訓(xùn)練數(shù)據(jù)庫(kù)中所學(xué)到的知識(shí),來(lái)預(yù)測(cè)新數(shù)據(jù)的類別。
因?yàn)檫@類的算法需要明確的類別標(biāo)記,因此,分類算是“監(jiān)督學(xué)習(xí)”的一種形式。
3、 回歸
回歸是與分類緊密聯(lián)系在一起的。分類是預(yù)測(cè)離散的類別,而回歸則適用的情況,是當(dāng)預(yù)測(cè)“類別”由連續(xù)的數(shù)字組成。線性回歸就是回歸技術(shù)的一個(gè)例子。
4、 聚集
聚集是用來(lái)分析不含有預(yù)先標(biāo)記過(guò)的類別的數(shù)據(jù),甚至連類別特性都沒(méi)有標(biāo)記過(guò)。數(shù)據(jù)個(gè)體的分組原則是這樣的一個(gè)概念:最大化組內(nèi)相似度、最小化組與組之間的相似度。這就出現(xiàn)了聚集算法,識(shí)別非常相似的數(shù)據(jù)并將其放在一組,而未分組的數(shù)據(jù)之間則沒(méi)那么相似。K-means聚集也許是聚集算法中最著名的例子。
由于聚集不需要預(yù)先將類別進(jìn)行標(biāo)記,它算是“無(wú)監(jiān)督學(xué)習(xí)”的一種形式,意味著算法通過(guò)觀察進(jìn)行學(xué)習(xí),而不是通過(guò)案例進(jìn)行學(xué)習(xí)。
5、 關(guān)聯(lián)
要解釋關(guān)聯(lián),最簡(jiǎn)單的辦法是引入“購(gòu)物籃分析”,這是一個(gè)比較著名的典型例子。購(gòu)物籃分析是假設(shè)一個(gè)購(gòu)物者在購(gòu)物籃中放入了各種各樣的物品(實(shí)體或者虛擬),而目標(biāo)是識(shí)別各種物品之間的關(guān)聯(lián),并為比較分配支持和置信度測(cè)量(編者注:置信度是一個(gè)統(tǒng)計(jì)學(xué)概念,意味著某個(gè)樣本在總體參數(shù)的區(qū)間估計(jì))。這其中的價(jià)值在于交叉營(yíng)銷和消費(fèi)者行為分析。關(guān)聯(lián)是購(gòu)物籃分析的一種概括歸納,與分類相似,除了任何特性都可以在關(guān)聯(lián)中被預(yù)測(cè)到。 Apriori 算法被稱為最知名的關(guān)聯(lián)算法。
關(guān)聯(lián)也屬于“無(wú)監(jiān)督學(xué)習(xí)”的一種形式。
決策樹(shù)的例子,分步解決并分類的方式帶來(lái)了樹(shù)形結(jié)構(gòu)。圖片來(lái)源: SlideShare 。
6、 決策樹(shù)
決策樹(shù)是一種自上而下、分步解決的遞歸分類器。決策樹(shù)通常來(lái)說(shuō)由兩種任務(wù)組成:歸納和修剪。歸納是用一組預(yù)先分類的數(shù)據(jù)作為輸入,判斷最好用哪些特性來(lái)分類,然后將數(shù)據(jù)庫(kù)分類,基于其產(chǎn)生的分類數(shù)據(jù)庫(kù)再進(jìn)行遞歸,直到所有的訓(xùn)練數(shù)據(jù)都完成分類。打造樹(shù)的時(shí)候,我們的目標(biāo)是找到特性來(lái)分類,從而創(chuàng)造出最純粹的子節(jié),這樣,要將數(shù)據(jù)庫(kù)中所有數(shù)據(jù)分類,只需要最少的分類次數(shù)。這種純度是以信息的概念來(lái)衡量。
一個(gè)完整的決策樹(shù)模型可能過(guò)于復(fù)雜,包含不必要的結(jié)構(gòu),而且很難解讀。因而我們還需要“修剪”這個(gè)環(huán)節(jié),將不需要的結(jié)構(gòu)從決策樹(shù)中去除,讓決策樹(shù)更加高效、簡(jiǎn)單易讀并且更加精確。
右上箭頭:最大間隔超平面。左下箭頭:支持向量。圖片來(lái)源: KDNuggets 。
7、 支持向量機(jī)(SVM)
SVM可以分類線性與非線性數(shù)據(jù)。SVM的原理是將訓(xùn)練數(shù)據(jù)轉(zhuǎn)化進(jìn)入更高的維度,再檢查這個(gè)維度中的最優(yōu)間隔距離,或者不同分類中的邊界。在SVM中,這些邊界被稱為“超平面”,通過(guò)定位支持向量來(lái)劃分,或者通過(guò)最能夠定義類型的個(gè)例及其邊界。邊界是與超平面平行的線條,定義為超平面及其支持向量之間的最短距離。
SVM的宏偉概念概括起來(lái)就是:如果有足夠多的維度,就一定能發(fā)現(xiàn)將兩個(gè)類別分開(kāi)的超平面,從而將數(shù)據(jù)庫(kù)成員的類別進(jìn)行非線性化。當(dāng)重復(fù)足夠多的次數(shù),就可以生成足夠多的超平面,在N個(gè)空間維度中,分離所有的類別。
8、 神經(jīng)網(wǎng)絡(luò)
神經(jīng)網(wǎng)絡(luò)是以人類大腦為靈感的算法,雖然,這些算法對(duì)真實(shí)人腦功能的模擬程度有多少,還存在很多的爭(zhēng)議,我們還沒(méi)法說(shuō)這些算法真正模擬了人類大腦。神經(jīng)網(wǎng)絡(luò)是由無(wú)數(shù)個(gè)相互連接的概念化人工神經(jīng)元組成,這些神經(jīng)元在互相之間傳送數(shù)據(jù),有不同的相關(guān)權(quán)重,這些權(quán)重是基于神經(jīng)網(wǎng)絡(luò)的“經(jīng)驗(yàn)”而定的?!吧窠?jīng)元”有激活閾值,如果各個(gè)神經(jīng)元權(quán)重的結(jié)合達(dá)到閾值,神經(jīng)元就會(huì)“激發(fā)”。神經(jīng)元激發(fā)的結(jié)合就帶來(lái)了“學(xué)習(xí)”。
9、 深度學(xué)習(xí)
深度學(xué)習(xí)相對(duì)來(lái)說(shuō)還是個(gè)比較新的詞匯,雖然在網(wǎng)絡(luò)搜索大熱之前就已經(jīng)有了這個(gè)詞匯。這個(gè)詞匯在研究和業(yè)界都名聲大噪,主要是因?yàn)槠渌幌盗胁煌I(lǐng)域的巨大成功。深度學(xué)習(xí)是應(yīng)用深度神經(jīng)網(wǎng)絡(luò)技術(shù)——具有多個(gè)隱藏神經(jīng)元層的神經(jīng)網(wǎng)絡(luò)架構(gòu)——來(lái)解決問(wèn)題。深度學(xué)習(xí)是一個(gè)過(guò)程,正如使用了深度神經(jīng)網(wǎng)絡(luò)架構(gòu)的數(shù)據(jù)挖掘,這是一種獨(dú)特的機(jī)器學(xué)習(xí)算法。
10、增強(qiáng)學(xué)習(xí)
對(duì)于“增強(qiáng)學(xué)習(xí)”最好的描述來(lái)自劍橋大學(xué)教授、微軟研究科學(xué)家Christopher Bishop,他用一句話精確概括:“增強(qiáng)學(xué)習(xí)是在某一情景中尋找最適合的行為,從而最大化獎(jiǎng)勵(lì)?!痹鰪?qiáng)學(xué)習(xí)中,并沒(méi)有給出明確的目標(biāo);機(jī)器必須通過(guò)不斷試錯(cuò)的方式進(jìn)行學(xué)習(xí)。我們來(lái)用經(jīng)典的馬里奧游戲舉個(gè)例子。通過(guò)不斷試錯(cuò),增強(qiáng)學(xué)習(xí)算法可以判斷某些行為、也就是某些游戲按鍵可以提升玩家的游戲表現(xiàn),在這里,試錯(cuò)的目標(biāo)是最優(yōu)化的游戲表現(xiàn)。
K層交叉檢驗(yàn)的例子,在每一輪使用不同的數(shù)據(jù)進(jìn)行測(cè)試(藍(lán)色為訓(xùn)練數(shù)據(jù)、黃色為測(cè)試數(shù)據(jù)),方框下為每一輪的驗(yàn)證精度。最終的驗(yàn)證精度是10輪測(cè)試的平均數(shù)。圖片來(lái)源: GitHub 。
11、K層交叉檢驗(yàn)
交叉檢驗(yàn)是一種打造模型的方法,通過(guò)去除數(shù)據(jù)庫(kù)中K層中的一層,訓(xùn)練所有K減1層中的數(shù)據(jù),然后用剩下的第K層來(lái)進(jìn)行測(cè)驗(yàn)。然后,再將這個(gè)過(guò)程重復(fù)K次,每一次使用不同層中的數(shù)據(jù)測(cè)試,將錯(cuò)誤結(jié)果在一個(gè)整合模型中結(jié)合和平均起來(lái)。這樣做的目的是生成最精確的預(yù)測(cè)模型。
12、貝葉斯
當(dāng)我們討論概率的時(shí)候,有兩個(gè)最主流的學(xué)派:經(jīng)典學(xué)派概率論看重隨機(jī)事件發(fā)生的頻率。與之對(duì)比,貝葉斯學(xué)派認(rèn)為概率的目標(biāo)是將未確定性進(jìn)行量化,并隨著額外數(shù)據(jù)的出現(xiàn)而更新概率。如果這些概率都延伸到真值,我們就有了不同確定程度的“學(xué)習(xí)”。