馮志偉
摘 要:介紹了自然語(yǔ)言處理中的神經(jīng)語(yǔ)言模型,討論了大腦神經(jīng)網(wǎng)絡(luò)、人工神經(jīng)網(wǎng)絡(luò)、“異或”問(wèn)題、前饋神經(jīng)網(wǎng)絡(luò)、神經(jīng)網(wǎng)絡(luò)的歷史分期及其進(jìn)一步發(fā)展等;指出,在神經(jīng)網(wǎng)絡(luò)的研究中,感知機(jī)不能解決線性不可分的分類問(wèn)題,通過(guò)增加隱藏層才能進(jìn)行“異或”運(yùn)算。通常情況下,在訓(xùn)練神經(jīng)網(wǎng)絡(luò)的同時(shí),還要進(jìn)行嵌入學(xué)習(xí),對(duì)于機(jī)器翻譯、情感分類、句法剖析這些自然語(yǔ)言處理的特殊任務(wù),常常要加上很強(qiáng)的約束,并應(yīng)當(dāng)把基于語(yǔ)言規(guī)則的理性主義方法和基于大數(shù)據(jù)的經(jīng)驗(yàn)主義方法結(jié)合起來(lái)。
關(guān)鍵詞:大腦神經(jīng)網(wǎng)絡(luò);人工神經(jīng)網(wǎng)絡(luò);“異或”問(wèn)題;感知機(jī);前饋神經(jīng)網(wǎng)絡(luò)
中圖分類號(hào):TP18? 文獻(xiàn)標(biāo)識(shí)碼:A? 文章編號(hào):1004-8634(2021)02-110-(13)
DOI:10.13852/J.CNKI.JSHNU.2021.02.012
語(yǔ)言是觀察人類智能的重要窗口,自然語(yǔ)言處理(Natural Language Processing, 縮寫(xiě)NLP)是人工智能皇冠上的明珠。1近年來(lái),特別是2012年以來(lái),神經(jīng)網(wǎng)絡(luò)(Neural Network,縮寫(xiě)NN)和深度學(xué)習(xí)(Deep Learning, 縮寫(xiě)DL)方法在自然語(yǔ)言處理中得到廣泛應(yīng)用,并且逐漸成為自然語(yǔ)言處理研究中的主流技術(shù)。
目前,神經(jīng)網(wǎng)絡(luò)方法有效提高了自然語(yǔ)言系統(tǒng)的處理水平,把自然語(yǔ)言處理的發(fā)展推向了一個(gè)嶄新的階段,我們應(yīng)當(dāng)加以特別關(guān)注。2
神經(jīng)網(wǎng)絡(luò)是自然語(yǔ)言處理的一種基本的計(jì)算工具,并且是出現(xiàn)得很早的一種工具。之所以叫作“神經(jīng)”,是因?yàn)樗醋?943年心理學(xué)家麥卡洛克(Warren McCulloch)和數(shù)學(xué)家皮茨(Walter Pitts)提出的“神經(jīng)元”(Neuron)。神經(jīng)元是一種人類神經(jīng)的可計(jì)算單元的簡(jiǎn)化模型,可以使用命題邏輯(Propositional Logic)來(lái)描述。
人工神經(jīng)網(wǎng)絡(luò)是由一些小的計(jì)算單元構(gòu)成的網(wǎng)絡(luò),神經(jīng)網(wǎng)絡(luò)中的每一個(gè)單元取一個(gè)輸入值向量,產(chǎn)生一個(gè)輸出值。因?yàn)槿斯ど窠?jīng)網(wǎng)絡(luò)在其計(jì)算過(guò)程中要反復(fù)地從神經(jīng)網(wǎng)絡(luò)的一個(gè)層(Layer)饋入另一層,要穿越若干層,因而是一種有深度的網(wǎng)絡(luò),我們常常把這種基于人工神經(jīng)網(wǎng)絡(luò)的機(jī)器學(xué)習(xí)(Machine Learning)叫作“深度學(xué)習(xí)”。
一、大腦神經(jīng)網(wǎng)絡(luò)
人類的智能行為都與大腦活動(dòng)有關(guān)。大腦是神經(jīng)器官,與人體的其他器官(如消化器官、呼吸器官、血液循環(huán)器官)不同,它可以產(chǎn)生感覺(jué)、知覺(jué)和情感。大腦是一個(gè)神經(jīng)系統(tǒng),由神經(jīng)元、神經(jīng)干細(xì)胞、神經(jīng)膠質(zhì)細(xì)胞以及血管組成。神經(jīng)元能夠攜帶和傳輸信息,是人腦神經(jīng)系統(tǒng)中最基本的單元。神經(jīng)元個(gè)數(shù)眾多,大約有860億個(gè),它們之間通過(guò)上千個(gè)突觸相連接(神經(jīng)元之間的連接構(gòu)成一個(gè)巨大的復(fù)雜網(wǎng)絡(luò),其總長(zhǎng)度達(dá)數(shù)千公里),形成一個(gè)極為復(fù)雜的神經(jīng)網(wǎng)絡(luò),叫作“大腦神經(jīng)網(wǎng)絡(luò)”(Brain Nearal Netwrok)。受到人類大腦神經(jīng)網(wǎng)絡(luò)的啟發(fā),早期的神經(jīng)科學(xué)家們構(gòu)造了一種模仿人類大腦神經(jīng)系統(tǒng)的數(shù)學(xué)模型(由很多人工神經(jīng)元組合而成,這些人工神經(jīng)元之間的連接強(qiáng)度可以通過(guò)機(jī)器自動(dòng)學(xué)習(xí)的方式來(lái)自動(dòng)地獲取),叫作“人工神經(jīng)網(wǎng)絡(luò)”(Artificial Neural Network)。與大腦神經(jīng)網(wǎng)絡(luò)相比,人工神經(jīng)網(wǎng)絡(luò)相對(duì)要簡(jiǎn)單得多。
1904年,科學(xué)家就已經(jīng)發(fā)現(xiàn),人類大腦中典型的神經(jīng)元結(jié)構(gòu)大致可包括細(xì)胞體(Soma)、樹(shù)突(Dendrite)和軸突(Axons)三部分。細(xì)胞體主要由細(xì)胞核和細(xì)胞膜構(gòu)成,細(xì)胞膜上有各種受體(與相應(yīng)的化學(xué)物質(zhì)神經(jīng)遞質(zhì)相結(jié)合能改變離子的通透性及膜內(nèi)外電位差,從而使神經(jīng)細(xì)胞產(chǎn)生興奮或抑制的生理活動(dòng))和離子通道。樹(shù)突和軸突(統(tǒng)稱細(xì)胞突起,每個(gè)神經(jīng)元可以有一個(gè)或多個(gè)樹(shù)突,但軸突只有一個(gè))是從細(xì)胞體主體延伸出來(lái)的細(xì)長(zhǎng)部分,前者的功能是接受刺激并將興奮傳入細(xì)胞體,后者的功能是把自身的興奮狀態(tài)從細(xì)胞體由軸突末梢傳送到另外的神經(jīng)元或其他組織。圖1是典型的大腦神經(jīng)元結(jié)構(gòu)。
神經(jīng)元與神經(jīng)元之間留有20納米左右的縫隙,但它們相互間卻可以傳遞信息。神經(jīng)元之間的信息傳遞是靠突觸(Synapse,是軸突末梢各分支末端與其他多個(gè)神經(jīng)元的樹(shù)突相接觸形成的,它是神經(jīng)元之間連接的接口)來(lái)完成的。每個(gè)神經(jīng)元只有興奮和抑制兩種狀態(tài),由其他神經(jīng)元的輸入信號(hào)量及突觸抑制或興奮的強(qiáng)度來(lái)決定:當(dāng)接收到的信號(hào)量總和超過(guò)了某個(gè)閾值時(shí),細(xì)胞體就會(huì)興奮,相反就會(huì)抑制,從而產(chǎn)生不同強(qiáng)度的電脈沖。一個(gè)神經(jīng)元接收到信息并形成電脈沖后,電脈沖會(huì)沿著自己的軸突并通過(guò)突觸把信息再傳遞給其他神經(jīng)元,而其他神經(jīng)元根據(jù)接收到的信號(hào)量及突觸抑制或興奮的強(qiáng)度形成自己的狀態(tài)并產(chǎn)生電脈沖。神經(jīng)元之間的信息傳遞就是通過(guò)這種方式實(shí)現(xiàn)的。
一個(gè)人的智力并不是完全由先天的遺傳決定的,大部分來(lái)自后天的生活經(jīng)驗(yàn),是通過(guò)在生活中不斷地學(xué)習(xí)而獲得的。因此,大腦神經(jīng)網(wǎng)絡(luò)是一個(gè)具有學(xué)習(xí)能力的系統(tǒng),它可以通過(guò)不斷的學(xué)習(xí)而得到改進(jìn)。那么人類大腦是如何進(jìn)行學(xué)習(xí)的呢?
大腦神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的秘訣不在于單個(gè)的神經(jīng)元,而在于神經(jīng)元之間的連接強(qiáng)度。不同神經(jīng)元之間突觸的信號(hào)有強(qiáng)有弱,強(qiáng)的信號(hào)會(huì)使神經(jīng)元間的連接增強(qiáng)。通過(guò)學(xué)習(xí)或訓(xùn)練,可以增強(qiáng)突觸的信號(hào)強(qiáng)度,形成“記憶印痕”,使相關(guān)的神經(jīng)元產(chǎn)生記憶,從而增強(qiáng)這些神經(jīng)元之間的聯(lián)系。
1949年,加拿大心理學(xué)家赫布(Donald Hebb)提出突觸可塑性的基本原理。1他指出,如果兩個(gè)神經(jīng)元總是相關(guān)聯(lián)地受到刺激,那么,它們之間的突觸強(qiáng)度會(huì)增加。舉例來(lái)說(shuō),當(dāng)A神經(jīng)元的一個(gè)軸突和B神經(jīng)元接近到足以對(duì)其產(chǎn)生影響,并持續(xù)、重復(fù)地參與對(duì)B神經(jīng)元的興奮過(guò)程,那么,這兩個(gè)神經(jīng)元或其中的一個(gè)就會(huì)發(fā)生某種“新陳代謝”的變化,A神經(jīng)元就成為導(dǎo)致B神經(jīng)元“興奮”的一個(gè)細(xì)胞,從而加強(qiáng)了后者的效能。這個(gè)原理叫作“赫布規(guī)則”(Hebb Rule)。赫布認(rèn)為人的大腦有短期和長(zhǎng)期兩種記憶,短期記憶持續(xù)的時(shí)間不超過(guò)一分鐘。如果短期記憶獲得的經(jīng)驗(yàn)重復(fù)足夠的次數(shù),這個(gè)經(jīng)驗(yàn)就可以長(zhǎng)期儲(chǔ)存在記憶中,從而轉(zhuǎn)化為長(zhǎng)期記憶,這個(gè)過(guò)程叫作“凝固作用”(人腦中的海馬區(qū)就是大腦結(jié)構(gòu)凝固作用的核心區(qū)域)。
二、人工神經(jīng)網(wǎng)絡(luò)
如前所述,人工神經(jīng)網(wǎng)絡(luò)本質(zhì)上是受到大腦神經(jīng)網(wǎng)絡(luò)的啟發(fā)而建立的數(shù)學(xué)模型。這一模型對(duì)大腦神經(jīng)網(wǎng)絡(luò)進(jìn)行抽象來(lái)構(gòu)建人工神經(jīng)元,并且按照一定的拓?fù)浣Y(jié)構(gòu)建立起人工神經(jīng)元之間的連接,從而模擬人類大腦。在人工智能領(lǐng)域,人工神經(jīng)網(wǎng)絡(luò)也常常簡(jiǎn)稱為“神經(jīng)網(wǎng)絡(luò)”或“神經(jīng)模型”(Neural Model,縮寫(xiě)NM)。人工神經(jīng)網(wǎng)絡(luò)從結(jié)構(gòu)、實(shí)現(xiàn)機(jī)理和功能等方面來(lái)模擬人類大腦神經(jīng)網(wǎng)絡(luò),其結(jié)構(gòu)如圖2所示。從第一個(gè)神經(jīng)元的軸突傳送的信息x0經(jīng)過(guò)突觸時(shí),被賦予了權(quán)重w0,以w0x0的值傳送到當(dāng)前神經(jīng)元的樹(shù)突,進(jìn)入細(xì)胞體。同樣,從第二個(gè)神經(jīng)元的軸突傳送的信息x1經(jīng)過(guò)突觸時(shí),被賦予了權(quán)重w1,以w1x1的值傳送到當(dāng)前神經(jīng)元的樹(shù)突,進(jìn)入細(xì)胞體;從第三個(gè)神經(jīng)元的軸突傳送的信息x2經(jīng)過(guò)突觸時(shí),被賦予了權(quán)重w2,以w2x2的值傳送到當(dāng)前神經(jīng)元的樹(shù)突,進(jìn)入細(xì)胞體;從第i個(gè)神經(jīng)元的軸突傳送的信息xi經(jīng)過(guò)突觸時(shí),被賦予了權(quán)重wi,以wixi的值傳送到當(dāng)前神經(jīng)元的樹(shù)突,進(jìn)入細(xì)胞體。
在細(xì)胞體有一個(gè)激勵(lì)函數(shù)(Activation Function),記為f,這個(gè)激勵(lì)函數(shù)控制著wixi,當(dāng)wixi的值大于某一個(gè)閾值時(shí)輸出1,否則輸出0,這樣,在這個(gè)神經(jīng)元的軸突上,便可以得到一個(gè)被激勵(lì)函數(shù)f控制的輸出(Output Axon):
其中,wi表示權(quán)重,xi表示輸入信息,b表示偏置(Bias)。
人工神經(jīng)網(wǎng)絡(luò)模仿大腦神經(jīng)網(wǎng)絡(luò)中神經(jīng)元的原理,由若干個(gè)人工神經(jīng)元相互連接而成,可以用來(lái)對(duì)各種數(shù)據(jù)之間的復(fù)雜關(guān)系進(jìn)行建模。建模的時(shí)候,給不同人工神經(jīng)元之間的連接賦予不同的權(quán)重,每個(gè)權(quán)重代表一個(gè)人工神經(jīng)元對(duì)另一個(gè)人工神經(jīng)元影響的強(qiáng)度。每一個(gè)神經(jīng)元可以表示一個(gè)特定的函數(shù),來(lái)自其他人工神經(jīng)元的信息經(jīng)過(guò)與之相應(yīng)的權(quán)重綜合計(jì)算,輸入到一個(gè)激勵(lì)函數(shù)中并得到一個(gè)表示興奮或抑制的新值。
從系統(tǒng)的觀點(diǎn)來(lái)看,人工神經(jīng)網(wǎng)絡(luò)是由大量的神經(jīng)元通過(guò)非常豐富和完善的連接而構(gòu)成的自適應(yīng)非線性動(dòng)態(tài)系統(tǒng)(Self-adaptive Non-linear Dynamic System)。
盡管我們能夠比較容易地構(gòu)造一個(gè)人工神經(jīng)網(wǎng)絡(luò),但是如何讓這樣的人工神經(jīng)網(wǎng)絡(luò)具備自動(dòng)學(xué)習(xí)的能力并不是一件容易的事情。
早期的神經(jīng)網(wǎng)絡(luò)模型并不具備自動(dòng)學(xué)習(xí)的能力。第一個(gè)可以自動(dòng)學(xué)習(xí)的人工神經(jīng)網(wǎng)絡(luò)是赫布網(wǎng)絡(luò)(Hebb Network),它采用了一種基于赫布規(guī)則的無(wú)監(jiān)督機(jī)器學(xué)習(xí)算法(Unsupervised Machine Learning Algorithm)。感知機(jī)(Perceptron)是最早的具有機(jī)器自動(dòng)學(xué)習(xí)能力的神經(jīng)網(wǎng)絡(luò),但是它的自動(dòng)學(xué)習(xí)方法無(wú)法擴(kuò)展到多層神經(jīng)網(wǎng)絡(luò)上(詳見(jiàn)后文)。直到1980年前后反向傳播算法(Back Propagation Algorithm,簡(jiǎn)稱BP算法)提出后,才有效地解決了多層神經(jīng)網(wǎng)絡(luò)的自動(dòng)學(xué)習(xí)問(wèn)題,而反向傳播算法也就成為最為流行的神經(jīng)網(wǎng)絡(luò)自動(dòng)學(xué)習(xí)算法。
人工神經(jīng)網(wǎng)絡(luò)誕生之初并不關(guān)注機(jī)器自動(dòng)學(xué)習(xí)問(wèn)題。由于人工神經(jīng)網(wǎng)絡(luò)可以被看作一個(gè)通用的函數(shù)逼近器,一個(gè)具有兩個(gè)層級(jí)的人工神經(jīng)網(wǎng)絡(luò)可以逼近任意函數(shù),因此,人工神經(jīng)網(wǎng)絡(luò)就可以被看作一個(gè)可以進(jìn)行自動(dòng)學(xué)習(xí)的函數(shù),并能夠應(yīng)用到機(jī)器自動(dòng)學(xué)習(xí)中。從理論上說(shuō),人工神經(jīng)網(wǎng)絡(luò)只要具有足夠數(shù)量的訓(xùn)練數(shù)據(jù)和神經(jīng)元,就可以自動(dòng)地學(xué)習(xí)到很多復(fù)雜的函數(shù)。人工神經(jīng)網(wǎng)絡(luò)模型自動(dòng)學(xué)習(xí)任何函數(shù)能力的大小叫作網(wǎng)絡(luò)容量(Network Capacity),網(wǎng)絡(luò)容量的大小與存儲(chǔ)在網(wǎng)絡(luò)中信息的復(fù)雜程度以及數(shù)量的多少有關(guān)。
神經(jīng)網(wǎng)絡(luò)最早是一種連接主義模型(Connectionism Model)。20世紀(jì)80年代后期,最為流行的連接主義模型是分布式并行處理(Parallel Distributed Processing,縮寫(xiě)PDP)網(wǎng)絡(luò)。
這種分布式并行處理網(wǎng)絡(luò)有3個(gè)主要特性:它的信息表示是分布式的;它的記憶和知識(shí)存儲(chǔ)都是通過(guò)單元與單元之間的連接來(lái)進(jìn)行的;它要通過(guò)逐漸改變單元與單元之間的連接強(qiáng)度來(lái)自動(dòng)地學(xué)習(xí)新的知識(shí)。
連接主義的人工神經(jīng)網(wǎng)絡(luò)有著多種多樣的網(wǎng)絡(luò)結(jié)構(gòu)和機(jī)器自動(dòng)學(xué)習(xí)的方法。雖然早期的人工神經(jīng)網(wǎng)絡(luò)強(qiáng)調(diào)模型的生物可解釋性(Biological Plausibility),但后期更關(guān)注對(duì)某種特定認(rèn)知能力的模擬,比如物體識(shí)別、自然語(yǔ)言理解等。尤其在引入反向傳播算法來(lái)改進(jìn)其學(xué)習(xí)能力后,人工神經(jīng)網(wǎng)絡(luò)也越來(lái)越多地應(yīng)用于各種模式識(shí)別(Pattern Recognition)任務(wù)中。隨著訓(xùn)練數(shù)據(jù)的增多以及并行計(jì)算能力的增強(qiáng),人工神經(jīng)網(wǎng)絡(luò)在很多模式識(shí)別的任務(wù)中已經(jīng)取得了很大的突破,特別是在語(yǔ)音、圖像等感知信號(hào)的處理上,人工神經(jīng)網(wǎng)絡(luò)表現(xiàn)出了卓越的自動(dòng)學(xué)習(xí)能力。
從機(jī)器自動(dòng)學(xué)習(xí)的角度來(lái)看,人工神經(jīng)網(wǎng)絡(luò)可以被看作一個(gè)非線性模型,它的基本組成單元是具有非線性激活函數(shù)的神經(jīng)元,通過(guò)大量神經(jīng)元間的連接,使得人工神經(jīng)網(wǎng)絡(luò)成為一種高度的非線性模型。神經(jīng)元間的連接權(quán)重就是需要機(jī)器自動(dòng)學(xué)習(xí)的參數(shù),這些參數(shù)可以通過(guò)梯度下降(Gradient Descent)的方法來(lái)進(jìn)行自動(dòng)學(xué)習(xí)。
1957年,美國(guó)康奈爾航天實(shí)驗(yàn)室的心理學(xué)家羅森布拉特(Frank Rosenblatt)根據(jù)大腦神經(jīng)元的原理與赫布規(guī)則,建立了感知機(jī)的數(shù)學(xué)模型。感知機(jī)是最簡(jiǎn)單的人工神經(jīng)網(wǎng)絡(luò),它只有一個(gè)神經(jīng)元。
感知機(jī)作為簡(jiǎn)化的數(shù)學(xué)模型可以解釋大腦神經(jīng)元是如何工作的,它從附近的神經(jīng)元中取一組輸入值x1,x2,x3,…… xi,將每個(gè)輸入值乘以一個(gè)連續(xù)值權(quán)重w1,w2,w3, ……wi,這個(gè)權(quán)重也就是每個(gè)附近的神經(jīng)元突觸的強(qiáng)度,輸入信息可以表示為:
感知機(jī)還要為偏置設(shè)立一個(gè)閾值θ。如果加權(quán)輸入值的和超過(guò)了這個(gè)閾值θ,那么,就輸出1,這時(shí),y=1,神經(jīng)元興奮;如果加權(quán)輸入值的和等于或者低于這個(gè)閾值θ,那么,就輸出0,這時(shí),y=0,神經(jīng)元抑制。如圖3所示。
有了這樣的神經(jīng)元,感知機(jī)就可以對(duì)操作對(duì)象進(jìn)行線性分類(Linear Classification)了。因此,感知機(jī)是一種簡(jiǎn)單的線性分類模型。
感知機(jī)是對(duì)大腦神經(jīng)網(wǎng)絡(luò)簡(jiǎn)單的數(shù)學(xué)模擬,它有與大腦神經(jīng)網(wǎng)絡(luò)的神經(jīng)元相對(duì)應(yīng)的部件,其權(quán)重wi相當(dāng)于大腦神經(jīng)網(wǎng)絡(luò)神經(jīng)元的突觸,閾值θ的控制機(jī)制相當(dāng)于大腦神經(jīng)網(wǎng)絡(luò)細(xì)胞體的功能。這樣的感知機(jī)是具有自動(dòng)學(xué)習(xí)能力的。
通過(guò)調(diào)整感知機(jī)輸入值的權(quán)重,可以提出一個(gè)非常簡(jiǎn)單而直觀的機(jī)器自動(dòng)學(xué)習(xí)方案:給定一個(gè)有輸入輸出實(shí)例的訓(xùn)練集,感知機(jī)從實(shí)例中自動(dòng)地學(xué)習(xí)一個(gè)激勵(lì)函數(shù)f(對(duì)每個(gè)實(shí)例,如果感知機(jī)的輸出值比實(shí)例低,則增加它的權(quán)重;如果感知機(jī)的輸出值比實(shí)例高,則減少它的權(quán)重)。
具體的機(jī)器學(xué)習(xí)算法如下:(1)從感知機(jī)的隨機(jī)權(quán)重以及一個(gè)訓(xùn)練集開(kāi)始。(2)對(duì)訓(xùn)練集中一個(gè)實(shí)例的輸入值x1, x2, x3, x4,…… 計(jì)算感知機(jī)的輸出值y1。(3)如果感知機(jī)的輸出值與實(shí)例中默認(rèn)正確的輸出值不同,則做如下處理:若輸出值應(yīng)該為0但實(shí)際為1,則減少輸入值實(shí)例的權(quán)重;若輸出值應(yīng)該為1但實(shí)際為0,則增加輸入值實(shí)例的權(quán)重。(4)對(duì)訓(xùn)練集中下一個(gè)實(shí)例執(zhí)行同樣的操作,重復(fù)步驟(2)—(4),直到感知機(jī)不再出錯(cuò)為止。如圖4所示,輸入(Input)x1, x2, x3, x4,……由感知機(jī)的神經(jīng)元激勵(lì)函數(shù)f控制,得到輸出y1。
羅森布拉特根據(jù)感知機(jī)的數(shù)學(xué)原理,制造出了感知機(jī)的硬件,這種感知機(jī)可以用來(lái)對(duì)20×20像素輸入中的簡(jiǎn)單形狀進(jìn)行正確分類。這臺(tái)感知機(jī)硬件可以從已知的“輸入—輸出”偶對(duì)中得出近似函數(shù),因而實(shí)現(xiàn)了機(jī)器學(xué)習(xí),這是世界上第一臺(tái)可以進(jìn)行機(jī)器學(xué)習(xí)的計(jì)算機(jī)。盡管當(dāng)時(shí)它只學(xué)習(xí)了一些簡(jiǎn)單的函數(shù),但是由此不難想象它廣闊的應(yīng)用前景。羅森布拉特用他的感知機(jī)自動(dòng)地識(shí)別了手寫(xiě)體的阿拉伯?dāng)?shù)字,這是世界上首次實(shí)現(xiàn)的自動(dòng)文字識(shí)別。
羅森布拉特最早提出了兩類感知機(jī)算法,隨后又給出了感知機(jī)收斂定理。但是由于感知機(jī)的輸出是離散的,其學(xué)習(xí)算法還比較簡(jiǎn)單,限制了其應(yīng)用范圍。
1969年,明斯基(Minsky)和帕佩特(Seymour Papert)在《感知機(jī):計(jì)算幾何導(dǎo)論》一書(shū)中分析了感知機(jī)的局限性,指出感知機(jī)存在如下兩個(gè)關(guān)鍵問(wèn)題:1第一,感知機(jī)不能解決線性不可分的分類問(wèn)題(“異或”問(wèn)題,在現(xiàn)實(shí)生活中廣泛存在)。第二,訓(xùn)練以感知機(jī)為基礎(chǔ)的實(shí)用神經(jīng)網(wǎng)絡(luò)模型需要龐大的計(jì)算資源和計(jì)算能力,當(dāng)時(shí)的技術(shù)條件還不具備現(xiàn)實(shí)可行性。在這種情況下,感知機(jī)的研究進(jìn)入了十多年的“低谷”。
三、“異或”問(wèn)題
如前所述,明斯基和帕佩特指出,像感知機(jī)這樣的單獨(dú)的神經(jīng)元不能計(jì)算輸入它的某些簡(jiǎn)單的非線性函數(shù),即“異或”(XOR)函數(shù),這個(gè)函數(shù)是線性不可分的。
我們來(lái)考慮有兩個(gè)輸入x1和x2的邏輯函數(shù)的計(jì)算問(wèn)題,AND運(yùn)算(“與”運(yùn)算)、OR運(yùn)算(“或”運(yùn)算)和XOR運(yùn)算的真值表如圖5:
感知機(jī)可以進(jìn)行AND運(yùn)算和OR運(yùn)算,但明斯基和帕佩特證明了不可能構(gòu)造一個(gè)感知機(jī)來(lái)進(jìn)行XOR運(yùn)算。然而,XOR運(yùn)算在實(shí)際生活中是常見(jiàn)的。例如,在自然界和人類社會(huì)中的“同性相斥、異性相吸”的現(xiàn)象,其邏輯原理就是XOR運(yùn)算,此類問(wèn)題在實(shí)際生活中屢見(jiàn)不鮮。在邏輯上,XOR運(yùn)算是一個(gè)線性不可分問(wèn)題,而感知機(jī)不能解決這樣的線性不可分問(wèn)題,這是感知機(jī)的一個(gè)嚴(yán)重缺陷。
圖6顯示了AND運(yùn)算和OR運(yùn)算的可能的邏輯輸入(00, 01, 10和11),以及根據(jù)一組參數(shù)畫(huà)出的分界直線。用實(shí)心圓點(diǎn)表示正值(Positive Value),用空心圓點(diǎn)表示負(fù)值(Negative Value)。這時(shí),AND運(yùn)算和OR運(yùn)算都能夠把運(yùn)算結(jié)果做出正確的分類,把實(shí)心圓點(diǎn)置于分類線的一側(cè),而把空心圓點(diǎn)置于分類線的另一側(cè)。但是,不存在一種簡(jiǎn)單的方法可以畫(huà)出一條直線把XOR運(yùn)算的實(shí)心圓點(diǎn)(01和10的“異或”運(yùn)算得出的正值)和空心圓點(diǎn)(00和11的“異或”運(yùn)算得出的負(fù)值)分割開(kāi)來(lái)。因此,XOR這個(gè)函數(shù)不是一個(gè)線性可分函數(shù)(Linearly Separable Function),也就是說(shuō),XOR函數(shù)是線性不可分的。當(dāng)然,也可以用曲線或者其他的函數(shù)給實(shí)心圓點(diǎn)和空心圓點(diǎn)勉強(qiáng)畫(huà)出一條分界線,但是,這已經(jīng)不是一條單獨(dú)的直線了。
明斯基和帕佩特尖銳地指出了感知機(jī)的這種缺陷,他們的書(shū)出版后引起了很大反響。于是,學(xué)術(shù)界認(rèn)識(shí)到感知機(jī)不能處理日常生活中很常見(jiàn)的XOR運(yùn)算的線性不可分問(wèn)題,因此,他們對(duì)于感知機(jī)的熱望一落千丈。這給感知器以及人工神經(jīng)網(wǎng)絡(luò)研究的熱潮潑了一瓢冷水,也使得公眾對(duì)于人工神經(jīng)網(wǎng)絡(luò)的期望降到了冰點(diǎn)。
那么,怎樣才能解決XOR運(yùn)算的線性不可分問(wèn)題呢?科學(xué)家們提出了給感知機(jī)設(shè)置“隱藏層”(Hidden Layer)的聰明辦法。2
如果在感知機(jī)中設(shè)置隱藏層h1和h2,如圖7所示(箭頭上的數(shù)字表示每一個(gè)神經(jīng)元的權(quán)值w,偏置b表示在+1處的一個(gè)權(quán)值,偏置的權(quán)值和神經(jīng)元都用淺灰色表示),加入了隱藏層之后,可以使感知機(jī)形成一種新的表示,從而解決了線性不可分問(wèn)題。對(duì)于隱藏層h1和h2,當(dāng)輸入點(diǎn)為x1=[1? 1]和x2=[1? 1]的時(shí)候,其結(jié)果通過(guò)隱藏層在輸出y1處融合為一個(gè)單獨(dú)的點(diǎn),使得它們的計(jì)算結(jié)果在y1處都為負(fù)值(也就是為0),從而解決線性不可分問(wèn)題。這樣,加了隱藏層的感知機(jī)就可以進(jìn)行“異或”運(yùn)算了。下面我們進(jìn)一步解釋“異或”運(yùn)算問(wèn)題。
圖8比較了沒(méi)有加隱藏層的x空間和加了隱藏層的h空間的不同情況。左側(cè)a)表示原來(lái)的x空間(The Original x Space),右側(cè)b)表示加了隱藏層之后的新的h空間(The New h Space)??梢钥闯?,在進(jìn)行XOR運(yùn)算時(shí),在原來(lái)的x空間中,當(dāng)x=[1? 0]與x=[0? 1]時(shí),其輸出值分別處于x0和x1軸上,都為1;而當(dāng)x=[0? 0]與x=[1? 1]時(shí),其輸出值不能處于除了原點(diǎn)之外的x0和x1軸上,都為0,這樣就沒(méi)法對(duì)它們進(jìn)行線性分割。在加了隱藏層的h空間中,可以把網(wǎng)絡(luò)的隱藏層看作形成了一種新的輸入表示,輸入點(diǎn)x=[1? 0]和x=[0? 1]的隱藏代表改變?yōu)閔=[1? 0]的輸出值與h=[0? 1]的輸出值,這時(shí)它們的輸出值都融合為一個(gè)單獨(dú)的點(diǎn)h=[1? 0]了。這樣,由于增加了隱藏層,融合之后就容易對(duì)XOR的負(fù)值(用空心圓點(diǎn)表示)和正值(用實(shí)心圓點(diǎn)表示)線性地進(jìn)行分割了。
在上面圖7的例子中顯示了一些權(quán)重的值,但實(shí)際上,神經(jīng)網(wǎng)絡(luò)的權(quán)重是通過(guò)“反向傳播算法”來(lái)自動(dòng)學(xué)習(xí)到的。這就意味著,隱藏層要通過(guò)“深度學(xué)習(xí)”才能形成有用的表示。神經(jīng)網(wǎng)絡(luò)有能力自動(dòng)地從輸入中學(xué)習(xí)到有用的表示,這是人工神經(jīng)網(wǎng)絡(luò)最為關(guān)鍵的優(yōu)點(diǎn)。
“異或”問(wèn)題的求解要求神經(jīng)網(wǎng)絡(luò)帶有非線性的激活函數(shù),因此,只由一個(gè)簡(jiǎn)單的線性神經(jīng)元(感知機(jī))構(gòu)成的神經(jīng)網(wǎng)絡(luò)是不能解決“異或”問(wèn)題的。需要給感知機(jī)增加一個(gè)或多個(gè)隱藏層,把單層的感知機(jī)進(jìn)一步擴(kuò)充為多層次的感知機(jī),通過(guò)多個(gè)層次來(lái)進(jìn)行深度學(xué)習(xí),就可以解決“異或”這樣的線性不可分問(wèn)題了。顯而易見(jiàn),給感知機(jī)增加隱藏層這樣的聰明辦法,大大地增強(qiáng)了感知機(jī)的效能。
四、前饋神經(jīng)網(wǎng)絡(luò)
直到1980年后,辛頓(Geoffrey Hinton)、樂(lè)坤(Yann LeCun)等人才改進(jìn)了感知機(jī),給其增加隱藏層,把它改造成多層的感知機(jī)(Multi-Layer Perceptron,縮寫(xiě)MLP),使之具有處理線性不可分問(wèn)題的能力。他們還用連續(xù)的輸出代替離散的輸出,并采用反向傳播算法進(jìn)行權(quán)重的自動(dòng)學(xué)習(xí),把反向傳播算法引入多層感知機(jī)中,這樣的多層感知機(jī)就可以進(jìn)行深度學(xué)習(xí)了,感知機(jī)的研究又重新引起人們的關(guān)注。明斯基等人也修正了他們的看法,開(kāi)始大力支持感知機(jī)的研究。
與此同時(shí),人們對(duì)感知機(jī)本身的認(rèn)識(shí)也在不斷發(fā)展。1999年,弗勒伊德(Freund)和沙皮爾(Schapire)提出了使用核技巧來(lái)改進(jìn)多層感知機(jī)的深度學(xué)習(xí)算法,并使用投票感知機(jī)來(lái)提高多層感知機(jī)的泛化能力。2002年,科林斯(Collins)將多層感知機(jī)算法擴(kuò)展到結(jié)構(gòu)化的深度學(xué)習(xí)中,給出了相應(yīng)的收斂性證明,并且提出一種更加有效和實(shí)用的參數(shù)平均化策略。2010年,麥當(dāng)納(McDonald)又?jǐn)U展了平均感知機(jī)算法,使得多層感知機(jī)可以在分布式計(jì)算環(huán)境中進(jìn)行并行計(jì)算,這樣就能使用多層感知機(jī)來(lái)進(jìn)行大規(guī)模的深度學(xué)習(xí)了。
到目前為止,研究者已經(jīng)提出了許多結(jié)構(gòu)各不相同的人工神經(jīng)網(wǎng)絡(luò)。它們都是在感知機(jī)的基礎(chǔ)上發(fā)展起來(lái)的。作為例子,在本文中介紹一種有代表性的人工神經(jīng)網(wǎng)絡(luò)——“前饋神經(jīng)網(wǎng)絡(luò)”(Feed-forward Neural Network,縮寫(xiě)FNN)。不同的人工神經(jīng)網(wǎng)絡(luò)有著不同網(wǎng)絡(luò)連接的拓?fù)浣Y(jié)構(gòu),比較直接的拓?fù)浣Y(jié)構(gòu)是前饋網(wǎng)絡(luò),它是最早提出的多層的人工神經(jīng)網(wǎng)絡(luò)。
在前饋神經(jīng)網(wǎng)絡(luò)中,每一個(gè)神經(jīng)元分別屬于不同的層,每一層的神經(jīng)元可以接收前一層神經(jīng)元的信號(hào),并產(chǎn)生信號(hào)輸出到下一層的神經(jīng)元。第0層神經(jīng)元叫輸入層(Input Layer),最后一層神經(jīng)元叫輸出層(Output Layer),其他處于中間層次的神經(jīng)元叫隱藏層。整個(gè)網(wǎng)絡(luò)中沒(méi)有反饋,信號(hào)x1, x2, x3, x4從輸入層輸入,經(jīng)過(guò)隱藏層,向輸出層進(jìn)行單向傳播,最后在輸出層輸出結(jié)果y1,y2,y3,形成一個(gè)有向非成圈圖。這種前饋神經(jīng)網(wǎng)絡(luò)有若干個(gè)隱藏層,所以也叫多層感知機(jī)。前饋神經(jīng)網(wǎng)絡(luò)中相鄰兩層的神經(jīng)元之間是全連接關(guān)系,也稱為“全連接神經(jīng)網(wǎng)絡(luò)”(Fully Connected Neural Network,縮寫(xiě)FCNN)。其結(jié)構(gòu)如圖9所示。
也可以把這樣的前饋神經(jīng)網(wǎng)絡(luò)看作一個(gè)復(fù)合函數(shù)(Complex Function),它通過(guò)簡(jiǎn)單非線性函數(shù)的多次復(fù)合,實(shí)現(xiàn)輸入空間到輸出空間的復(fù)雜映射。這種網(wǎng)絡(luò)的結(jié)構(gòu)簡(jiǎn)單,易于實(shí)現(xiàn)。
前饋神經(jīng)網(wǎng)絡(luò)作為一種能力很強(qiáng)的非線性模型,在20世紀(jì)80年代后期就已被廣泛使用,但是基本上都是三層網(wǎng)絡(luò)(只有一個(gè)輸入層、一個(gè)隱藏層和一個(gè)輸出層),雖然當(dāng)時(shí)前饋神經(jīng)網(wǎng)絡(luò)的參數(shù)學(xué)習(xí)依然有很多難點(diǎn),但它可以作為連接主義的一個(gè)典型模型,標(biāo)志著人工智能從高度符號(hào)化的知識(shí)期向低符號(hào)化的深度學(xué)習(xí)期的轉(zhuǎn)變。這是人工智能研究中的重要轉(zhuǎn)折點(diǎn)。
在前饋神經(jīng)網(wǎng)絡(luò)中,每個(gè)神經(jīng)元包括兩部分:一部分負(fù)責(zé)線性加權(quán)求和,叫作“線性層”;另外一部分是激勵(lì)函數(shù),由于激勵(lì)函數(shù)都被定義為非線性的,所以又叫作“非線性層”。單層的感知機(jī)中同樣可以使用激勵(lì)函數(shù),但是由于是否使用激勵(lì)函數(shù)并不影響單層感知機(jī)的分類能力,因而往往被忽略。然而在多層感知機(jī)中,激勵(lì)函數(shù)對(duì)于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)能力具有至關(guān)重要的作用;如果在兩個(gè)網(wǎng)絡(luò)層之間沒(méi)有非線性的激勵(lì)函數(shù),不論網(wǎng)絡(luò)有多少層,總體上仍然等價(jià)于一個(gè)線性函數(shù),從數(shù)學(xué)的角度看,與單層感知機(jī)的表達(dá)能力并沒(méi)有什么不同,難以處理線性不可分問(wèn)題。由此可見(jiàn),激勵(lì)函數(shù)大大改善了前饋神經(jīng)網(wǎng)絡(luò)的性能。
在理論上可以證明,只要激勵(lì)函數(shù)能夠滿足特定的寬松條件,那么,對(duì)于任何一個(gè)連續(xù)函數(shù),都存在一個(gè)有限大小而且至少包含一個(gè)隱藏層的神經(jīng)網(wǎng)絡(luò),因而就能夠以任意的精度逼近這個(gè)連續(xù)函數(shù)。
在前饋神經(jīng)網(wǎng)絡(luò)中,輸出層的作用是取隱藏層的表示,并計(jì)算出最后的輸出。這個(gè)輸出可能是一個(gè)實(shí)數(shù),但是在很多場(chǎng)合下,神經(jīng)網(wǎng)絡(luò)的目標(biāo)是進(jìn)行某種分類判定,所以,現(xiàn)在把問(wèn)題的焦點(diǎn)集中到分類(classification)這樣的場(chǎng)合。
在自然語(yǔ)言處理中,如果用前饋神經(jīng)網(wǎng)絡(luò)來(lái)做文本的情感分類這樣簡(jiǎn)單的二元分類,那么可得到一個(gè)單獨(dú)的輸出,而它的值就是正面情感對(duì)于負(fù)面情感的概率值。如果做多元的分類,例如,給文本指派不同的詞類標(biāo)記(Tag of POS),那么,對(duì)每一個(gè)潛在的詞類都會(huì)得到輸出節(jié)點(diǎn),而在輸出節(jié)點(diǎn)上的輸出值就是這個(gè)詞類標(biāo)記的概率,并且所有這些輸出節(jié)點(diǎn)的概率值的總和為1,因此,在輸出層就可以在所有的節(jié)點(diǎn)上給出概率分布。
在神經(jīng)語(yǔ)言模型(Neural Language Model)中,前面的上下文是使用前面單詞的詞嵌入(Word Embedding)來(lái)表示的。把前面的上下文表示為詞嵌入,而不是像在N元語(yǔ)法模型(N-gram Model)中那樣表示為精確的、具體的單詞,這就使得神經(jīng)語(yǔ)言模型能夠泛化為“看不見(jiàn)的數(shù)據(jù)”(Unseen Data),對(duì)于自然語(yǔ)言描述的抽象程度更高,顯然比N元語(yǔ)法模型具有更強(qiáng)的功能。例如,在訓(xùn)練集中可以看到這樣的句子:
I have to make sure when I get home to feed the cat.
在feed the 這樣的單詞串之后是單詞cat。如果在測(cè)試集中試圖預(yù)測(cè)在前面出現(xiàn)另外的單詞系列I forgot when I got home to feed the之后,究竟會(huì)出現(xiàn)什么單詞,應(yīng)當(dāng)怎么辦呢?
根據(jù)訓(xùn)練集的例子,如果使用N元語(yǔ)法模型,就可以預(yù)見(jiàn)到feed the之后的單詞應(yīng)當(dāng)是cat,而不會(huì)是單詞dog。如果使用一個(gè)神經(jīng)語(yǔ)言模型,那么,這個(gè)神經(jīng)語(yǔ)言模型就可以根據(jù)cat和dog具有相似的嵌入(Embedding)這樣的事實(shí),理直氣壯地給dog指派與cat一樣高的概率,從而判斷feed the后面的單詞可能是dog,而做出這種判斷的根據(jù)就僅僅是因?yàn)樗鼈冊(cè)谇度胫芯哂邢嗨频脑~向量。由此可以看到,神經(jīng)語(yǔ)言模型確實(shí)比N元語(yǔ)法模型更勝一籌。1
來(lái)看一看前饋神經(jīng)語(yǔ)言模型在實(shí)際上是怎樣工作的。假定有一部嵌入詞典(Embedding Dictionary)E,對(duì)于普通詞典V中的每一個(gè)單詞,嵌入詞典E都能給出相應(yīng)單詞的詞向量嵌入(Word Vector Embedding,可以使用word2vec算法預(yù)先計(jì)算出來(lái)),這樣,在自然語(yǔ)言處理中就可以直接從嵌入詞典中查詢到單詞的詞向量。2
圖10是前饋神經(jīng)網(wǎng)絡(luò)模型處理一個(gè)文本的示意圖,描述了一個(gè)簡(jiǎn)化的前饋神經(jīng)語(yǔ)言模型的梗概,這個(gè)模型的N=3,在時(shí)間點(diǎn)t有一個(gè)移動(dòng)窗口以及單詞wt前面3個(gè)單詞(單詞[wt-1,wt-2,wt-3])的嵌入向量。這3個(gè)向量毗連起來(lái)構(gòu)成神經(jīng)網(wǎng)絡(luò)的輸入層x,神經(jīng)網(wǎng)絡(luò)的輸出是這些單詞的概率分布,因此,在輸出節(jié)點(diǎn)42上的值y42就是下面標(biāo)為V42的單詞(即詞典中標(biāo)引號(hào)為42的單詞,在這里是lived)的wt的概率。
顯而易見(jiàn),這個(gè)圖是被簡(jiǎn)化了的,因?yàn)閷?duì)圖中的每一個(gè)單詞都已經(jīng)查找出了它在嵌入詞典E中的d維嵌入向量,而且事先使用諸如word2vec這樣的算法進(jìn)行了預(yù)先的計(jì)算。不過(guò),在通常情況下,在訓(xùn)練神經(jīng)網(wǎng)絡(luò)的同時(shí),還要進(jìn)行嵌入學(xué)習(xí)(Embeddding Learning);而且在設(shè)計(jì)神經(jīng)網(wǎng)絡(luò)的時(shí)候,對(duì)于機(jī)器翻譯、情感分類、句法剖析這些自然語(yǔ)言處理的特殊任務(wù),常常要加上一些很強(qiáng)的約束以使輸入的表示更加完美。
五、人工神經(jīng)網(wǎng)絡(luò)的分期及其進(jìn)一步發(fā)展
人工神經(jīng)網(wǎng)絡(luò)的發(fā)展大致可以分為五個(gè)階段:萌芽創(chuàng)業(yè)期、第一個(gè)低潮期、復(fù)蘇振興期、第二個(gè)低潮期、崛起繁榮期。2
萌芽創(chuàng)業(yè)期為1943—1969年,是人工神經(jīng)網(wǎng)絡(luò)發(fā)展的第一個(gè)高潮期。這個(gè)時(shí)期,科學(xué)家們提出了許多神經(jīng)元模型。如1943年麥卡洛克和數(shù)學(xué)家皮茨構(gòu)建的MP模型,1948年圖靈(Allen Turing)描述的“圖靈機(jī)”(Turing Machine),1951年明斯基建造的第一臺(tái)模擬神經(jīng)網(wǎng)絡(luò)的機(jī)器SNARC,1958年羅森布拉特提出的可以模擬人類感知能力的神經(jīng)網(wǎng)絡(luò)模型——“感知機(jī)”等。這一時(shí)期,人工神經(jīng)網(wǎng)絡(luò)以其獨(dú)特的結(jié)構(gòu)和處理信息的方法,在自動(dòng)控制、模式識(shí)別等應(yīng)用領(lǐng)域中取得了初步的成效。
第一個(gè)低潮期為1969—1983年,人工神經(jīng)網(wǎng)絡(luò)第一次落入低谷。在此期間,受1969年明斯基和帕佩特《感知機(jī):計(jì)算幾何導(dǎo)論》的影響,人工神經(jīng)網(wǎng)絡(luò)的研究處于長(zhǎng)達(dá)15年的停滯狀態(tài)。雖然1974 年哈佛大學(xué)的魏博思(Paul Webos) 發(fā)明了反向傳播算法,但當(dāng)時(shí)未受到應(yīng)有的重視。1980年,福島邦彥(Fukushima)提出的一種帶卷積和子采樣操作的多層神經(jīng)網(wǎng)絡(luò)——“新知機(jī)”(Neocognitron),沒(méi)有采用反向傳播算法,而是采用了無(wú)監(jiān)督機(jī)器學(xué)習(xí)的方式來(lái)訓(xùn)練,因此也沒(méi)有引起學(xué)術(shù)界的重視。這就使得人工神經(jīng)網(wǎng)絡(luò)的研究長(zhǎng)期處于低潮狀態(tài)。
復(fù)蘇振興期為1983—1995年,是人工神經(jīng)網(wǎng)絡(luò)發(fā)展的第二個(gè)高潮期。其間,由于給感知機(jī)添加隱藏層解決了線性不可分問(wèn)題,反向傳播算法重新激發(fā)了人們對(duì)人工神經(jīng)網(wǎng)絡(luò)的興趣。1983年,美國(guó)加州理工學(xué)院的物理學(xué)家何普菲爾德(John Hopfield)提出了一種用于聯(lián)想記憶以及優(yōu)化計(jì)算的人工神經(jīng)網(wǎng)絡(luò),稱為“何普菲爾德網(wǎng)絡(luò)”(Hopfield Network),其在解決“旅行商問(wèn)題”上獲得當(dāng)時(shí)最好的結(jié)果,引起了轟動(dòng),促進(jìn)了人工神經(jīng)網(wǎng)絡(luò)研究的復(fù)蘇。1984年,辛頓提出一種隨機(jī)化版本的何普菲爾德網(wǎng)絡(luò),即“玻爾茲曼機(jī)”(Boltzmann Machine)。真正推動(dòng)人工神經(jīng)網(wǎng)絡(luò)振興的是反向傳播算法。1986年,魯邁哈特(David Rumelhart)和麥克蘭德(James McClelland)對(duì)于連接主義在計(jì)算機(jī)模擬神經(jīng)活動(dòng)中的應(yīng)用進(jìn)行了全面研究,改進(jìn)了反向傳播算法。辛頓等人將反向傳播算法引入多層感知機(jī)的研制中,于是人工神經(jīng)網(wǎng)絡(luò)又重新引起人們的關(guān)注,成為人工智能研究中的新熱點(diǎn)。隨后,樂(lè)坤等人將反向傳播算法引入“卷積神經(jīng)網(wǎng)絡(luò)”(Convolutional Neural Network,縮寫(xiě)CNN)中,并應(yīng)用在手寫(xiě)體數(shù)字自動(dòng)識(shí)別方面,降低了誤識(shí)率,推動(dòng)了人工神經(jīng)網(wǎng)絡(luò)的研究??墒呛镁安婚L(zhǎng),人工神經(jīng)網(wǎng)絡(luò)不久就進(jìn)入了第二個(gè)低潮期。
第二個(gè)低潮期為1995—2006年,持續(xù)達(dá)11年之久。在這期間,基于統(tǒng)計(jì)的“支持向量機(jī)”(Support Vector Machine,縮寫(xiě)SVM)和其他更簡(jiǎn)單的統(tǒng)計(jì)方法(例如線性分類器)在機(jī)器學(xué)習(xí)領(lǐng)域的流行度逐漸超過(guò)了人工神經(jīng)網(wǎng)絡(luò)。雖然人工神經(jīng)網(wǎng)絡(luò)可以通過(guò)增加神經(jīng)元數(shù)量的方式來(lái)構(gòu)建復(fù)雜的網(wǎng)絡(luò),但其計(jì)算復(fù)雜性也隨之呈指數(shù)級(jí)增長(zhǎng),當(dāng)時(shí)的計(jì)算機(jī)性能和數(shù)據(jù)資源的規(guī)模都不足以支持訓(xùn)練大規(guī)模的人工神經(jīng)網(wǎng)絡(luò)。在20世紀(jì)90年代中期,統(tǒng)計(jì)機(jī)器學(xué)習(xí)理論和以支持向量機(jī)為代表的機(jī)器學(xué)習(xí)研究在自然語(yǔ)言處理中獨(dú)占鰲頭,而人工神經(jīng)網(wǎng)絡(luò)則相形見(jiàn)絀,它的理論基礎(chǔ)不夠扎實(shí)、優(yōu)化比較困難、可解釋性差等缺點(diǎn)更加凸顯出來(lái),于是,人工神經(jīng)網(wǎng)絡(luò)的研究又一次跌入了低谷。
崛起繁榮期為2006年以后至今。2006年,辛頓和薩拉庫(kù)提諾夫(Salakhutdinov)研制了多層前饋神經(jīng)網(wǎng)絡(luò),通過(guò)逐層預(yù)訓(xùn)練(Pre-training),再使用反向傳播算法進(jìn)行微調(diào)(Fine-tuning),取得了很好的機(jī)器學(xué)習(xí)效果,從而使人工神經(jīng)網(wǎng)絡(luò)研究邁出低谷、再次崛起,并且逐漸走向了繁榮,推動(dòng)了人工智能的大發(fā)展。隨著深度的人工神經(jīng)網(wǎng)絡(luò)在語(yǔ)音識(shí)別、圖像分類、機(jī)器翻譯、智能問(wèn)答等應(yīng)用領(lǐng)域中的巨大成功,以人工神經(jīng)網(wǎng)絡(luò)為基礎(chǔ)的深度學(xué)習(xí)迅速崛起。近年來(lái),隨著大規(guī)模并行計(jì)算以及GPU(Graphic Processing Unit)設(shè)備的普及,計(jì)算機(jī)的計(jì)算能力得到大幅度提高,可供機(jī)器學(xué)習(xí)的數(shù)據(jù)資源的規(guī)模也越來(lái)越大。在算力、算法和大數(shù)據(jù)算料資源的支持下,計(jì)算機(jī)已經(jīng)具備了訓(xùn)練大規(guī)模人工神經(jīng)網(wǎng)絡(luò)的能力,于是,各大科技公司紛紛投入巨資來(lái)研究深度學(xué)習(xí),人工神經(jīng)網(wǎng)絡(luò)研究進(jìn)入它的第三個(gè)高潮期。深度學(xué)習(xí)需要在大規(guī)模真實(shí)的語(yǔ)料庫(kù)(算料)的基礎(chǔ)上進(jìn)行,這對(duì)資源豐富的語(yǔ)言(如英語(yǔ)、漢語(yǔ)、法語(yǔ))來(lái)說(shuō),可以取得顯著的成效,可是,對(duì)于那些資源貧乏的語(yǔ)言(如藏語(yǔ)、維吾爾語(yǔ)、彝語(yǔ))來(lái)說(shuō),由于缺乏充足的語(yǔ)言數(shù)據(jù),難以保證深度學(xué)習(xí)的效果。為此,在深度學(xué)習(xí)的基礎(chǔ)上,自然語(yǔ)言處理中就提出了“遷移學(xué)習(xí)”(Transfer Learning)和“預(yù)訓(xùn)練”問(wèn)題。于是,除了深度學(xué)習(xí)這種模型外,自然語(yǔ)言處理中又出現(xiàn)了一個(gè)新的模型 ——“預(yù)訓(xùn)練模型”(Pre-training Model),它不僅使得多種自然語(yǔ)言處理的任務(wù)達(dá)到了新的高度,而且大大降低了自然語(yǔ)言處理模型在實(shí)際應(yīng)用場(chǎng)景中落地的門(mén)檻。為了衡量計(jì)算機(jī)理解自然語(yǔ)言的能力,美國(guó)華盛頓大學(xué)、Facebook和DeepMind等機(jī)構(gòu)在2019年提出了人工智能基準(zhǔn)測(cè)試的一個(gè)項(xiàng)目SuperGlue,其任務(wù)包括智能問(wèn)答、語(yǔ)言推理、詞義排歧、指代消減等。在最近的SuperGlue測(cè)試中,微軟公司的DeBERTa模型和谷歌公司的T5+Meena模型都取得了很好的成績(jī),有的指標(biāo)甚至超過(guò)了人類的基準(zhǔn)線。
綜上,人工神經(jīng)網(wǎng)絡(luò)的發(fā)展經(jīng)歷了一個(gè)由高潮和低潮交互而成的馬鞍形曲折過(guò)程:萌芽創(chuàng)業(yè)期à 第一個(gè)低潮期à 復(fù)蘇振興期à 第二個(gè)低潮期à 崛起繁榮期。
現(xiàn)如今,人工神經(jīng)網(wǎng)絡(luò)正處于其發(fā)展的第三個(gè)高潮期中。盡管人工神經(jīng)網(wǎng)絡(luò)在數(shù)學(xué)上是完美的,可是它的運(yùn)行機(jī)理卻不容易從語(yǔ)言學(xué)和普通常識(shí)的角度得到理性的解釋,而且人工神經(jīng)網(wǎng)絡(luò)也難以應(yīng)用人類在長(zhǎng)期的語(yǔ)言學(xué)研究中積累起來(lái)的豐富多彩的語(yǔ)言知識(shí)來(lái)改進(jìn)自身的不足。為了進(jìn)一步推動(dòng)自然語(yǔ)言處理的發(fā)展,決不能忽視人類在歷史長(zhǎng)河中積累的語(yǔ)言知識(shí)和語(yǔ)言規(guī)則,應(yīng)當(dāng)把基于語(yǔ)言規(guī)則的理性主義方法(Rationalism Approach)與基于語(yǔ)言大數(shù)據(jù)的經(jīng)驗(yàn)主義方法(Empiricism Approach)結(jié)合起來(lái),使用語(yǔ)言規(guī)則來(lái)彌補(bǔ)人工神經(jīng)網(wǎng)絡(luò)的不足。換句話說(shuō),在自然語(yǔ)言處理研究中,在大力推廣人工神經(jīng)網(wǎng)絡(luò)的經(jīng)驗(yàn)主義方法的同時(shí),也要逐步復(fù)興近年來(lái)受到冷落的理性主義方法,讓神經(jīng)網(wǎng)絡(luò)從語(yǔ)言的理性規(guī)則中吸取營(yíng)養(yǎng),不斷完善,增強(qiáng)它的可解釋性。1目前流行的深度學(xué)習(xí)的熱潮為自然語(yǔ)言處理中基于語(yǔ)言大數(shù)據(jù)的經(jīng)驗(yàn)主義方法添了一把火,預(yù)計(jì)這樣的熱潮還會(huì)繼續(xù)主導(dǎo)自然語(yǔ)言處理領(lǐng)域很多年。然而,在自然語(yǔ)言處理的研究中,基于語(yǔ)言規(guī)則的理性主義方法復(fù)興的歷史步伐是不會(huì)改變的,基于語(yǔ)言數(shù)據(jù)的經(jīng)驗(yàn)主義方法一定要與基于語(yǔ)言規(guī)則的理性主義方法結(jié)合起來(lái),才是自然語(yǔ)言處理的必由之途,也是當(dāng)代人工智能研究的金光大道。
(責(zé)任編輯:蘇建軍)