有三個(gè)詞,這兩年出現(xiàn)的頻率越來(lái)越高:人工智能(AI),機(jī)器學(xué)習(xí)(ML),深度學(xué)習(xí)(DL),到底他們哥仨是什么關(guān)系?今天小編化繁為簡(jiǎn),用幾張圖帶你迅速看明白。關(guān)系如圖,從提出概念的時(shí)間上來(lái)看也很清楚:
人工智能AI:模擬人腦,辨認(rèn)哪個(gè)是蘋(píng)果,哪個(gè)是橙子。
機(jī)器學(xué)習(xí)ML:根據(jù)特征在水果攤買(mǎi)橙子,隨著見(jiàn)過(guò)的橙子和其他水果越來(lái)越多,辨別橙子的能力越來(lái)越強(qiáng),不會(huì)再把香蕉當(dāng)橙子。
機(jī)器學(xué)習(xí)強(qiáng)調(diào)“學(xué)習(xí)”而不是程序本身,通過(guò)復(fù)雜的算法來(lái)分析大量的數(shù)據(jù),識(shí)別數(shù)據(jù)中的模式,并做出一個(gè)預(yù)測(cè)--不需要特定的代碼。在樣本的數(shù)量不斷增加的同時(shí),自我糾正完善“學(xué)習(xí)目的”,可以從自身的錯(cuò)誤中學(xué)習(xí),提高識(shí)別能力。
深度學(xué)習(xí)DL:超市里有3種蘋(píng)果和5種橙子,通過(guò)數(shù)據(jù)分析比對(duì),把超市里的品種和數(shù)據(jù)建立聯(lián)系,通過(guò)水果的顏色、形狀、大小、成熟時(shí)間和產(chǎn)地等信息,分辨普通橙子和血橙,從而選擇購(gòu)買(mǎi)用戶(hù)需要的橙子品種。
1、機(jī)器學(xué)習(xí)簡(jiǎn)史
哲學(xué)上的三大終極問(wèn)題:是誰(shuí)?從哪來(lái)?到哪去?用在任何地方都是有意義的。
——尼古拉斯·沃布吉·道格拉斯·碩德
雖然人工智能并不是最近幾年才興起的,但在它一直作為科幻元素出現(xiàn)在大眾視野中。自從AlphaGo戰(zhàn)勝李世石之后,人工智能突然間成了坊間談資,仿佛人類(lèi)已經(jīng)造出了超越人類(lèi)智慧的機(jī)器。而人工智能的核心技術(shù)機(jī)器學(xué)習(xí)及其子領(lǐng)域深度學(xué)習(xí)一時(shí)間成了人們的掌上明珠。面對(duì)這個(gè)從天而降的“怪物”,樂(lè)觀(guān)者有之,悲觀(guān)者亦有之。但追溯歷史,我們會(huì)發(fā)現(xiàn)機(jī)器學(xué)習(xí)的技術(shù)爆發(fā)有其歷史必然性,屬于技術(shù)發(fā)展的必然產(chǎn)物。而理清機(jī)器學(xué)習(xí)的發(fā)展脈絡(luò)有助于我們整體把握機(jī)器學(xué)習(xí),或者人工智能的技術(shù)框架,有助于從“道”的層面理解這一技術(shù)領(lǐng)域。這一節(jié)就先從三大究極哲學(xué)問(wèn)題中的后兩個(gè)——從哪來(lái)、到哪去入手,整體把握機(jī)器學(xué)習(xí),而后再?gòu)摹靶g(shù)”的角度深入學(xué)習(xí),解決是誰(shuí)的問(wèn)題。(本來(lái)想加個(gè)縱時(shí)間軸,無(wú)奈查了半天沒(méi)找到方法,如果有人知道,求分享)
圖一 機(jī)器學(xué)習(xí)發(fā)展史(圖片來(lái)源:Brief History of Machine Learning)
1.1 誕生并奠定基礎(chǔ)時(shí)期
1949, Hebb, Hebbian Learning theory
赫布于1949年基于神經(jīng)心理的提出了一種學(xué)習(xí)方式,該方法被稱(chēng)之為赫布學(xué)習(xí)理論。大致描述為:
假設(shè)反射活動(dòng)的持續(xù)性或反復(fù)性會(huì)導(dǎo)致細(xì)胞的持續(xù)性變化并增加其穩(wěn)定性,當(dāng)一個(gè)神經(jīng)元A能持續(xù)或反復(fù)激發(fā)神經(jīng)元B時(shí),其中一個(gè)或兩個(gè)神經(jīng)元的生長(zhǎng)或代謝過(guò)程都會(huì)變化。
Let us assume that the persistence or repetition of a reverberatory activity (or “trace”) tends to induce lasting cellular changes that add to its stability.… When an axon of cell A is near enough to excite a cell B and repeatedly or persistently takes part in firing it, some growth process or metabolic change takes place in one or both cells such that A’s efficiency, as one of the cells firing B, is increased
從人工神經(jīng)元或人工神經(jīng)網(wǎng)絡(luò)角度來(lái)看,該學(xué)習(xí)理論簡(jiǎn)單地解釋了循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)中結(jié)點(diǎn)之間的相關(guān)性關(guān)系(權(quán)重),即:當(dāng)兩個(gè)節(jié)點(diǎn)同時(shí)發(fā)生變化(無(wú)論是positive還是negative),那么節(jié)點(diǎn)之間有很強(qiáng)的正相關(guān)性(positive weight);如果兩者變化相反,那么說(shuō)明有負(fù)相關(guān)性(negative weight)。
1950, Alan Turing, The Turing test
圖二 圖靈測(cè)試(圖片來(lái)源:維基百科)
1950年,阿蘭·圖靈創(chuàng)造了圖靈測(cè)試來(lái)判定計(jì)算機(jī)是否智能。圖靈測(cè)試認(rèn)為,如果一臺(tái)機(jī)器能夠與人類(lèi)展開(kāi)對(duì)話(huà)(通過(guò)電傳設(shè)備)而不能被辨別出其機(jī)器身份,那么稱(chēng)這臺(tái)機(jī)器具有智能。這一簡(jiǎn)化使得圖靈能夠令人信服地說(shuō)明“思考的機(jī)器”是可能的。
2014年6月8日,一個(gè)叫做尤金·古斯特曼的聊天機(jī)器人成功讓人類(lèi)相信它是一個(gè)13歲的男孩,成為有史以來(lái)首臺(tái)通過(guò)圖靈測(cè)試的計(jì)算機(jī)。這被認(rèn)為是人工智能發(fā)展的一個(gè)里程碑事件。
1952, Arthur Samuel, “Machine Learning”
圖三 塞繆爾(圖片來(lái)源:Brief History of Machine Learning)
1952,IBM科學(xué)家亞瑟·塞繆爾開(kāi)發(fā)了一個(gè)跳棋程序。該程序能夠通過(guò)觀(guān)察當(dāng)前位置,并學(xué)習(xí)一個(gè)隱含的模型,從而為后續(xù)動(dòng)作提供更好的指導(dǎo)。塞繆爾發(fā)現(xiàn),伴隨著該游戲程序運(yùn)行時(shí)間的增加,其可以實(shí)現(xiàn)越來(lái)越好的后續(xù)指導(dǎo)。通過(guò)這個(gè)程序,塞繆爾駁倒了普羅維登斯提出的機(jī)器無(wú)法超越人類(lèi),像人類(lèi)一樣寫(xiě)代碼和學(xué)習(xí)的模式。他創(chuàng)造了“機(jī)器學(xué)習(xí)”這一術(shù)語(yǔ),并將它定義為:
可以提供計(jì)算機(jī)能力而無(wú)需顯式編程的研究領(lǐng)域
a field of study that gives computer the ability without being explicitly programmed.
1957, Rosenblatt, Perceptron
圖四 感知機(jī)線(xiàn)性分類(lèi)器(圖片來(lái)源:維基百科)
1957年,羅森·布拉特基于神經(jīng)感知科學(xué)背景提出了第二模型,非常的類(lèi)似于今天的機(jī)器學(xué)習(xí)模型。這在當(dāng)時(shí)是一個(gè)非常令人興奮的發(fā)現(xiàn),它比赫布的想法更適用。基于這個(gè)模型羅森·布拉特設(shè)計(jì)出了第一個(gè)計(jì)算機(jī)神經(jīng)網(wǎng)絡(luò)——感知機(jī)(the perceptron),它模擬了人腦的運(yùn)作方式。羅森·布拉特對(duì)感知機(jī)的定義如下:
感知機(jī)旨在說(shuō)明一般智能系統(tǒng)的一些基本屬性,它不會(huì)因?yàn)閭€(gè)別特例或通常不知道的東西所束縛住,也不會(huì)因?yàn)槟切﹤€(gè)別生物有機(jī)體的情況而陷入混亂。
The perceptron is designed to illustrate some of the fundamental properties of intelligent systems in general, without becoming too deeply enmeshed in the special, and frequently unknown, conditions which hold for particular biological organisms.
3年后,維德羅首次使用Delta學(xué)習(xí)規(guī)則(即最小二乘法)用于感知器的訓(xùn)練步驟,創(chuàng)造了一個(gè)良好的線(xiàn)性分類(lèi)器。
1967年,The nearest neighbor algorithm
圖五 kNN算法(圖片來(lái)源:維基百科)
1967年,最近鄰算法(The nearest neighbor algorithm)出現(xiàn),使計(jì)算機(jī)可以進(jìn)行簡(jiǎn)單的模式識(shí)別。kNN算法的核心思想是如果一個(gè)樣本在特征空間中的k個(gè)最相鄰的樣本中的大多數(shù)屬于某一個(gè)類(lèi)別,則該樣本也屬于這個(gè)類(lèi)別,并具有這個(gè)類(lèi)別上樣本的特性。這就是所謂的“少數(shù)聽(tīng)從多數(shù)”原則。
1969, Minsky, XOR problem
圖六 XOR問(wèn)題,數(shù)據(jù)線(xiàn)性不可分
1969年馬文·明斯基提出了著名的XOR問(wèn)題,指出感知機(jī)在線(xiàn)性不可分的數(shù)據(jù)分布上是失效的。此后神經(jīng)網(wǎng)絡(luò)的研究者進(jìn)入了寒冬,直到 1980 年才再一次復(fù)蘇。
1.2 停滯不前的瓶頸時(shí)期
從60年代中到70年代末,機(jī)器學(xué)習(xí)的發(fā)展步伐幾乎處于停滯狀態(tài)。無(wú)論是理論研究還是計(jì)算機(jī)硬件限制,使得整個(gè)人工智能領(lǐng)域的發(fā)展都遇到了很大的瓶頸。雖然這個(gè)時(shí)期溫斯頓(Winston)的結(jié)構(gòu)學(xué)習(xí)系統(tǒng)和海斯·羅思(Hayes Roth)等的基于邏輯的歸納學(xué)習(xí)系統(tǒng)取得較大的進(jìn)展,但只能學(xué)習(xí)單一概念,而且未能投入實(shí)際應(yīng)用。而神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)機(jī)因理論缺陷也未能達(dá)到預(yù)期效果而轉(zhuǎn)入低潮。
1.3 希望之光重新點(diǎn)亮
1981, Werbos, Multi-Layer Perceptron (MLP)
圖七 多層感知機(jī)(或者人工神經(jīng)網(wǎng)絡(luò))
偉博斯在1981年的神經(jīng)網(wǎng)絡(luò)反向傳播(BP)算法中具體提出多層感知機(jī)模型。雖然BP算法早在1970年就已經(jīng)以“自動(dòng)微分的反向模型(reverse mode of automatic differentiation)”為名提出來(lái)了,但直到此時(shí)才真正發(fā)揮效用,并且直到今天BP算法仍然是神經(jīng)網(wǎng)絡(luò)架構(gòu)的關(guān)鍵因素。有了這些新思想,神經(jīng)網(wǎng)絡(luò)的研究又加快了。
在1985-1986年,神經(jīng)網(wǎng)絡(luò)研究人員(魯梅爾哈特,辛頓,威廉姆斯-赫,尼爾森)相繼提出了使用BP算法訓(xùn)練的多參數(shù)線(xiàn)性規(guī)劃(MLP)的理念,成為后來(lái)深度學(xué)習(xí)的基石。
1986, Quinlan, Decision Trees
圖八 決策樹(shù)(圖片來(lái)源:維基百科)
在另一個(gè)譜系中,昆蘭于1986年提出了一種非常出名的機(jī)器學(xué)習(xí)算法,我們稱(chēng)之為“決策樹(shù)”,更具體的說(shuō)是ID3算法。這是另一個(gè)主流機(jī)器學(xué)習(xí)算法的突破點(diǎn)。此外ID3算法也被發(fā)布成為了一款軟件,它能以簡(jiǎn)單的規(guī)劃和明確的推論找到更多的現(xiàn)實(shí)案例,而這一點(diǎn)正好和神經(jīng)網(wǎng)絡(luò)黑箱模型相反。
決策樹(shù)是一個(gè)預(yù)測(cè)模型,他代表的是對(duì)象屬性與對(duì)象值之間的一種映射關(guān)系。樹(shù)中每個(gè)節(jié)點(diǎn)表示某個(gè)對(duì)象,而每個(gè)分叉路徑則代表的某個(gè)可能的屬性值,而每個(gè)葉結(jié)點(diǎn)則對(duì)應(yīng)從根節(jié)點(diǎn)到該葉節(jié)點(diǎn)所經(jīng)歷的路徑所表示的對(duì)象的值。決策樹(shù)僅有單一輸出,若欲有復(fù)數(shù)輸出,可以建立獨(dú)立的決策樹(shù)以處理不同輸出。數(shù)據(jù)挖掘中決策樹(shù)是一種經(jīng)常要用到的技術(shù),可以用于分析數(shù)據(jù),同樣也可以用來(lái)作預(yù)測(cè)。
在ID3算法提出來(lái)以后,研究社區(qū)已經(jīng)探索了許多不同的選擇或改進(jìn)(如ID4、回歸樹(shù)、CART算法等),這些算法仍然活躍在機(jī)器學(xué)習(xí)領(lǐng)域中。
1.4 現(xiàn)代機(jī)器學(xué)習(xí)的成型時(shí)期
1990, Schapire, Boosting
圖九 Boosting算法(圖片來(lái)源:百度百科)
1990年, Schapire最先構(gòu)造出一種多項(xiàng)式級(jí)的算法,這就是最初的Boosting算法。一年后 ,Freund提出了一種效率更高的Boosting算法。但是,這兩種算法存在共同的實(shí)踐上的缺陷,那就是都要求事先知道弱學(xué)習(xí)算法學(xué)習(xí)正確的下限。
1995年,F(xiàn)reund和schapire改進(jìn)了Boosting算法,提出了 AdaBoost (Adaptive Boosting)算法,該算法效率和Freund于1991年提出的 Boosting算法幾乎相同,但不需要任何關(guān)于弱學(xué)習(xí)器的先驗(yàn)知識(shí),因而更容易應(yīng)用到實(shí)際問(wèn)題當(dāng)中。
Boosting方法是一種用來(lái)提高弱分類(lèi)算法準(zhǔn)確度的方法,這種方法通過(guò)構(gòu)造一個(gè)預(yù)測(cè)函數(shù)系列,然后以一定的方式將他們組合成一個(gè)預(yù)測(cè)函數(shù)。他是一種框架算法,主要是通過(guò)對(duì)樣本集的操作獲得樣本子集,然后用弱分類(lèi)算法在樣本子集上訓(xùn)練生成一系列的基分類(lèi)器。
1995, Vapnik and Cortes, Support Vector Machines (SVM)
圖十 支持向量機(jī)(圖片來(lái)源:維基百科)
支持向量機(jī)的出現(xiàn)是機(jī)器學(xué)習(xí)領(lǐng)域的另一大重要突破,該算法具有非常強(qiáng)大的理論地位和實(shí)證結(jié)果。那一段時(shí)間機(jī)器學(xué)習(xí)研究也分為NN和SVM兩派。然而,在2000年左右提出了帶核函數(shù)的支持向量機(jī)后。SVM在許多以前由NN占據(jù)的任務(wù)中獲得了更好的效果。此外,SVM相對(duì)于NN還能利用所有關(guān)于凸優(yōu)化、泛化邊際理論和核函數(shù)的深厚知識(shí)。因此SVM可以從不同的學(xué)科中大力推動(dòng)理論和實(shí)踐的改進(jìn)。
而神經(jīng)網(wǎng)絡(luò)遭受到又一個(gè)質(zhì)疑,通過(guò)Hochreiter等人1991年和Hochreiter等人在2001年的研究表明在應(yīng)用BP算法學(xué)習(xí)時(shí),NN神經(jīng)元飽和后會(huì)出現(xiàn)梯度損失(gradient loss)的情況。簡(jiǎn)單地說(shuō),在一定數(shù)量的epochs訓(xùn)練后,NN會(huì)產(chǎn)生過(guò)擬合現(xiàn)象,因此這一時(shí)期NN與SVM相比處于劣勢(shì)。
2001, Breiman, Random Forests(RF)
決策樹(shù)模型由布雷曼博士在2001年提出,它是通過(guò)集成學(xué)習(xí)的思想將多棵樹(shù)集成的一種算法,它的基本單元是決策樹(shù),而它的本質(zhì)屬于機(jī)器學(xué)習(xí)的一大分支——集成學(xué)習(xí)(Ensemble Learning)方法。隨機(jī)森林的名稱(chēng)中有兩個(gè)關(guān)鍵詞,一個(gè)是“隨機(jī)”,一個(gè)就是“森林”。“森林”我們很好理解,一棵叫做樹(shù),那么成百上千棵就可以叫做森林了,這樣的比喻還是很貼切的,其實(shí)這也是隨機(jī)森林的主要思想—集成思想的體現(xiàn)。
其實(shí)從直觀(guān)角度來(lái)解釋?zhuān)靠脹Q策樹(shù)都是一個(gè)分類(lèi)器(假設(shè)現(xiàn)在針對(duì)的是分類(lèi)問(wèn)題),那么對(duì)于一個(gè)輸入樣本,N棵樹(shù)會(huì)有N個(gè)分類(lèi)結(jié)果。而隨機(jī)森林集成了所有的分類(lèi)投票結(jié)果,將投票次數(shù)最多的類(lèi)別指定為最終的輸出,這就是一種最簡(jiǎn)單的 Bagging 思想。
1.5 爆發(fā)時(shí)期
2006, Hinton, Deep Learning
在機(jī)器學(xué)習(xí)發(fā)展分為兩個(gè)部分,淺層學(xué)習(xí)(Shallow Learning)和深度學(xué)習(xí)(Deep Learning)。淺層學(xué)習(xí)起源上世紀(jì)20年代人工神經(jīng)網(wǎng)絡(luò)的反向傳播算法的發(fā)明,使得基于統(tǒng)計(jì)的機(jī)器學(xué)習(xí)算法大行其道,雖然這時(shí)候的人工神經(jīng)網(wǎng)絡(luò)算法也被稱(chēng)為多層感知機(jī),但由于多層網(wǎng)絡(luò)訓(xùn)練困難,通常都是只有一層隱含層的淺層模型。
神經(jīng)網(wǎng)絡(luò)研究領(lǐng)域領(lǐng)軍者Hinton在2006年提出了神經(jīng)網(wǎng)絡(luò)Deep Learning算法,使神經(jīng)網(wǎng)絡(luò)的能力大大提高,向支持向量機(jī)發(fā)出挑戰(zhàn)。 2006年,機(jī)器學(xué)習(xí)領(lǐng)域的泰斗Hinton和他的學(xué)生Salakhutdinov在頂尖學(xué)術(shù)刊物《Scince》上發(fā)表了一篇文章,開(kāi)啟了深度學(xué)習(xí)在學(xué)術(shù)界和工業(yè)界的浪潮。
這篇文章有兩個(gè)主要的訊息:1)很多隱層的人工神經(jīng)網(wǎng)絡(luò)具有優(yōu)異的特征學(xué)習(xí)能力,學(xué)習(xí)得到的特征對(duì)數(shù)據(jù)有更本質(zhì)的刻劃,從而有利于可視化或分類(lèi);2)深度神經(jīng)網(wǎng)絡(luò)在訓(xùn)練上的難度,可以通過(guò)“逐層初始化”( layer-wise pre-training)來(lái)有效克服,在這篇文章中,逐層初始化是通過(guò)無(wú)監(jiān)督學(xué)習(xí)實(shí)現(xiàn)的。
2015年,為紀(jì)念人工智能概念提出60周年,LeCun、Bengio和Hinton推出了深度學(xué)習(xí)的聯(lián)合綜述。
深度學(xué)習(xí)可以讓那些擁有多個(gè)處理層的計(jì)算模型來(lái)學(xué)習(xí)具有多層次抽象的數(shù)據(jù)的表示。這些方法在許多方面都帶來(lái)了顯著的改善,包括最先進(jìn)的語(yǔ)音識(shí)別、視覺(jué)對(duì)象識(shí)別、對(duì)象檢測(cè)和許多其它領(lǐng)域,例如藥物發(fā)現(xiàn)和基因組學(xué)等。深度學(xué)習(xí)能夠發(fā)現(xiàn)大數(shù)據(jù)中的復(fù)雜結(jié)構(gòu)。它是利用BP算法來(lái)完成這個(gè)發(fā)現(xiàn)過(guò)程的。BP算法能夠指導(dǎo)機(jī)器如何從前一層獲取誤差而改變本層的內(nèi)部參數(shù),這些內(nèi)部參數(shù)可以用于計(jì)算表示。深度卷積網(wǎng)絡(luò)在處理圖像、視頻、語(yǔ)音和音頻方面帶來(lái)了突破,而遞歸網(wǎng)絡(luò)在處理序列數(shù)據(jù),比如文本和語(yǔ)音方面表現(xiàn)出了閃亮的一面。
當(dāng)前統(tǒng)計(jì)學(xué)習(xí)領(lǐng)域最熱門(mén)方法主要有deep learning和SVM(supportvector machine),它們是統(tǒng)計(jì)學(xué)習(xí)的代表方法。可以認(rèn)為神經(jīng)網(wǎng)絡(luò)與支持向量機(jī)都源自于感知機(jī)。
神經(jīng)網(wǎng)絡(luò)與支持向量機(jī)一直處于“競(jìng)爭(zhēng)”關(guān)系。SVM應(yīng)用核函數(shù)的展開(kāi)定理,無(wú)需知道非線(xiàn)性映射的顯式表達(dá)式;由于是在高維特征空間中建立線(xiàn)性學(xué)習(xí)機(jī),所以與線(xiàn)性模型相比,不但幾乎不增加計(jì)算的復(fù)雜性,而且在某種程度上避免了“維數(shù)災(zāi)難”。而早先的神經(jīng)網(wǎng)絡(luò)算法比較容易過(guò)訓(xùn)練,大量的經(jīng)驗(yàn)參數(shù)需要設(shè)置;訓(xùn)練速度比較慢,在層次比較少(小于等于3)的情況下效果并不比其它方法更優(yōu)。
神經(jīng)網(wǎng)絡(luò)模型貌似能夠?qū)崿F(xiàn)更加艱難的任務(wù),如目標(biāo)識(shí)別、語(yǔ)音識(shí)別、自然語(yǔ)言處理等。但是,應(yīng)該注意的是,這絕對(duì)不意味著其他機(jī)器學(xué)習(xí)方法的終結(jié)。盡管深度學(xué)習(xí)的成功案例迅速增長(zhǎng),但是對(duì)這些模型的訓(xùn)練成本是相當(dāng)高的,調(diào)整外部參數(shù)也是很麻煩。同時(shí),SVM的簡(jiǎn)單性促使其仍然最為廣泛使用的機(jī)器學(xué)習(xí)方式。
1.6 啟示與未來(lái)的發(fā)展
人工智能機(jī)器學(xué)習(xí)是誕生于20世紀(jì)中葉的一門(mén)年輕的學(xué)科,它對(duì)人類(lèi)的生產(chǎn)、生活方式產(chǎn)生了重大的影響,也引發(fā)了激烈的哲學(xué)爭(zhēng)論。但總的來(lái)說(shuō),機(jī)器學(xué)習(xí)的發(fā)展與其他一般事物的發(fā)展并無(wú)太大區(qū)別,同樣可以用哲學(xué)的發(fā)展的眼光來(lái)看待。
機(jī)器學(xué)習(xí)的發(fā)展并不是一帆風(fēng)順的,也經(jīng)歷了螺旋式上升的過(guò)程,成就與坎坷并存。其中大量的研究學(xué)者的成果才有了今天人工智能的空前繁榮,是量變到質(zhì)變的過(guò)程,也是內(nèi)因和外因的共同結(jié)果。
機(jī)器學(xué)習(xí)的發(fā)展詮釋了多學(xué)科交叉的重要性和必要性。然而這種交叉不是簡(jiǎn)單地彼此知道幾個(gè)名詞或概念就可以的,是需要真正的融會(huì)貫通:
統(tǒng)計(jì)學(xué)家弗萊德曼早期從事物理學(xué)研究,他是優(yōu)化算法大師,而且他的編程能力同樣令人贊嘆;
喬丹教授既是一流的計(jì)算機(jī)學(xué)家,又是一流的統(tǒng)計(jì)學(xué)家,而他的博士專(zhuān)業(yè)為心理學(xué),他能夠承擔(dān)起建立統(tǒng)計(jì)機(jī)器學(xué)習(xí)的重任;
辛頓教授是世界最著名的認(rèn)知心理學(xué)家和計(jì)算機(jī)科學(xué)家。雖然他很早就成就斐然,在學(xué)術(shù)界聲名鵲起,但他依然始終活躍在一線(xiàn),自己寫(xiě)代碼。他提出的許多想法簡(jiǎn)單、可行又非常有效,被稱(chēng)為偉大的思想家。正是由于他的睿智和身體力行,深度學(xué)習(xí)技術(shù)迎來(lái)了革命性的突破。
…
深度學(xué)習(xí)的成功不是源自腦科學(xué)或認(rèn)知科學(xué)的進(jìn)展,而是因?yàn)榇髷?shù)據(jù)的驅(qū)動(dòng)和計(jì)算能力的極大提升。可以說(shuō)機(jī)器學(xué)習(xí)是由學(xué)術(shù)界、工業(yè)界、創(chuàng)業(yè)界(或競(jìng)賽界)等合力造就的。學(xué)術(shù)界是引擎,工業(yè)界是驅(qū)動(dòng),創(chuàng)業(yè)界是活力和未來(lái)。學(xué)術(shù)界和工業(yè)界應(yīng)該有各自的職責(zé)和分工。學(xué)術(shù)界的職責(zé)在于建立和發(fā)展機(jī)器學(xué)習(xí)學(xué)科,培養(yǎng)機(jī)器學(xué)習(xí)領(lǐng)域的專(zhuān)門(mén)人才;而大項(xiàng)目、大工程更應(yīng)該由市場(chǎng)來(lái)驅(qū)動(dòng),由工業(yè)界來(lái)實(shí)施和完成。
對(duì)于機(jī)器學(xué)習(xí)的發(fā)展前途,中科院數(shù)學(xué)與系統(tǒng)科學(xué)研究院陸汝鈴老師在為南京大學(xué)周志華老師的《機(jī)器學(xué)習(xí)》一書(shū)作序時(shí)提出了六大問(wèn)題,我覺(jué)得這些問(wèn)題也許正是影響機(jī)器學(xué)習(xí)未來(lái)發(fā)展方向的基本問(wèn)題,因此我摘錄其中五個(gè)在此(有兩個(gè)問(wèn)題屬于同一個(gè)主題,合并之):
問(wèn)題一:在人工智能發(fā)展早期,機(jī)器學(xué)習(xí)的技術(shù)內(nèi)涵幾乎全部是符號(hào)學(xué)習(xí),可是從二十世紀(jì)九十年代開(kāi)始,統(tǒng)計(jì)機(jī)器學(xué)習(xí)有一匹黑馬橫空出世,迅速壓倒并取代了符號(hào)學(xué)習(xí)的地位。人們可能會(huì)問(wèn),符號(hào)學(xué)習(xí)是否被徹底忽略了?他還能成為機(jī)器學(xué)習(xí)的研究對(duì)象嗎?它是否能繼續(xù)在統(tǒng)計(jì)學(xué)習(xí)的陰影里茍延殘喘?
第一種觀(guān)點(diǎn):退出歷史舞臺(tái)——沒(méi)有人抱有這種想法。
第二種觀(guān)點(diǎn):統(tǒng)計(jì)學(xué)習(xí)和符號(hào)學(xué)習(xí)結(jié)合起來(lái)——王玨教授認(rèn)為,現(xiàn)在機(jī)器學(xué)習(xí)已經(jīng)到了一個(gè)轉(zhuǎn)折點(diǎn),統(tǒng)計(jì)學(xué)習(xí)要想進(jìn)入一個(gè)更高級(jí)的形式,就應(yīng)該和知識(shí)相結(jié)合,否則就會(huì)停留于現(xiàn)狀而止步不前。
第三種觀(guān)點(diǎn):符號(hào)學(xué)習(xí)還有翻身之日——Chandrasekaran教授認(rèn)為機(jī)器學(xué)習(xí)并不會(huì)回到“河西”,而是隨著技術(shù)的進(jìn)步逐漸轉(zhuǎn)向基本的認(rèn)知科學(xué)。
問(wèn)題二:統(tǒng)計(jì)機(jī)器學(xué)習(xí)的算法都是基于樣本數(shù)據(jù)獨(dú)立同分布的假設(shè),但自然界現(xiàn)象千變?nèi)f化,哪里有那么多獨(dú)立同分布?那么“獨(dú)立同分布”條件對(duì)于機(jī)器學(xué)習(xí)來(lái)說(shuō)是必需的嗎?獨(dú)立同分布的不存在一定是不可逾越的障礙嗎?
遷移學(xué)習(xí)也許會(huì)給問(wèn)題的解決帶來(lái)一絲曙光?
問(wèn)題三:近年來(lái)出現(xiàn)了一些新的動(dòng)向,比如深度學(xué)習(xí)。但他們真的代表機(jī)器學(xué)習(xí)新的方向嗎?
包括周志華老師在內(nèi)的一些學(xué)者認(rèn)為深度學(xué)習(xí)掀起的熱潮大過(guò)它本身的貢獻(xiàn),在理論和技術(shù)上并沒(méi)有太多的創(chuàng)新,只不過(guò)硬件技術(shù)的革命使得人們能采用原來(lái)復(fù)雜度很高的算法,從而得到更精細(xì)的結(jié)果。
問(wèn)題四:機(jī)器學(xué)習(xí)研究出現(xiàn)以來(lái),我們看到的主要是從符號(hào)方法到統(tǒng)計(jì)方法的演變,用到的數(shù)學(xué)主要是概率統(tǒng)計(jì)。但是今天數(shù)學(xué)之大,就像大海,難道只有統(tǒng)計(jì)方法適合于在機(jī)器學(xué)習(xí)方面的應(yīng)用?
目前流行學(xué)習(xí)已經(jīng)“有點(diǎn)意思了”,但數(shù)學(xué)理論的介入程度遠(yuǎn)遠(yuǎn)不夠,有待更多數(shù)學(xué)家參與,開(kāi)辟新的模式、理論和方法。
問(wèn)題五:大數(shù)據(jù)時(shí)代的出現(xiàn),有沒(méi)有給機(jī)器學(xué)習(xí)帶來(lái)本質(zhì)性的影響?
大數(shù)據(jù)時(shí)代給機(jī)器學(xué)習(xí)帶來(lái)了前所未有的機(jī)遇,但是同樣的統(tǒng)計(jì)、采樣方法相較以前有什么本質(zhì)不同嗎?又從量變過(guò)渡到質(zhì)變嗎?數(shù)理統(tǒng)計(jì)方法有沒(méi)有發(fā)生質(zhì)的變化?大數(shù)據(jù)時(shí)代正在呼吁什么樣的機(jī)器學(xué)習(xí)方法?哪些方法又是大數(shù)據(jù)研究的驅(qū)動(dòng)而產(chǎn)生的呢?
2、機(jī)器學(xué)習(xí)基本概念
權(quán)威定義:
Arthur samuel: 在不直接針對(duì)問(wèn)題進(jìn)行編程的情況下,賦予計(jì)算機(jī)學(xué)習(xí)能力的一個(gè)研究領(lǐng)域。
Tom Mitchell: 對(duì)于某類(lèi)任務(wù)T和性能度量P,如果計(jì)算機(jī)程序在T上以P衡量的性能隨著經(jīng)驗(yàn)E而自我完善,那么就稱(chēng)這個(gè)計(jì)算機(jī)程序從經(jīng)驗(yàn)E學(xué)習(xí)。
其實(shí)隨著學(xué)習(xí)的深入,慢慢會(huì)發(fā)現(xiàn)機(jī)器學(xué)習(xí)越來(lái)越難定義,因?yàn)樯婕暗降念I(lǐng)域很廣,應(yīng)用也很廣,現(xiàn)在基本成為計(jì)算機(jī)相關(guān)專(zhuān)業(yè)的標(biāo)配,但是在實(shí)際的操作過(guò)程中,又慢慢會(huì)發(fā)現(xiàn)其實(shí)機(jī)器學(xué)習(xí)也是很簡(jiǎn)單的一件事,我們最的大部分事情其實(shí)就是兩件事情,一個(gè)是分類(lèi),一個(gè)是回歸。比如房?jī)r(jià)的預(yù)測(cè)、股價(jià)的預(yù)測(cè)等是回歸問(wèn)題,情感判別、信用卡是否發(fā)放等則是屬于分類(lèi)。現(xiàn)實(shí)的情況 一般是給我們一堆數(shù)據(jù),我們根據(jù)專(zhuān)業(yè)知識(shí)和一些經(jīng)驗(yàn)提取最能表達(dá)數(shù)據(jù)的特征,然后我們?cè)儆盟惴ㄈソ#扔形粗獢?shù)據(jù)過(guò)來(lái)的時(shí)候我們就能夠預(yù)測(cè)到這個(gè)是屬于哪個(gè)類(lèi)別或者說(shuō)預(yù)測(cè)到是一個(gè)什么值以便作出下一步的決策。比如說(shuō)人臉識(shí)別系統(tǒng),目的是作為一個(gè)驗(yàn)證系統(tǒng),可能是一個(gè)權(quán)限管理,如果是系統(tǒng)中的人則有權(quán)限否則沒(méi)有權(quán)限,首先給到我們的數(shù)據(jù)是一堆人臉的照片,第一步要做的事情是對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,然后是提取人臉特征,最后選擇算法比如說(shuō)SVM或者RF等等,算法的最終選擇設(shè)計(jì)到評(píng)價(jià)標(biāo)準(zhǔn),這個(gè)后面具體講,這樣我們就建立了一個(gè)人臉識(shí)別的模型,當(dāng)系統(tǒng)輸入一張人臉,我們就能夠知道他是不是在系統(tǒng)之中。機(jī)器學(xué)習(xí)的整個(gè)流程不過(guò)就這幾步,最后不過(guò)就是參數(shù)尋優(yōu),包括現(xiàn)在如火如荼的機(jī)器學(xué)習(xí)。
當(dāng)我們判斷是否要使機(jī)器學(xué)習(xí)時(shí),可以看看是不是以下的場(chǎng)景
人類(lèi)不能手動(dòng)編程;
人類(lèi)不能很好的定義這個(gè)問(wèn)題的解決方案是什么;
人類(lèi)不能做i到的需要極度快速?zèng)Q策的系統(tǒng);
大規(guī)模個(gè)性化服務(wù)系統(tǒng);
3、機(jī)器學(xué)習(xí)分類(lèi)
3.1、監(jiān)督式學(xué)習(xí) Supervised Learning
在監(jiān)督式學(xué)習(xí)下,每組訓(xùn)練數(shù)據(jù)都有一個(gè)標(biāo)識(shí)值或結(jié)果值,如客戶(hù)流失對(duì)應(yīng)1,不流失對(duì)應(yīng)0。在建立預(yù)測(cè)模型的時(shí)候,監(jiān)督式學(xué)習(xí)建立一個(gè)學(xué)習(xí)過(guò)程,將預(yù)測(cè)的結(jié)果與訓(xùn)練數(shù)據(jù)的實(shí)際結(jié)果進(jìn)行比較,不斷的調(diào)整預(yù)測(cè)模型,直到模型的預(yù)測(cè)結(jié)果達(dá)到一個(gè)預(yù)期的準(zhǔn)確率。
分類(lèi) Classification
K最近鄰 K-Nearest Neighbor (KNN)
樸素貝葉斯 Naive Bayes
決策樹(shù) Decision Tree:C4.5、分類(lèi)回歸樹(shù) Classification And Regression Tree (CART)
支持向量機(jī)器 Support Vector Machine (SVM)
回歸 Regression
線(xiàn)性回歸 linear regression
局部加權(quán)回歸 Locally weighted regression
邏輯回歸 logistic Regression
逐步回歸 stepwise regression
多元自適應(yīng)回歸樣條法 multivariate adaptive regression splines
局部散點(diǎn)平滑估計(jì) Locally estimated scatter plot smoothing ( LOESS )
嶺回歸 Ridge Regression
Least Absolute Shrinkage and Selection Operator ( LASSO )
彈性網(wǎng)絡(luò) Elastic Net
多項(xiàng)式回歸 Polynomial Regression
排序 Rank
單文檔分類(lèi) Pointwise:McRank
文檔對(duì)方法(Pairwise):Ranking SVM、RankNet、Frank、RankBoost
文檔列表方法(Listwise):AdaRank、SoftRank、LambdaMART
匹配學(xué)習(xí)
人工神經(jīng)網(wǎng)絡(luò):感知神經(jīng)網(wǎng)絡(luò) Perception Neural Network、反向傳遞 Back Propagation、Hopfield網(wǎng)絡(luò)、自組織映射 Self-Organizing Map ( SOM )、學(xué)習(xí)矢量量化 Learning Vector Quantization ( LVQ )
3.2 半監(jiān)督學(xué)習(xí)
在半監(jiān)督學(xué)習(xí)方式下,訓(xùn)練數(shù)據(jù)有部分被標(biāo)識(shí),部分沒(méi)有被標(biāo)識(shí),這種模型首先需要學(xué)習(xí)數(shù)據(jù)的內(nèi)在結(jié)構(gòu),以便合理的組織數(shù)據(jù)來(lái)進(jìn)行預(yù)測(cè)。算法上,包括一些對(duì)常用監(jiān)督式學(xué)習(xí)算法的延伸,這些算法首先試圖對(duì)未標(biāo)識(shí)數(shù)據(jù)進(jìn)行建模,在此基礎(chǔ)上再對(duì)標(biāo)識(shí)的數(shù)據(jù)進(jìn)行預(yù)測(cè)。如深度學(xué)習(xí):
深度學(xué)習(xí) Deep Learning
深度學(xué)習(xí)是 監(jiān)督學(xué)習(xí)的匹配學(xué)習(xí)中人工神經(jīng)網(wǎng)絡(luò)延伸出來(lái)發(fā)展出來(lái)的。
受限波爾茲曼機(jī) Restricted Boltzmann Machine ( RBM )
深度信念網(wǎng)絡(luò) Deep Belief Networks ( DBN )
卷積網(wǎng)絡(luò) Convolutional Network
棧式自編碼 Stacked Auto-encoders
3.3 無(wú)監(jiān)督學(xué)習(xí) Unsupervised Learning
在非監(jiān)督式學(xué)習(xí)中,數(shù)據(jù)并不被特別標(biāo)識(shí),學(xué)習(xí)模型是為了推斷出數(shù)據(jù)的一些內(nèi)在結(jié)構(gòu)。
聚類(lèi) Cluster
K均值 k-means
最大期望算法 Expectation Maximization ( EM )
降維方法 Dimensionality Reduction:主成分分析Principal Component Analysis ( PCA )、偏最小二乘回歸 Partial Least Squares Regression ( PLS )、Sammon映射 Sammon Mapping、多維尺度分析 Multidimensional Scaling ( MDS )、投影尋蹤 Projection Pursuit、RD
關(guān)聯(lián)規(guī)則 Association Rule
Apriori
Eclat
3.4 增強(qiáng)學(xué)習(xí) Reinforcement Learning
在之前的討論中,我們總是給定一個(gè)樣本x,然后給或者不給標(biāo)識(shí)值或結(jié)果值(給了就是監(jiān)督式學(xué)習(xí),不給就是無(wú)監(jiān)督式學(xué)習(xí))。之后對(duì)樣本進(jìn)行擬合、分類(lèi)、聚類(lèi)或者降維等操作。然而對(duì)于很多序列決策或者控制問(wèn)題,很難有這么規(guī)則的樣本。比如,四足機(jī)器人的控制問(wèn)題,剛開(kāi)始都不知道應(yīng)該讓其動(dòng)那條腿,在移動(dòng)過(guò)程中,也不知道怎么讓機(jī)器人自動(dòng)找到合適的前進(jìn)方向。
增強(qiáng)學(xué)習(xí)要解決的是這樣的問(wèn)題:一個(gè)能感知環(huán)境的自治agent,怎樣通過(guò)學(xué)習(xí)選擇能達(dá)到其目標(biāo)的最優(yōu)動(dòng)作。這個(gè)很具有普遍性的問(wèn)題應(yīng)用于學(xué)習(xí)控制移動(dòng)機(jī)器人,在工廠(chǎng)中學(xué)習(xí)最優(yōu)操作工序以及學(xué)習(xí)棋類(lèi)對(duì)弈等。當(dāng)agent在其環(huán)境中做出每個(gè)動(dòng)作時(shí),施教者會(huì)提供獎(jiǎng)勵(lì)或懲罰信息,以表示結(jié)果狀態(tài)的正確與否。例如,在訓(xùn)練agent進(jìn)行棋類(lèi)對(duì)弈時(shí),施教者可在游戲勝利時(shí)給出正回報(bào),而在游戲失敗時(shí)給出負(fù)回報(bào),其他時(shí)候?yàn)榱慊貓?bào)。agent的任務(wù)就是從這個(gè)非直接的,有延遲的回報(bào)中學(xué)習(xí),以便后續(xù)的動(dòng)作產(chǎn)生最大的累積效應(yīng)。
Q-Learning
時(shí)間差學(xué)習(xí) Temporal difference learning
3.5 其他
集成算法
集成算法用一些相對(duì)較弱的學(xué)習(xí)模型獨(dú)立地就同樣的樣本進(jìn)行訓(xùn)練,然后把結(jié)果整合起來(lái)進(jìn)行整體預(yù)測(cè)。
Boosting
Bootstrapped Aggregation ( Bagging )
AdaBoost
堆疊泛化 Stacked Generalization
梯度推進(jìn)機(jī) Gradient Boosting Machine ( GBM )
隨機(jī)森林 Random Forest
-
人工智能
+關(guān)注
關(guān)注
1796文章
47666瀏覽量
240286 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8438瀏覽量
133084 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5513瀏覽量
121550
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論