是誰賦予了人工智能強大的力量?
一、人工智能與深度學習
2016年,AlphaGo與李世石九段的圍棋對決無疑掀起了全世界對人工智能領(lǐng)域的新一輪關(guān)注。在與李世石對戰(zhàn)的5個月之前,AlphaGo因擊敗歐洲圍棋冠軍樊麾二段,圍棋等級分上升至3168分,而當時排名世界第二的李世石是3532分。按照這個等級分數(shù)對弈,AlphaGo每盤的勝算只有約11%,而結(jié)果是3個月之后它在與李世石對戰(zhàn)中以4比1大勝。AlphaGo的學習能力之快,讓人惶恐。
1.人工智能:讓機器像人一樣思考
自AlphaGo之后,“人工智能”成為2016年的熱詞,但早在1956年,幾個計算機科學家就在達特茅斯會議上首次提出了此概念。他們夢想著用當時剛剛出現(xiàn)的計算機來構(gòu)造復雜的、擁有與人類智慧同樣本質(zhì)特性的機器,也就是我們今日所說的“強人工智能”。這個無所不能的機器,它有著我們所有的感知、所有的理性,甚至可以像我們一樣思考。
人們在電影里也總是看到這樣的機器:友好的,像星球大戰(zhàn)中的C-3PO;邪惡的,如終結(jié)者。強人工智能目前還只存在于電影和科幻小說中,原因不難理解,我們還沒法實現(xiàn)它們,至少目前還不行。
我們目前能實現(xiàn)的,一般被稱為“弱人工智能”。弱人工智能是能夠與人一樣,甚至比人更好地執(zhí)行特定任務(wù)的技術(shù)。例如,Pinterest上的圖像分類,或者Facebook的人臉識別。這些人工智能技術(shù)實現(xiàn)的方法就是“機器學習”。
2.機器學習:使人工智能真實發(fā)生
人工智能的核心就是通過不斷地機器學習,而讓自己變得更加智能。機器學習最基本的做法,是使用算法來解析數(shù)據(jù)、從中學習,然后對真實世界中的事件做出決策和預測。與傳統(tǒng)的為解決特定任務(wù)、硬編碼的軟件程序不同,機器學習是用大量的數(shù)據(jù)來“訓練”,通過各種算法從數(shù)據(jù)中學習如何完成任務(wù)。
機器學習最成功的應用領(lǐng)域是計算機視覺,雖然也還是需要大量的手工編碼來完成工作。以識別停止標志牌為例:人們需要手工編寫形狀檢測程序來判斷檢測對象是不是有八條邊;寫分類器來識別字母“S-T-O-P”。使用以上這些手工編寫的分類器與邊緣檢測濾波器,人們總算可以開發(fā)算法來識別標志牌從哪里開始、到哪里結(jié)束,從而感知圖像,判斷圖像是不是一個停止標志牌。
這個結(jié)果還算不錯,但并不是那種能讓人為之一振的成功。特別是遇到霧霾天,標志牌變得不是那么清晰可見,又或者被樹遮擋一部分,算法就難以成功了。這就是為什么很長一段時間,計算機視覺的性能一直無法接近到人的能力。它太僵化,太容易受環(huán)境條件的干擾。
3.人工神經(jīng)網(wǎng)絡(luò):賦予機器學習以深度
人工神經(jīng)網(wǎng)絡(luò)是早期機器學習中的一個重要的算法,歷經(jīng)數(shù)十年風風雨雨。神經(jīng)網(wǎng)絡(luò)的原理是受我們大腦的生理結(jié)構(gòu)——互相交叉相連的神經(jīng)元啟發(fā)。但與大腦中一個神經(jīng)元可以連接一定距離內(nèi)的任意神經(jīng)元不同,人工神經(jīng)網(wǎng)絡(luò)具有離散的層,每一次只連接符合數(shù)據(jù)傳播方向的其它層。
例如,我們可以把一幅圖像切分成圖像塊,輸入到神經(jīng)網(wǎng)絡(luò)的第一層。在第一層的每一個神經(jīng)元都把數(shù)據(jù)傳遞到第二層。第二層的神經(jīng)元也是完成類似的工作,把數(shù)據(jù)傳遞到第三層,以此類推,直到最后一層,然后生成結(jié)果。
每一個神經(jīng)元都為它的輸入分配權(quán)重,這個權(quán)重的正確與否與其執(zhí)行的任務(wù)直接相關(guān)。最終的輸出由這些權(quán)重加總來決定。
我們?nèi)砸酝V箻酥九茷槔簩⒁粋€停止標志牌圖像的所有元素都打碎,然后用神經(jīng)元進行“檢查”:八邊形的外形、救火車般的紅顏色、鮮明突出的字母、交通標志的典型尺寸和靜止不動運動特性等等。神經(jīng)網(wǎng)絡(luò)的任務(wù)就是給出結(jié)論,它到底是不是一個停止標志牌。神經(jīng)網(wǎng)絡(luò)會根據(jù)所有權(quán)重,給出一個經(jīng)過深思熟慮的猜測——“概率向量”。
這個例子里,系統(tǒng)可能會給出這樣的結(jié)果:86%可能是一個停止標志牌;7%的可能是一個限速標志牌;5%的可能是一個風箏掛在樹上等等。然后網(wǎng)絡(luò)結(jié)構(gòu)告知神經(jīng)網(wǎng)絡(luò),它的結(jié)論是否正確。
即使是這個例子,也算是比較超前了。直到前不久,神經(jīng)網(wǎng)絡(luò)也還是為人工智能圈所淡忘。其實在人工智能出現(xiàn)的早期,神經(jīng)網(wǎng)絡(luò)就已經(jīng)存在了,但神經(jīng)網(wǎng)絡(luò)對于“智能”的貢獻微乎其微。主要問題是,即使是最基本的神經(jīng)網(wǎng)絡(luò),也需要大量的運算,而這種運算需求難以得到滿足。