【wetouchsky. com摩天資訊】 公眾號(hào):TouchSky摩天
有人說(shuō),人工智能(AI)是未來(lái)趨勢(shì),人工智能是科幻,人工智能是我們?nèi)粘I畹囊徊糠?。這些表述都沒(méi)問(wèn)題,就看你指的是哪一種人工智能。
今年早些時(shí)候,Google DeepMind的AlphaGo打敗了韓國(guó)的圍棋大師李世乭九段。在媒體描述DeepMind勝利的時(shí)候,將人工智能(AI)、機(jī)器學(xué)習(xí)(Machine Learning)和深度學(xué)習(xí)(Deep Learning)都用上了。這三者在AlphaGo擊敗李世乭的過(guò)程中都起了作用,但它們說(shuō)的并不是一回事。
2016年3月,谷歌深度思維(DeepMind)研發(fā)的的AlphaGo在圍棋游戲GO中打敗韓國(guó)圍棋冠軍李世石后,媒體描述DeepMind獲勝時(shí)提到了人工智能(AI)、機(jī)器學(xué)習(xí)(Machine Learning)和深度學(xué)習(xí)(Deep Learning)。這三者在AlphaGo擊敗李世石的過(guò)程中都起了作用,但它們本質(zhì)上有所區(qū)別。
今天我們就用最簡(jiǎn)單的方法——同心圓,可視化地展現(xiàn)出它們?nèi)叩年P(guān)系和應(yīng)用。
如上圖,最早出現(xiàn)的人工智能位于同心圓最外側(cè);其次是隨后發(fā)展起來(lái)的機(jī)器學(xué)習(xí),位于中間;最后是推動(dòng)人工智能突飛猛進(jìn)發(fā)展的深度學(xué)習(xí),位于最內(nèi)側(cè)。
自上個(gè)世紀(jì)50年代的人工智能熱以來(lái),基于人工智能概念的機(jī)器學(xué)習(xí)和深度學(xué)習(xí)又掀起一陣前所未有的新浪潮。
從提出概念到走向繁榮
1956年,幾個(gè)計(jì)算機(jī)科學(xué)家在達(dá)特茅斯會(huì)議(Dartmouth Conferences)上首次提出了“人工智能”的概念。此后,人工智能就一直縈繞于人們的腦海之中,并在科研實(shí)驗(yàn)室中蓄勢(shì)待發(fā)。之后的幾十年,人工智能一直在兩極反轉(zhuǎn),有人稱(chēng)其為打開(kāi)人類(lèi)文明輝煌未來(lái)的鑰匙,也有人將其當(dāng)成科技瘋子的狂想扔到技術(shù)垃圾堆里。其實(shí)2012年之前,這兩種觀點(diǎn)一直不相上下。
過(guò)去幾年,尤其是2015年以來(lái),人工智能突飛猛進(jìn)地發(fā)展。這主要?dú)w功于圖形處理器(GPU)的廣泛應(yīng)用,使得并行計(jì)算變得更快、更便宜、更有效。當(dāng)然,無(wú)限拓展的存儲(chǔ)能力和驟然爆發(fā)的數(shù)據(jù)洪流(大數(shù)據(jù))的組合拳,也使得圖像數(shù)據(jù)、文本數(shù)據(jù)、交易數(shù)據(jù)、映射數(shù)據(jù)全面海量爆發(fā)。
讓我們慢慢梳理一下計(jì)算機(jī)科學(xué)家們是如何從提出人工智能的概念到將其發(fā)展至滲入數(shù)以億計(jì)的用戶的日常生活中的。
人工智能(ARTIFICIAL INTELLIGENCE)——為機(jī)器賦予人的智能
成王(King me):國(guó)際跳棋的電腦程序是早期人工智能的一個(gè)典型應(yīng)用,在二十世紀(jì)五十年代曾掀起一陣風(fēng)潮。(譯者注:國(guó)際跳棋棋子到達(dá)底線位置后,可以成王,成王棋子可以向后移動(dòng))。
早在1956年夏天那次會(huì)議,人工智能的先驅(qū)們就夢(mèng)想著用當(dāng)時(shí)剛剛出現(xiàn)的計(jì)算機(jī)來(lái)構(gòu)造復(fù)雜的、擁有與人類(lèi)智慧同樣本質(zhì)特性的機(jī)器。這就是我們現(xiàn)在所說(shuō)的“強(qiáng)人工智能”(General AI)。這個(gè)無(wú)所不能的機(jī)器,它有著我們所有的感知(甚至比人更多),我們所有的理性,可以像我們一樣思考。
人們?cè)陔娪袄镆部偸强吹竭@樣的機(jī)器:友好的,像星球大戰(zhàn)中的C-3PO;邪惡的,如終結(jié)者。強(qiáng)人工智能現(xiàn)在還只存在于電影和科幻小說(shuō)中,原因不難理解,我們還沒(méi)法實(shí)現(xiàn)它們,至少目前還不行。
我們目前能實(shí)現(xiàn)的,一般被稱(chēng)為“弱人工智能”(Narrow AI)。弱人工智能是能夠與人一樣,甚至比人更好地執(zhí)行特定任務(wù)的技術(shù)。例如,Pinterest上的圖像分類(lèi);或者Facebook的人臉識(shí)別。
這些是弱人工智能在實(shí)踐中的例子。這些技術(shù)實(shí)現(xiàn)的是人類(lèi)智能的一些具體的局部。但它們是如何實(shí)現(xiàn)的?這種智能是從何而來(lái)?這就帶我們來(lái)到同心圓的里面一層,機(jī)器學(xué)習(xí)。
機(jī)器學(xué)習(xí)—— 一種實(shí)現(xiàn)人工智能的方法
健康食譜(Spam free diet):機(jī)器學(xué)習(xí)能夠幫你過(guò)濾電子信箱里的(大部分)垃圾郵件。(譯者注:英文中垃圾郵件的單詞spam來(lái)源于二戰(zhàn)中美國(guó)曾大量援助英國(guó)的午餐肉品牌SPAM。直到六十年代,英國(guó)的農(nóng)業(yè)一直沒(méi)有從二戰(zhàn)的損失中恢復(fù),因而從美國(guó)大量進(jìn)口了這種廉價(jià)的罐頭肉制品。據(jù)傳聞不甚好吃且充斥市場(chǎng)。)
機(jī)器學(xué)習(xí)最基本的做法,是使用算法來(lái)解析數(shù)據(jù)、從中學(xué)習(xí),然后對(duì)真實(shí)世界中的事件做出決策和預(yù)測(cè)。與傳統(tǒng)的為解決特定任務(wù)、硬編碼的軟件程序不同,機(jī)器學(xué)習(xí)是用大量的數(shù)據(jù)來(lái)“訓(xùn)練”,通過(guò)各種算法從數(shù)據(jù)中學(xué)習(xí)如何完成任務(wù)。
機(jī)器學(xué)習(xí)直接來(lái)源于早期的人工智能領(lǐng)域。傳統(tǒng)算法包括決策樹(shù)學(xué)習(xí)、推導(dǎo)邏輯規(guī)劃、聚類(lèi)、強(qiáng)化學(xué)習(xí)和貝葉斯網(wǎng)絡(luò)等等。眾所周知,我們還沒(méi)有實(shí)現(xiàn)強(qiáng)人工智能。早期機(jī)器學(xué)習(xí)方法甚至都無(wú)法實(shí)現(xiàn)弱人工智能。
機(jī)器學(xué)習(xí)最成功的應(yīng)用領(lǐng)域是計(jì)算機(jī)視覺(jué),雖然也還是需要大量的手工編碼來(lái)完成工作。人們需要手工編寫(xiě)分類(lèi)器、邊緣檢測(cè)濾波器,以便讓程序能識(shí)別物體從哪里開(kāi)始,到哪里結(jié)束;寫(xiě)形狀檢測(cè)程序來(lái)判斷檢測(cè)對(duì)象是不是有八條邊;寫(xiě)分類(lèi)器來(lái)識(shí)別字母“ST-O-P”。使用以上這些手工編寫(xiě)的分類(lèi)器,人們總算可以開(kāi)發(fā)算法來(lái)感知圖像,判斷圖像是不是一個(gè)停止標(biāo)志牌。
這個(gè)結(jié)果還算不錯(cuò),但并不是那種能讓人為之一振的成功。特別是遇到云霧天,標(biāo)志牌變得不是那么清晰可見(jiàn),又或者被樹(shù)遮擋一部分,算法就難以成功了。這就是為什么前一段時(shí)間,計(jì)算機(jī)視覺(jué)的性能一直無(wú)法接近到人的能力。它太僵化,太容易受環(huán)境條件的干擾。
隨著時(shí)間的推進(jìn),學(xué)習(xí)算法的發(fā)展改變了一切。
深度學(xué)習(xí)——一種實(shí)現(xiàn)機(jī)器學(xué)習(xí)的技術(shù)
放貓(Herding Cats):從YouTube視頻里面尋找貓的圖片是深度學(xué)習(xí)杰出性能的首次展現(xiàn)。(譯者注:herdingcats是英語(yǔ)習(xí)語(yǔ),照顧一群喜歡自由,不喜歡馴服的貓,用來(lái)形容局面混亂,任務(wù)難以完成。)
人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks)是早期機(jī)器學(xué)習(xí)中的一個(gè)重要的算法,歷經(jīng)數(shù)十年風(fēng)風(fēng)雨雨。神經(jīng)網(wǎng)絡(luò)的原理是受我們大腦的生理結(jié)構(gòu)——互相交叉相連的神經(jīng)元啟發(fā)。但與大腦中一個(gè)神經(jīng)元可以連接一定距離內(nèi)的任意神經(jīng)元不同,人工神經(jīng)網(wǎng)絡(luò)具有離散的層、連接和數(shù)據(jù)傳播的方向。
例如,我們可以把一幅圖像切分成圖像塊,輸入到神經(jīng)網(wǎng)絡(luò)的第一層。在第一層的每一個(gè)神經(jīng)元都把數(shù)據(jù)傳遞到第二層。第二層的神經(jīng)元也是完成類(lèi)似的工作,把數(shù)據(jù)傳遞到第三層,以此類(lèi)推,直到最后一層,然后生成結(jié)果。
每一個(gè)神經(jīng)元都為它的輸入分配權(quán)重,這個(gè)權(quán)重的正確與否與其執(zhí)行的任務(wù)直接相關(guān)。最終的輸出由這些權(quán)重加總來(lái)決定。
我們?nèi)砸酝V梗⊿top)標(biāo)志牌為例。將一個(gè)停止標(biāo)志牌圖像的所有元素都打碎,然后用神經(jīng)元進(jìn)行“檢查”:八邊形的外形、救火車(chē)般的紅顏色、鮮明突出的字母、交通標(biāo)志的典型尺寸和靜止不動(dòng)運(yùn)動(dòng)特性等等。神經(jīng)網(wǎng)絡(luò)的任務(wù)就是給出結(jié)論,它到底是不是一個(gè)停止標(biāo)志牌。神經(jīng)網(wǎng)絡(luò)會(huì)根據(jù)所有權(quán)重,給出一個(gè)經(jīng)過(guò)深思熟慮的猜測(cè)——“概率向量”。
這個(gè)例子里,系統(tǒng)可能會(huì)給出這樣的結(jié)果:86%可能是一個(gè)停止標(biāo)志牌;7%的可能是一個(gè)限速標(biāo)志牌;5%的可能是一個(gè)風(fēng)箏掛在樹(shù)上等等。然后網(wǎng)絡(luò)結(jié)構(gòu)告知神經(jīng)網(wǎng)絡(luò),它的結(jié)論是否正確。
即使是這個(gè)例子,也算是比較超前了。直到前不久,神經(jīng)網(wǎng)絡(luò)也還是為人工智能圈所淡忘。其實(shí)在人工智能出現(xiàn)的早期,神經(jīng)網(wǎng)絡(luò)就已經(jīng)存在了,但神經(jīng)網(wǎng)絡(luò)對(duì)于“智能”的貢獻(xiàn)微乎其微。主要問(wèn)題是,即使是最基本的神經(jīng)網(wǎng)絡(luò),也需要大量的運(yùn)算。神經(jīng)網(wǎng)絡(luò)算法的運(yùn)算需求難以得到滿足。
不過(guò),還是有一些虔誠(chéng)的研究團(tuán)隊(duì),以多倫多大學(xué)的Geoffrey Hinton為代表,堅(jiān)持研究,實(shí)現(xiàn)了以超算為目標(biāo)的并行算法的運(yùn)行與概念證明。但也直到GPU得到廣泛應(yīng)用,這些努力才見(jiàn)到成效。
我們回過(guò)頭來(lái)看這個(gè)停止標(biāo)志識(shí)別的例子。神經(jīng)網(wǎng)絡(luò)是調(diào)制、訓(xùn)練出來(lái)的,時(shí)不時(shí)還是很容易出錯(cuò)的。它最需要的,就是訓(xùn)練。需要成百上千甚至幾百萬(wàn)張圖像來(lái)訓(xùn)練,直到神經(jīng)元的輸入的權(quán)值都被調(diào)制得十分精確,無(wú)論是否有霧,晴天還是雨天,每次都能得到正確的結(jié)果。
只有這個(gè)時(shí)候,我們才可以說(shuō)神經(jīng)網(wǎng)絡(luò)成功地自學(xué)習(xí)到一個(gè)停止標(biāo)志的樣子;或者在Facebook的應(yīng)用里,神經(jīng)網(wǎng)絡(luò)自學(xué)習(xí)了你媽媽的臉;又或者是2012年吳恩達(dá)(Andrew Ng)教授在Google實(shí)現(xiàn)了神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)到貓的樣子等等。
吳教授的突破在于,把這些神經(jīng)網(wǎng)絡(luò)從基礎(chǔ)上顯著地增大了。層數(shù)非常多,神經(jīng)元也非常多,然后給系統(tǒng)輸入海量的數(shù)據(jù),來(lái)訓(xùn)練網(wǎng)絡(luò)。在吳教授這里,數(shù)據(jù)是一千萬(wàn)YouTube視頻中的圖像。吳教授為深度學(xué)習(xí)(deep learning)加入了“深度”(deep)。這里的“深度”就是說(shuō)神經(jīng)網(wǎng)絡(luò)中眾多的層。
現(xiàn)在,經(jīng)過(guò)深度學(xué)習(xí)訓(xùn)練的圖像識(shí)別,在一些場(chǎng)景中甚至可以比人做得更好:從識(shí)別貓,到辨別血液中癌癥的早期成分,到識(shí)別核磁共振成像中的腫瘤。Google的AlphaGo先是學(xué)會(huì)了如何下圍棋,然后與它自己下棋訓(xùn)練。它訓(xùn)練自己神經(jīng)網(wǎng)絡(luò)的方法,就是不斷地與自己下棋,反復(fù)地下,永不停歇。
深度學(xué)習(xí),給人工智能以璀璨的未來(lái)
深度學(xué)習(xí)使得機(jī)器學(xué)習(xí)能夠?qū)崿F(xiàn)眾多的應(yīng)用,并拓展了人工智能的領(lǐng)域范圍。深度學(xué)習(xí)摧枯拉朽般地實(shí)現(xiàn)了各種任務(wù),使得似乎所有的機(jī)器輔助功能都變?yōu)榭赡堋o(wú)人駕駛汽車(chē),預(yù)防性醫(yī)療保健,甚至是更好的電影推薦,都近在眼前,或者即將實(shí)現(xiàn)。
人工智能就在現(xiàn)在,就在明天。有了深度學(xué)習(xí),人工智能甚至可以達(dá)到我們暢想的科幻小說(shuō)一般。你的C-3PO我拿走了,你有你的終結(jié)者就好了。