關(guān)于人工智能在當(dāng)今科技界的發(fā)展水平,學(xué)術(shù)界、產(chǎn)業(yè)界和媒體界可能會有不同的看法。我經(jīng)常聽到的一個說法是:現(xiàn)在基于大數(shù)據(jù)與深度學(xué)習(xí)的人工智能是一種完全新穎的技術(shù)形態(tài),它的出現(xiàn)能夠全面地改變未來人類的社會形態(tài),因為它能夠自主進行“學(xué)習(xí)”,由此大量取代人類勞力。
我認為這里有兩個誤解:第一,深度學(xué)習(xí)并不是新技術(shù);第二,深度學(xué)習(xí)技術(shù)所涉及的“學(xué)習(xí)”與人類的學(xué)習(xí)并不是一回事,因為它不能真正“深度”地理解它所面對的信息。
深度學(xué)習(xí)不是新技術(shù)
從技術(shù)史角度看,深度學(xué)習(xí)技術(shù)的前身,其實就是在20世紀(jì)80年代就已經(jīng)熱鬧過一陣子的“人工神經(jīng)元網(wǎng)絡(luò)”技術(shù)(也叫“連接主義”技術(shù))。
該技術(shù)的實質(zhì),是用數(shù)學(xué)建模的辦法建造出一個簡易的人工神經(jīng)元網(wǎng)絡(luò)結(jié)構(gòu),而一個典型的此類結(jié)構(gòu)一般包括三層:輸入單元層、中間單元層與輸出單元層。輸入單元層從外界獲得信息之后,根據(jù)每個單元內(nèi)置的匯聚算法與激發(fā)函數(shù),“決定”是否要向中間單元層發(fā)送進一步的數(shù)據(jù)信息,其過程正如人類神經(jīng)元在接收別的神經(jīng)元送來的電脈沖之后,能根據(jù)自身細胞核內(nèi)電勢位的變化來“決定”是否要向另外的神經(jīng)元遞送電脈沖。
需要注意的是,無論整個系統(tǒng)所執(zhí)行的整體任務(wù)是關(guān)于圖像識別還是自然語言處理,僅僅從系統(tǒng)中單個計算單元自身的運作狀態(tài)出發(fā),觀察者是無從知道相關(guān)整體任務(wù)的性質(zhì)的。毋寧說,整個系統(tǒng)其實是以“化整為零”的方式,將宏觀層面上的識別任務(wù)分解為了系統(tǒng)組成構(gòu)件之間的微觀信息傳遞活動,并通過這些微觀信息傳遞活動所體現(xiàn)出來的大趨勢,來模擬人類心智在符號層面上所進行的信息處理進程。
工程師調(diào)整系統(tǒng)的微觀信息傳遞活動之趨勢的基本方法如下:先是讓系統(tǒng)對輸入信息進行隨機處理,然后將處理結(jié)果與理想處理結(jié)果進行比對。若二者吻合度不佳,則系統(tǒng)觸發(fā)自帶的“反向傳播算法”來調(diào)整系統(tǒng)內(nèi)各個計算單元之間的聯(lián)系權(quán)重,使得系統(tǒng)給出的輸出與前一次輸出不同。兩個單元之間的聯(lián)系權(quán)重越大,二者之間就越可能發(fā)生“共激發(fā)”現(xiàn)象,反之亦然。然后,系統(tǒng)再次比對實際輸出與理想輸出,如果二者吻合度依然不佳,則系統(tǒng)再次啟動反向傳播算法,直至實際輸出與理想輸出彼此吻合為止。
完成此番訓(xùn)練過程的系統(tǒng),除了能夠?qū)τ?xùn)練樣本進行準(zhǔn)確的語義歸類之外,一般也能對那些與訓(xùn)練樣本比較接近的輸入信息進行相對準(zhǔn)確的語義歸類。譬如,如果一個系統(tǒng)已被訓(xùn)練得能夠識別既有相片庫里的哪些相片是張三的臉,那么,即使是一張從未進入相片庫的新的張三照片,也能夠被系統(tǒng)迅速識別為張三的臉。
如果讀者對于上述技術(shù)描述還似懂非懂,不妨通過下面這個比方來進一步理解人工神經(jīng)元網(wǎng)絡(luò)技術(shù)的運作機理。假設(shè)一個不懂漢語的外國人跑到少林寺學(xué)武術(shù),師生之間的教學(xué)活動該如何開展?有兩種情況:第一種情況是,二者之間能夠進行語言交流(外國人懂漢語或者少林寺師傅懂外語),這樣一來,師傅就能夠直接通過“給出規(guī)則”的方式教授他的外國徒弟。這種教育方法,或可勉強類比基于規(guī)則的人工智能路數(shù)。
另一種情況是,師傅與徒弟語言完全不通,在這種情況下,學(xué)生又該如何學(xué)武呢?唯有靠如下辦法:徒弟先觀察師傅的動作,然后跟著學(xué),師傅則通過簡單的肢體交流來告訴徒弟,這個動作學(xué)得對不對(譬如,如果對,師傅就微笑;如果不對,師傅則棒喝徒弟)。進而,如果師傅肯定了徒弟的某個動作,徒弟就會記住這個動作,繼續(xù)往下學(xué);如果不對,徒弟就只好去猜測自己哪里錯了,并根據(jù)這種猜測給出一個新動作,并繼續(xù)等待師傅的反饋,直到師傅最終滿意為止。很顯然,這樣的武術(shù)學(xué)習(xí)效率是非常低的,因為徒弟在胡猜自己的動作哪里出錯時會浪費大量的時間。但“胡猜”二字恰恰切中了人工神經(jīng)元網(wǎng)絡(luò)運作的實質(zhì)。概而言之,這樣的人工智能系統(tǒng)其實并不知道自己得到的輸入信息到底意味著什么——換言之,此系統(tǒng)的設(shè)計者并不能與系統(tǒng)進行符號層面上的交流,正如在前面的例子中師傅是無法與徒弟進行言語交流一樣。而這種低效學(xué)習(xí)的“低效性”之所以在計算機那里能夠得到容忍,則緣于計算機相比于自然人而言的一個巨大優(yōu)勢:計算機可以在很短的物理時間內(nèi)進行海量次數(shù)的“胡猜”,并由此遴選出一個比較正確的解。一旦看清楚了里面的機理,我們就不難發(fā)現(xiàn):人工神經(jīng)元網(wǎng)絡(luò)的工作原理其實是非常笨拙的。
“深度學(xué)習(xí)”應(yīng)該是“深層學(xué)習(xí)”
那么,為何“神經(jīng)元網(wǎng)絡(luò)技術(shù)”現(xiàn)在又有了“深度學(xué)習(xí)”這個后繼者呢?這個新名目又是啥意思呢?
不得不承認,“深度學(xué)習(xí)”是一個帶有迷惑性的名目,因為它會誘使很多外行認為人工智能系統(tǒng)已經(jīng)可以像人類那樣“深度地”理解自己的學(xué)習(xí)內(nèi)容了。但真實情況是:按照人類的“理解”標(biāo)準(zhǔn),這樣的系統(tǒng)對原始信息最膚淺的理解也無法達到。
為了避免此類誤解,筆者比較贊成將“深度學(xué)習(xí)”稱為“深層學(xué)習(xí)”。因為該詞的英文原文“deeplearning”技術(shù)的真正含義,就是將傳統(tǒng)的人工神經(jīng)元網(wǎng)絡(luò)進行技術(shù)升級,即大大增加其隱藏單元層的數(shù)量。這樣做的好處,是能夠增大整個系統(tǒng)的信息處理機制的細膩度,使得更多的對象特征能夠在更多的中間層中得到安頓。
比如,在人臉識別的深度學(xué)習(xí)系統(tǒng)中,更多的中間層次能夠更為細膩地處理初級像素、色塊邊緣、線條組合、五官輪廓等處在不同抽象層面上的特征。這樣的細膩化處理方式當(dāng)然能夠大大提高整個系統(tǒng)的識別能力。
但需要看到,由此類“深度”化要求所帶來的整個系統(tǒng)的數(shù)學(xué)復(fù)雜性與數(shù)據(jù)的多樣性,自然會對計算機硬件以及訓(xùn)練用的數(shù)據(jù)量提出很高的要求。這也就解釋了為何深度學(xué)習(xí)技術(shù)在21世紀(jì)后才逐漸流行,正是最近十幾年以來計算機領(lǐng)域內(nèi)突飛猛進的硬件發(fā)展,以及互聯(lián)網(wǎng)普及所帶來的巨大數(shù)據(jù)量,才為深度學(xué)習(xí)技術(shù)的落地開花提供了基本保障。
但有兩個瓶頸阻礙了神經(jīng)元網(wǎng)絡(luò)-深度學(xué)習(xí)技術(shù)進一步“智能化”:
第一,一旦系統(tǒng)經(jīng)過訓(xùn)練而變得收斂了,那么系統(tǒng)的學(xué)習(xí)能力就下降了,也就是說,系統(tǒng)無法根據(jù)新的輸入調(diào)整權(quán)重。這可不是我們的終極理想。我們的理想是:假定由于訓(xùn)練樣本庫自身的局限性,網(wǎng)絡(luò)過早地收斂了,那么面對新樣本時,它依然能夠自主地修訂原來形成的輸入-輸出映射關(guān)系,并使得這種修訂能夠兼顧舊有的歷史和新出現(xiàn)的數(shù)據(jù)。但現(xiàn)有技術(shù)無法支持這個看似宏大的技術(shù)設(shè)想。設(shè)計者目前所能夠做的,就是把系統(tǒng)的歷史知識歸零,把新的樣本納入樣本庫,然后從頭開始訓(xùn)練。在這里我們無疑又一次看到了讓人不寒而栗的“西西弗斯循環(huán)”。
第二,正如前面的例子所展現(xiàn)給我們的,在神經(jīng)元網(wǎng)絡(luò)-深度學(xué)習(xí)模式識別的過程中,設(shè)計者的很多心力都花費在對于原始樣本的特征提取上。很顯然,同樣的原始樣本會在不同的設(shè)計者那里具有不同的特征提取模式,而這又會導(dǎo)致不同的神經(jīng)元網(wǎng)絡(luò)-深度學(xué)習(xí)建模方向。對人類編程員來說,這正是體現(xiàn)自己創(chuàng)造性的好機會,但對于系統(tǒng)本身來說,這等于剝奪了它自身進行創(chuàng)造性活動的機會。試想:一個被如此設(shè)計出來的神經(jīng)元網(wǎng)絡(luò)-深度學(xué)習(xí)結(jié)構(gòu),能夠自己觀察原始樣本,找到合適的特征提取模式,并設(shè)計出自己的拓撲學(xué)結(jié)構(gòu)嗎?看來很難,因為這似乎要求該結(jié)構(gòu)背后有一個元結(jié)構(gòu),能夠?qū)υ摻Y(jié)構(gòu)本身給出反思性的表征。關(guān)于這個元結(jié)構(gòu)應(yīng)當(dāng)如何被程序化,我們目前依然是一團霧水——因為實現(xiàn)這個元結(jié)構(gòu)功能的,正是我們?nèi)祟愖约骸W屓耸氖?,盡管深度學(xué)習(xí)技術(shù)帶有這些基本缺陷,但目前的主流人工智能界已經(jīng)被“洗腦”,認為深度學(xué)習(xí)技術(shù)就已經(jīng)等于人工智能的全部。一種基于小數(shù)據(jù),更加靈活、更為通用的人工智能技術(shù),顯然還需要人們投入更多的心力。從純學(xué)術(shù)角度看,我們離這個目標(biāo)還很遠。