從爆火的chatGPT講起:自然語言生成式AI的前世今生,你想了解的一切
AIGC成為近期的熱門話題,而AI繪畫引起了人們的關(guān)注和熱烈討論。生成即創(chuàng)造,AI繪畫的出現(xiàn)影響深遠(yuǎn)。生成式AI的突破,意味著AI開始走向了創(chuàng)造新內(nèi)容世界的道路。對此,本文分析了生成式AI是如何發(fā)展成至今的,一起來看看吧。
作者:城主;來源公眾號:Web3天空之城(ID:Web3SkyCity)
原文鏈接:https://mp.weixin.qq.com/s/I3x-fddZmasKGPwgxilYyw
一、潮起又潮落
達(dá)特茅斯會議之后,AI進(jìn)入了一個大時代,人們驚奇的發(fā)現(xiàn),計算機(jī)居然可以證明數(shù)學(xué)定理,學(xué)習(xí)使用語言。在眾多AI研究方向中,搜索式推理,自然語言處理最有影響力。
從1955年到1974年是AI的第一次發(fā)展高潮,大量成功的初代AI程序和研究方向不斷出現(xiàn)。AI先驅(qū)們非常樂觀的預(yù)言:
“十年之內(nèi),數(shù)字計算機(jī)將成為國際象棋世界冠軍?!保?958年,H.A.Simon,AllenNewell)
“二十年內(nèi),機(jī)器將能完成人能做到的一切工作?!保?965年,H.A.Simon)
“在三到八年的時間里我們將得到一臺具有人類平均智能的機(jī)器?!保?970年,MarvinMinsky)
結(jié)果呢?事后諸葛亮看回來,當(dāng)然是被啪啪啪的打臉啦。
到了70年代初,AI科學(xué)家們逐漸發(fā)現(xiàn),雖然機(jī)器擁有了簡單的邏輯推理能力,但遇到了當(dāng)時完全無法克服的基礎(chǔ)瓶頸,這些瓶頸基本就是時代的局限:
1. 當(dāng)時計算機(jī)的運(yùn)算能力問題
且不說當(dāng)時最原始的計算機(jī)那點(diǎn)可憐巴巴的算力了,我們知道,一直到了最近十來年,個人計算機(jī)組網(wǎng)之后的并行算力才真正達(dá)到了可以支持現(xiàn)代AI大模型訓(xùn)練迭代的要求。
2. 推理需要積累大量對世界的認(rèn)知信息
這就是個大數(shù)據(jù)的基礎(chǔ)積累問題。而大數(shù)據(jù)的積累,也是在現(xiàn)代互聯(lián)網(wǎng)的迅猛發(fā)展之后,才得到了真正的解決。
還有一個神奇的事情是,人工神經(jīng)網(wǎng)絡(luò)這個當(dāng)下最主流的AI發(fā)展路線,在當(dāng)時陰差陽錯的遭到了巨大打擊一蹶不振。而暴擊了整個神經(jīng)網(wǎng)絡(luò)研究的,正是人工神經(jīng)網(wǎng)絡(luò)的締造者馬文。明斯基本人。
前面說過,明斯基搭建了第一個神經(jīng)網(wǎng)絡(luò)自學(xué)習(xí)硬件機(jī)器。當(dāng)時有一位明斯基低一屆的高中學(xué)弟弗朗克?羅森布拉特(FrankRosenblatt),從康奈爾大學(xué)獲得博士學(xué)位后,跟隨師兄的步伐,獲得了美國海軍研究室資助,研制了人工神經(jīng)網(wǎng)絡(luò)“感知機(jī)(Perceptron)”。
1957年,第一個版本的感知機(jī)以軟件仿真的形式運(yùn)行在IBM704上。1962年,羅森布拉特出版《神經(jīng)動力學(xué)原理:感知機(jī)和腦機(jī)制理論》,引起了全球AI實(shí)驗室的大量關(guān)注和效仿,并將感知機(jī)系統(tǒng)運(yùn)用于文字識別,語音識別等領(lǐng)域,神經(jīng)網(wǎng)絡(luò)研究達(dá)到了第一次高潮。
而這個時候,明斯基自己回到哈佛任教,申請國防項目卻遭到了挫折,讓明斯基特別郁悶的是,自己曾服役的海軍把經(jīng)費(fèi)投給了學(xué)弟,支持的卻是自己好幾年前就玩過的神經(jīng)網(wǎng)絡(luò)。數(shù)學(xué)背景深厚的明斯基拿起數(shù)學(xué)武器對人工神經(jīng)網(wǎng)絡(luò)進(jìn)行了扎實(shí)的理論分析,并在1969年出版了《感知機(jī)》,通過數(shù)學(xué)理論推演指出羅森布拉特的感知機(jī)功能有限,甚至不能解決線性不可分問題。(如不能用一個直線或者一個直面把二維或者三維坐標(biāo)系中的兩類數(shù)據(jù)很好的劃分。就是線性不可分。)
明斯基在《感知機(jī)》書中暗示說:把感知機(jī)從一層神經(jīng)網(wǎng)絡(luò)推廣到多層的思路是沒有希望的。
既然連AI先驅(qū)和人工神經(jīng)網(wǎng)絡(luò)締造者本人的明斯克都說,神經(jīng)網(wǎng)絡(luò)這個方向沒戲了,所有的研究者都深感氣餒,神經(jīng)網(wǎng)絡(luò)的研究從此走向了低潮。更可惜的是,在2年后,發(fā)明感知機(jī)的學(xué)弟羅森布拉特遭受意外去世,再也沒人出來挑戰(zhàn)明斯克的結(jié)論了。
然而,歷史總喜歡和人開玩笑。事實(shí)上,是明斯克錯了。
我們現(xiàn)在已經(jīng)知道,恰恰是只要把感知機(jī)從單層網(wǎng)絡(luò)變成多層,就可以解決線性不可分問題。其實(shí)當(dāng)時羅森布拉特以及其他研究者也想到過多層感知機(jī)。但苦于一直沒有找到訓(xùn)練多層神經(jīng)網(wǎng)絡(luò)的方法。直到了80年代中期,相關(guān)算法才被找到和提出,人工神經(jīng)網(wǎng)絡(luò)的研究再一次走向繁榮。
總而言之,在70年中后期,因為AI完全達(dá)不到所預(yù)言的完全智能的程度,只能停留在“玩具”階段。原先過高的承諾引發(fā)了公眾過高的期望值,轉(zhuǎn)而變成徹底的失望和針對AI研究的激烈批評,最終大量機(jī)構(gòu)對基于神經(jīng)網(wǎng)絡(luò)的人工智能研究減少甚至停止撥款。AI研究走進(jìn)了第一次寒冬。
二、希望越大,失望越大的專家系統(tǒng)
在80年初,一類名為“專家系統(tǒng)”的AI程序開始為全世界公司青睞,人工智能研究又迎來一波高潮。
什么是“專家系統(tǒng)”?百度百科的解釋如下:
專家系統(tǒng)是一個智能計算機(jī)程序系統(tǒng),其內(nèi)部含有大量的某個領(lǐng)域?qū)<宜降闹R與經(jīng)驗,它能夠應(yīng)用人工智能技術(shù)和計算機(jī)技術(shù),根據(jù)系統(tǒng)中的知識與經(jīng)驗,進(jìn)行推理和判斷,模擬人類專家的決策過程,以便解決那些需要人類專家處理的復(fù)雜問題,簡而言之,專家系統(tǒng)是一種模擬人類專家解決領(lǐng)域問題的計算機(jī)程序系統(tǒng)。
一句話說,專家系統(tǒng)根據(jù)過往的知識經(jīng)驗積累來模擬人類專家從而進(jìn)行邏輯推理和判斷。
等一下,這個說法是不是有點(diǎn)熟悉?聽起來似乎有點(diǎn)像AI先驅(qū)赫伯特·西蒙(HerbertSimon)和艾倫·紐厄爾(AllenNewell)所做的第一個AI項:“邏輯理論家(theLogicTheorist)”。
事實(shí)上,這正是人工智能兩大路線的符號主義派的成果體現(xiàn)。第一條路線神經(jīng)網(wǎng)絡(luò)派在當(dāng)時被自己的鼻祖明斯克按在地上摩擦,第二條路線則在80年代初恰逢其時的站了出來。
和神經(jīng)網(wǎng)絡(luò)旨在研發(fā)通用結(jié)構(gòu)的AI模型不同,專家系統(tǒng)基于符號邏輯的概念。它們通常是由特定領(lǐng)域的專家(比如醫(yī)藥,金融或者制造業(yè))開發(fā)的,僅限于一個很小的知識領(lǐng)域,依據(jù)一組專門知識推演出的邏輯規(guī)則來回答特定領(lǐng)域的問題。而隨著專家系統(tǒng)的熱門,“知識處理”也隨之成為了主流AI研究焦點(diǎn)。
專家系統(tǒng)的一個典型項目是專家配置器XCON(eXpertCONfigurer),由卡內(nèi)基梅隆大學(xué)為DEC公司設(shè)計開發(fā)。該系統(tǒng)可以說是世界上第一個(特定領(lǐng)域的)推薦引擎,通過幾千條規(guī)則來對計算機(jī)部件的選擇進(jìn)行最優(yōu)化。從1980年投入使用以來,它為DEC公司制造VAX系列電腦節(jié)省了數(shù)千萬的成本。隨著XCON的成功被更多企業(yè)所了解,專家系統(tǒng)在80年代中期迎來了它的繁榮,造就了一個數(shù)十億美金的市場。
不過,最為普通人所熟知的專家系統(tǒng)應(yīng)該是后來的IBM超級計算機(jī)“深藍(lán)”。IBM從1985年開始研發(fā)“深藍(lán)”計算機(jī),它是一個專門針對國際象棋的專家系統(tǒng)。1996年,它在六場比賽中的一場中擊敗了國際象棋大師加里·卡斯帕羅夫(GarryKasparov),名揚(yáng)天下。
但專家系統(tǒng)在工業(yè)界多少有點(diǎn)曇花一現(xiàn),繁榮之后迎來的是迅速的沒落。這是因為80年代的專家系統(tǒng)存在著基礎(chǔ)性的問題,首先就是專家系統(tǒng)的知識領(lǐng)域過于狹窄難以拓展。
說到這里,筆者讀書時曾經(jīng)困惑過,為什么“深藍(lán)”那么牛逼的系統(tǒng),贏了國際象棋后好像就泯然眾人矣,并沒有繼續(xù)在其他領(lǐng)域發(fā)揮光和熱。
而答案就是,看來它只能用來下國際象棋……
此外,在專家系統(tǒng)變得越來越龐大后,為其提供和管理數(shù)據(jù),開發(fā)和測試都變得越來越復(fù)雜。更要命的是,專家系統(tǒng)是不會自己學(xué)習(xí)的,這意味著必須不斷更新底層邏輯來保持專家系統(tǒng)解決領(lǐng)域新問題的能力。這大大增加了系統(tǒng)維護(hù)成本和復(fù)雜性。
因此,到了80年代末期,大家都看明白了,專家系統(tǒng)雖然有點(diǎn)用,但領(lǐng)域過于狹窄,更新迭代和維護(hù)成本非常高。專家系統(tǒng)開始迅速在業(yè)界失寵,很多相關(guān)公司破產(chǎn)。
這就是人工智能的第二次繁榮后的又一次寒冬。而導(dǎo)致第二次AI寒冬的原因,除了前面所說的應(yīng)用范圍的局限性和商業(yè)過分追捧導(dǎo)致最后泡沫的破裂,還有那兩個老大難問題:
- 計算機(jī)的算力瓶頸仍然無法突破
- 仍然缺乏訓(xùn)練AI的足夠海量數(shù)據(jù)
有些讀者或許會問,在當(dāng)下這兩個老大難問題或許可以說初步被解決了,那么專家系統(tǒng)這條路線是否重新有用武之地呢?
答案是肯定的,就在最近,Meta提出的人工智能Cicero成為了AI領(lǐng)域的熱門新聞,Meta做出了這個史上最復(fù)雜的多人外交策略AI,和人玩在線版「外交」游戲。在每場比賽中,Cicero可以自己查看比賽情況,了解各個玩家的行動歷史,模擬真人和不同玩家溝通,從而預(yù)測其他玩家的行動。它能自行制定計劃,并通過人類語言與其他玩家進(jìn)行協(xié)調(diào)執(zhí)行策略,沒有人察覺出它是AI。
MetaCiceroAI成功的關(guān)鍵因素,正是重新引入了和大數(shù)據(jù)模型結(jié)合的專家知識系統(tǒng)。
在當(dāng)年的專家系統(tǒng)開始走向低谷之時,深度學(xué)習(xí)的前身人工神經(jīng)網(wǎng)絡(luò)卻取得了革命性的進(jìn)展,在1986年戴維·魯梅哈特(DavidRumelhart),杰弗里·辛頓(GeoffreyHinton)等人推廣了由保羅·韋爾博斯(PaulWerbos)發(fā)明的反向傳播算法(BP算法),使得大規(guī)模多層神經(jīng)網(wǎng)絡(luò)訓(xùn)練終于成為可能。
反向傳播算法使得神經(jīng)網(wǎng)絡(luò)的中間級可以學(xué)習(xí)到數(shù)據(jù)輸入的有效表達(dá),這就是神經(jīng)網(wǎng)絡(luò)乃至深度學(xué)習(xí)的核心思想。困擾AI先驅(qū)們的多層神經(jīng)網(wǎng)絡(luò)無法訓(xùn)練的難題終于被突破了。
不知道曾親自給神經(jīng)網(wǎng)絡(luò)蓋棺定論的明斯基,當(dāng)時聽到這個消息的心情是什么。
稍作休整,在我們步入當(dāng)下的第三次浪潮之前,先再來回顧一下人工智能的兩條路線之爭:
(1)符號主義
傳統(tǒng)的研究思路,主張通過功能模擬入手,把智能看做是符號處理的過程,采用形式邏輯來實(shí)現(xiàn)人工智能,所以稱之為“符號主義(Symbolism)”或“邏輯主義(Logicism)”
符號主義可以對形式化表達(dá)的問題(比如下棋,數(shù)學(xué)定理證明)有效,但人類很多的常識,以及接收的很多信息都無法用符號表達(dá),比如視覺聽覺等基本感知能力,雖然不像邏輯推理這樣高大上,但符號主義至今都沒有好的辦法處理;而類似想象力,創(chuàng)造力,情感和直覺這些人腦特有的認(rèn)知能力,目前更是符號主義無法企及的領(lǐng)域。
(2)神經(jīng)網(wǎng)絡(luò)
和符號主義功能模擬這種自上而下的思路相反,神經(jīng)網(wǎng)絡(luò)就是徹底的自底向上的結(jié)構(gòu)仿真路線。直接模仿人腦智能的物質(zhì)基礎(chǔ)神經(jīng)網(wǎng)絡(luò),希望通過人工方式構(gòu)建神經(jīng)網(wǎng)絡(luò),從而產(chǎn)生智能。從羅森布拉特的感知機(jī),一直到當(dāng)下大眾所知道的深度學(xué)習(xí)網(wǎng)絡(luò),這個路線把智能活動看做是大量簡單神經(jīng)單元通過復(fù)雜連接和并行運(yùn)行之后的結(jié)果,所以也被世人稱為“連接主義(connectionism)”。
三、爆火的AIGC
AIGC在這幾個月成了一個大熱的話題。
頗有些風(fēng)水輪流轉(zhuǎn)的感覺,如同年初大火特火的Web3一樣,AIGC是現(xiàn)在的當(dāng)紅炸子雞,創(chuàng)業(yè)投資討論里如果不帶點(diǎn)AIGC就是妥妥的落伍。
不久之前,備受關(guān)注的開源AI繪畫模型StableDiuffusion推出了2.0版,引起了更多關(guān)注和焦慮:“我連1.0的門道都還沒摸清楚,怎么就2.0了?。俊?/p>
有趣的是,作者前面看到一些AIGC文章,基本都是圍繞著最近大熱的AI繪畫來討論的。
當(dāng)然了,生成式AI繪畫模型的突破是一件值得大書特書的事情,在作者上一篇文章《AI繪畫何以突飛猛進(jìn)?從歷史到技術(shù)突破,一文讀懂火爆的AI繪畫發(fā)展史》里也已經(jīng)做了深入的探討。
但是,必須指出的是,當(dāng)下在AI繪畫或者AI生成其他形式內(nèi)容的大模型里,對自然語言的理解是一個首要的關(guān)鍵環(huán)節(jié),而之所以AI繪畫能火爆出圈,有至少一半的功勞必須歸結(jié)于,當(dāng)下最新的AI繪畫模型可以直接“理解”用戶的語言輸入,以及在模型內(nèi)部里把語言內(nèi)容理解和圖像內(nèi)容理解緊密結(jié)合起來。
生成式AI就像人工智能皇冠上的一顆明珠,不是唯一的一顆,但絕對璀璨耀眼。盡管AI在信息分析處理等各個方面都發(fā)揮著重要作用,但“生成式AI”的出現(xiàn)無疑影響更深遠(yuǎn):生成即創(chuàng)造。生成式AI的突破,意味著AI開始走向了創(chuàng)造新內(nèi)容世界的大道。
羅馬不是一天建成的。就讓我們一起回顧和嘗試?yán)斫猓@激動人心的一切究竟是怎么發(fā)生的。
四、從chatGPT的橫空出世講起
在回顧歷史前,首先要跟風(fēng)提一下幾天前發(fā)布的chatGPT,一個絕對神仙級別的自然語言生成式AI。
chatGPT誕生的重要意義恐怕不亞于StableDiffusion等AI繪畫生成模型的出現(xiàn)。有興趣的朋友可以感受去chat.openai.com感受一下這個當(dāng)今最牛逼沒有之一的自然語言問答式AI的巨大威力。
chatGPT是明星人工智能公司OpenAI的GPT自然語言生成式模型的最新衍生品。在這之前,坊間已經(jīng)傳聞OpenAI的下一代自然語言生成模型GPT4即將出現(xiàn)。而且,有一個讓人震驚的江湖傳言:GPT4據(jù)稱通過了圖靈測試!
圖靈測試究竟是什么意思?簡單的說,就是隔著一個小黑屋問各種話題,然后是否能分辨小黑屋里回答問題的究竟是機(jī)器還是人類。如果無法辨別,就就說明了機(jī)器具有和人一樣等級的智能,通過了圖靈測試。
迄今為止,還沒有AI模型能真正通過圖靈測試??磥砼R界點(diǎn)已經(jīng)到,筆者都迫不及待的期待GPT4的真正推出了。
誰知道,還沒等來GPT4,衍生自GPT3.5的chatGPT卻先來了。
顧名思義,chatGPT就是“聊天GPT”,以對話的方式交互,用戶問問題,它來回答。
咋聽起來,似乎也沒有很新鮮。但情況是,chatGPT的智能化遠(yuǎn)遠(yuǎn)超出了那些它的聊天AI前輩們。
好比StableDiffusion/Midjourney也就是AI繪畫,但所能生成的AI繪畫質(zhì)量甩了前輩無數(shù)條街。
網(wǎng)上有越來越多的文章開始安利chatGPT,不過多是拿了外網(wǎng)英文問答的截圖,其實(shí)chatGPT可以直接上中文!。
先隨意上幾個問答大家感受一下:
問中國菜,算是送分題:
問從希格瑪大廈如何去天安門,開始有點(diǎn)難度了,回答非常正確!
(要知道,這可不是某個特地為了中文導(dǎo)航優(yōu)化的AI,chatGPT是從它通用的知識積累里得到的理解)
對龍珠的劇情理解,回答中規(guī)中矩,80分+,本來作者期望它能講得更詳細(xì)些:
吃貨國家問題,有點(diǎn)刁鉆了:
廣東人真的喜歡吃甜的?這個問題很多中國人都不一定答得上:
美帝問題來一問(看來chatGPT果然經(jīng)過了特別設(shè)置過濾了敏感問題):
另外,可以直接問chatGPT怎么寫代碼,比如寫一個俄羅斯方塊:
沒有懸念,代碼完全正確。
而更有想象力的,是讓chatGPT來生成AI繪畫的輸入關(guān)鍵詞!讓AI自己來指導(dǎo)AI作畫,多美妙的主意。
這僅僅是一個開始,隨著chatGPT在全網(wǎng)的各種自來水安利,相信還有更多古靈精怪的玩法不斷被網(wǎng)友們挖掘出來。
chatGPT的回答給人的感覺是,這是一個特別靠譜的聊天AI,真正的上知天文下知地理,最關(guān)鍵的是,它不胡說八道!正因為它回答的準(zhǔn)確性,看起來chatGPT有了替代通用搜索引擎Google的可能性。
OpenAI的CEO薩姆?阿爾特曼(SamAltman)對ChatGPT的未來發(fā)展表示很有信心。他在推特上說,語言接口是未來的一個發(fā)展方向,OpenAI只是一個先行者,相信很快大家就能用上真正智能的提供建議的AI助手了。
測試版的chatGPT仍有一些缺點(diǎn),但這都只是戰(zhàn)術(shù)級別的;在戰(zhàn)略上,chatGPT的前景已經(jīng)相當(dāng)令人期待,特別是OpenAI下一代GPT4加持下的chatGPT,其能力恐怕更加突破天際。
我們也許正在經(jīng)歷又一個AI突破的時刻,一如2022年初到年中AI繪畫的勢如破竹。而這次,則是人類通用信息生成的突破!
喜歡刨根問底的讀者們會問,AI是如何走到這一步的?
讓我們遠(yuǎn)離現(xiàn)實(shí)的喧囂,把目光投回到那有點(diǎn)遙遠(yuǎn)的過去吧。
五、人工神經(jīng)網(wǎng)絡(luò)的起源,在那有些遙遠(yuǎn)的年代
從某種意義上,語言表達(dá)是人類信息和思想交流的窗口。人類并沒有第七感,也沒有腦電波直達(dá)的交流(目前沒有:P),信息溝通都通過口頭語言和書面語言來傳遞。
(當(dāng)然,可以說還有一些手勢和肢體表達(dá),但信息量基本可以忽略不計)
針對語言信息的人工智能處理,或者學(xué)術(shù)一點(diǎn),“自然語言處理NLP”,是科學(xué)家們最早研究,人工智能最早發(fā)源的領(lǐng)域。
遠(yuǎn)在1956年,美國的達(dá)特茅斯學(xué)院舉行了一次具有傳奇色彩的學(xué)術(shù)會議(DartmouthConference),計算機(jī)專家約翰·麥卡錫提出了“人工智能”一詞。這被廣泛認(rèn)為是人工智能正式誕生的日子。
1956年的達(dá)特茅斯會議,十位參與的科學(xué)家,AI之父們。
這個會議很有意思,事后諸葛亮的我們,一起來看看這個會議7個特別有前瞻性的主要議題:
1. 自動計算機(jī)
“如果一臺機(jī)器可以完成一項工作,那么就可以對一臺自動計算器進(jìn)行編程來模擬這臺機(jī)器。目前計算機(jī)的速度和內(nèi)存容量可能不足以模擬人腦的許多高級功能,但主要的障礙不是缺乏機(jī)器容量,而是我們無法編寫充分利用我們所擁有的機(jī)能?!?/p>
現(xiàn)代第一臺電子計算機(jī)ENIAC的發(fā)明日期是1946年2月14日,也就是說,當(dāng)時距離第一臺電子計算機(jī)的誕生僅僅過去了10年。先驅(qū)們的遺憾是當(dāng)時高級程序技術(shù)還基本沒有,無法充分發(fā)揮計算機(jī)的作用:)
2. 如何對計算機(jī)進(jìn)行編程以使用一種語言
“可以推測,人類思想的很大一部分是根據(jù)推理規(guī)則和猜想規(guī)則來操縱詞語的。從這個觀點(diǎn)來看,形成泛化就是承認(rèn)一個新詞和一些規(guī)則,其中包含這個新詞的句子暗示和被其他句子暗示。這個想法從來沒有被非常精確地表述過,也沒有例子?!?/p>
先驅(qū)們對語言文字的機(jī)器理解充滿了預(yù)期,而直到現(xiàn)在,有了GPT這些當(dāng)超大規(guī)模的自然語言AI模型,我們才堪堪敢說,先驅(qū)們的期望逐漸在實(shí)現(xiàn),計算機(jī)開始真正理解了語言。
3. 神經(jīng)網(wǎng)絡(luò)
“一組(假設(shè)的)神經(jīng)元如何排列以形成概念。很多當(dāng)下的計算機(jī)科學(xué)家等人已經(jīng)就這個問題做了大量的理論和實(shí)驗工作。已經(jīng)獲得了部分結(jié)果,但這個問題還需要更多的理論工作?!?/p>
神經(jīng)網(wǎng)絡(luò)!在AI概念誕生之時,先驅(qū)們就意識到了,人工神經(jīng)網(wǎng)絡(luò)的概念將要在AI里發(fā)揮重要作用
4. 計算規(guī)模理論
“如果給一個很好的問題(一個可以機(jī)械地測試所提出的答案是否是有效答案的問題),解決它的一種方法是按順序嘗試所有可能的答案。這種方法是有效的,要排除它,必須有一些計算效率的標(biāo)準(zhǔn)。一些考慮將表明,為了獲得計算的效率的度量,必須手頭有一種測量計算設(shè)備復(fù)雜性的方法,如果有函數(shù)復(fù)雜性理論,這反過來也可以做到。香農(nóng)和麥卡錫已經(jīng)獲得了關(guān)于這個問題的一些部分結(jié)果?!?/p>
計算機(jī)科學(xué)里重要的計算復(fù)雜性理論,就是這個時間點(diǎn)被提出和發(fā)展起來的。
5. 自我改進(jìn)
“也許真正智能的機(jī)器會進(jìn)行自我改進(jìn)的活動。已經(jīng)提出了一些這樣做的方案,值得進(jìn)一步研究。這個問題似乎也可以抽象地研究。”
這是一個很有挑戰(zhàn)性的問題,用現(xiàn)在的觀點(diǎn)可以換個說法:AI是否能實(shí)現(xiàn)自我編程自我提升?或許很快就可以了。
6. 抽象
“許多類型的”抽象”可以被清晰地定義,而其他一些類型則不那么清晰。直接嘗試對這些進(jìn)行分類并描述從感官和其他數(shù)據(jù)中形成抽象的機(jī)器方法似乎是值得的?!?/p>
通過機(jī)器智能來對各種信息自動加以分類和抽象,這正是當(dāng)今各種牛逼閃閃的AI大模型正在達(dá)成的成就。
7. 隨機(jī)性和創(chuàng)造性
“一個相當(dāng)吸引人但顯然是不完整的猜想是,創(chuàng)造性思維和缺乏想象力的有效思維之間的區(qū)別在于注入了某種隨機(jī)性。隨機(jī)性必須由直覺引導(dǎo)才能有效。換句話說,受過教育的猜測或直覺在其他有序的思維中包括了受控的隨機(jī)性。”
先驅(qū)們非常直觀的理解,是否有隨機(jī)性是創(chuàng)造性思維和非創(chuàng)造性的分析思維的重要區(qū)別。
而隨機(jī)性需要由一些“直覺”引導(dǎo),或者說真正的AI需要一種“受控的隨機(jī)性”。
其實(shí),當(dāng)前AI繪畫生成機(jī)制里很好踐行了這個洞察:在每一幅AI繪畫背后都是一個AI模型(比如StableDiffusion)+一個確定的輸入(一組關(guān)鍵詞)+一個系統(tǒng)生成的隨機(jī)數(shù)。同樣的“關(guān)鍵詞組+隨機(jī)數(shù)”輸入到AI模型里,必然生成一個完全相同的AI繪畫作品。這不就是“受控的隨機(jī)性”嘛
達(dá)特茅斯會議的參會先驅(qū)們都是大神,也值得在這里簡單提一下:
約翰·麥卡錫(JohnMcCarthy),率先提出了AI的概念,開發(fā)了碼農(nóng)熟知的程序語言Lisp。有意思的是,Lisp是在1958年發(fā)明的,看看會議的第一個議題,抱怨沒有好用的編程語言可用,大牛的態(tài)度就是沒有趁手的工具嗎?那我就自己發(fā)明一個!
約翰·麥卡錫在1971年獲得了圖靈獎。
馬文·明斯基(MarvinMinsky),在1951年在普林斯頓大學(xué)讀博士的時候,建立了第一個神經(jīng)網(wǎng)絡(luò)自學(xué)習(xí)機(jī)器SNARC(StochasticNeuralAnalogReinforcementCalculator隨機(jī)神經(jīng)模擬強(qiáng)化計算器),這是第一個真正意義上的人工神經(jīng)網(wǎng)絡(luò)硬件,用3000個真空管來模擬了40個神經(jīng)元的信號傳遞。
明斯基的博士論文也正是神經(jīng)網(wǎng)絡(luò)。有趣的是,明斯基拿的是數(shù)學(xué)系博士學(xué)位。當(dāng)時有人挑刺說神經(jīng)網(wǎng)絡(luò)的研究能算數(shù)學(xué)?而當(dāng)時支持明斯基的正是大名鼎鼎的現(xiàn)代計算機(jī)之父馮。諾伊曼。馮。諾伊曼說:現(xiàn)在不算,但很快就得算了。
明斯基在1969年獲得了圖靈獎。
克勞德·香農(nóng)(ClaudeShannon),通信科學(xué)鼻祖,大名鼎鼎的香農(nóng)定理是所有通信制式最基本的原理。和計算機(jī)鼻祖并駕齊驅(qū)的香農(nóng)同學(xué)就不需要圖靈獎了,因為在通信領(lǐng)域有以他的名字命名的的最高獎香農(nóng)獎:)
赫伯特·西蒙(HerbertSimon)和艾倫·紐厄爾(AllenNewell)在達(dá)特茅斯會議上報告了世界上第一個AI項目“邏輯理論家(theLogicTheorist)”。
這個AI證明了<數(shù)學(xué)原理>第二章52個定理的38個,甚至找到了比原教材更優(yōu)美的證明。兩人合作提出了搜索式推理的方法,開創(chuàng)了人工智能除神經(jīng)網(wǎng)絡(luò)學(xué)派之外的第二條路線:符號主義學(xué)派。這兩位在1975年一起拿到了圖靈獎。
題外話是,這兩位牛和當(dāng)時數(shù)學(xué)系主任、第一屆圖靈獎獲得者阿蘭。珀里思(AlanPerlis)一起創(chuàng)立了卡內(nèi)基梅隆大學(xué)的計算機(jī)系,從此,CMU成為計算機(jī)學(xué)科的重鎮(zhèn)。
在達(dá)特茅斯會議之前,還有一個1955年的小討論會議“學(xué)習(xí)機(jī)討論會”,在那次討論會上,主持人也是神經(jīng)網(wǎng)絡(luò)的鼻祖之一的皮茨Pitts做了一個有趣總結(jié):“……一派人企圖模擬神經(jīng)系統(tǒng)(NeuronNets),一派人企圖模擬心智(mind,就是上面西蒙的符號派)……但最終大家的目的一致”。
這句眼光毒辣的話,冥冥之中預(yù)示了隨后幾十年間AI研究“結(jié)構(gòu)VS功能”的神經(jīng)網(wǎng)絡(luò)派和符號主義派兩條路線之爭。
六、大算力,大數(shù)據(jù),大力出奇跡
2006年,杰弗里·辛頓(GeoffreyHinton)在science期刊上發(fā)表了重要的論文<Reducingthedimensionalityofdatawithneuralnetworks>,提出深度信念網(wǎng)絡(luò)(DeepBeliefNetworks,DBNs),“深度學(xué)習(xí)”正式誕生,基于人工神經(jīng)網(wǎng)絡(luò)的第三次AI發(fā)展浪潮開始了,且一直延續(xù)至今。
和前兩次浪潮不同的是,當(dāng)下計算機(jī)性能已經(jīng)能讓大規(guī)模的人工神經(jīng)網(wǎng)絡(luò)模擬得以成為現(xiàn)實(shí)。在1957年,羅森布拉特用IBM704去仿真感知機(jī),每秒完成1。2萬次浮點(diǎn)加法,而如今超級計算機(jī)速度是IBM704的10萬億倍以上。
此外,個人計算機(jī)GPU近些年發(fā)展迅猛,盡管GPU的初衷是為了加速3D圖形計算,但通用GPU的計算模式正好匹配了神經(jīng)網(wǎng)絡(luò)并行計算的需求特點(diǎn),從而進(jìn)一步推動了神經(jīng)網(wǎng)絡(luò)模型的發(fā)展。
除了算力之外,限制前兩次AI浪潮發(fā)展的另一主要因素就是數(shù)據(jù)的缺乏。在深度學(xué)習(xí)理論模型提出之后,最早之一意識到了AI學(xué)科發(fā)展的數(shù)據(jù)鉗制并著手去解決的是華人女AI科學(xué)家李飛飛。年輕的李飛飛以堅韌不拔的大無畏精神推動完成了一個超大規(guī)模的開源圖片標(biāo)注數(shù)據(jù)庫,這就是著名的ImageNet項目。在2009年正式發(fā)布時,ImageNet有超過1000萬數(shù)據(jù),兩萬多個類別。
2010年開始,ImageNet大規(guī)模視覺識別挑戰(zhàn)賽(ILSVCR)開始舉辦,全世界圖像領(lǐng)域深度學(xué)習(xí)的專家們同臺競技和交流,從此拉開了計算機(jī)視覺的新篇章。
額,本文主要是關(guān)注自然語言大模型的前世今生的,而ImageNet完全是圖像領(lǐng)域的工作。但是,ImageNet的出現(xiàn)和發(fā)展給了自然語言AI模型研究一個很重要的啟發(fā)。這就是圖像領(lǐng)域深度學(xué)習(xí)的預(yù)訓(xùn)練概念。
大家都知道,“深度學(xué)習(xí)”顧名思義,就是具有很多層級的神經(jīng)網(wǎng)絡(luò)模型。現(xiàn)代神經(jīng)網(wǎng)絡(luò)模型的網(wǎng)絡(luò)結(jié)構(gòu)層數(shù)很深,動則幾百萬上千萬參數(shù)量。而這些神經(jīng)網(wǎng)絡(luò)模型在能做特定任務(wù)之前,都是需要經(jīng)過“訓(xùn)練”的,即根據(jù)標(biāo)注好的特定訓(xùn)練數(shù)據(jù)去反復(fù)調(diào)整模型里的參數(shù),最后所有參數(shù)調(diào)整到位,模型能匹配訓(xùn)練數(shù)據(jù)集的輸入和輸出。
那么,問題來了,要調(diào)整深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)模型里那成千萬的參數(shù)量,如果訓(xùn)練數(shù)據(jù)少了,肯定很難調(diào)整到位啊。這就好比一個內(nèi)部齒輪復(fù)雜精密的新機(jī)器,如果只稍微動一下,內(nèi)部能牽扯到的齒輪機(jī)構(gòu)說不定都很少,達(dá)不到磨合的目的;只有大規(guī)模長時間運(yùn)轉(zhuǎn)起來,內(nèi)部的齒輪才能全速轉(zhuǎn)起來,互相磨合好。
但是,那些特定的AI任務(wù)往往沒有那么多訓(xùn)練數(shù)據(jù)啊,這可怎么辦呢?
非常值得慶幸的是,AI科學(xué)家研究發(fā)現(xiàn)了深度學(xué)習(xí)網(wǎng)絡(luò)一個有趣的特性,對于圖像領(lǐng)域的深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)而言,不同層級的神經(jīng)元學(xué)習(xí)到的是不同邏輯層級的圖像特征!
如上圖所示,若將訓(xùn)練好的網(wǎng)絡(luò)每層神經(jīng)元學(xué)習(xí)到的特征可視化,會發(fā)現(xiàn),最底層的神經(jīng)元學(xué)習(xí)到的是線段等特征,第二層學(xué)到的是人臉各個五官的特征,第三層學(xué)到的是人臉輪廓的特征,這三層構(gòu)成了人臉特征的邏輯層級結(jié)構(gòu)。神經(jīng)網(wǎng)絡(luò)越底層的特征越基礎(chǔ)抽象,比如什么邊角弧線等,而越往上層,就具體和任務(wù)相關(guān)。是不是很神奇?
一個訓(xùn)練好的深度學(xué)習(xí)網(wǎng)絡(luò)的內(nèi)部參數(shù),在底層體現(xiàn)了通用和基礎(chǔ)的特征,而越到高層,越和特定任務(wù)相關(guān)。這是深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)一個特別棒的特性。
人們開始動腦筋了,既然是這樣,那么是不是可以先用標(biāo)準(zhǔn)的大數(shù)據(jù)集比如ImageNet來做深度學(xué)習(xí)網(wǎng)絡(luò)的“預(yù)訓(xùn)練”呢?反正那么多層的神經(jīng)網(wǎng)絡(luò)里,大多數(shù)的層級都和特定任務(wù)關(guān)系不大,我們只需要把通用大數(shù)據(jù)預(yù)訓(xùn)練得到的網(wǎng)絡(luò)模型結(jié)果,再結(jié)合任務(wù)相關(guān)的那點(diǎn)可憐的標(biāo)注數(shù)據(jù)去微調(diào)(Fine-tuning)高層的網(wǎng)絡(luò)參數(shù),使得高層參數(shù)輸出更匹配當(dāng)前領(lǐng)域的任務(wù),不就OK了嗎?
這樣一來,原本因為數(shù)據(jù)不足而無法訓(xùn)練的特定任務(wù)也能解決了。即便任務(wù)的訓(xùn)練數(shù)據(jù)不缺,先通過預(yù)訓(xùn)練過程也能極大的加快特定任務(wù)訓(xùn)練的完成速度。預(yù)訓(xùn)練這種通吃的解決方案人見人愛,很快在圖像處理領(lǐng)域廣泛流行開來。
既然在圖像處理領(lǐng)域的深度學(xué)習(xí)里預(yù)訓(xùn)練這么管用,搞自然語言處理AI的同學(xué)們自然也會在心里想,為什么不在自然語言處理領(lǐng)域里做預(yù)訓(xùn)練這么香的事情呢?
七、自然語言AI的深度進(jìn)化
首先呢,自然語言處理的研究里,有個基本概念叫做“語言模型”,大致理解起來也簡單,就是想辦法打造一個核心函數(shù)P,這個函數(shù)通過一個句子里前面的所有單詞來計算下一個單詞的概率大小。一句話里的單詞總是順序出現(xiàn)的,每個單詞都可以通過前面所有單詞計算出這么一個概率,把所有這些單詞的概率乘起來,總概率數(shù)值越大,說明這越像是人說出的話。
怎么構(gòu)造這個神奇的函數(shù)P是AI科學(xué)家的事情,但讀者們一定可以明白,有了這個牛逼的“語言模型”函數(shù)P,計算機(jī)就會說人話了。
而從神經(jīng)網(wǎng)絡(luò)學(xué)派的同學(xué)看來,是不是可以用神經(jīng)網(wǎng)絡(luò)來打造這樣一個語言模型呢?就是說用很多的現(xiàn)成語料,來訓(xùn)練出一個神經(jīng)網(wǎng)絡(luò),然后給這個神經(jīng)網(wǎng)絡(luò)模型輸入一句話的前面幾個詞,這個模型就能計算出這句話的下一個單詞。
這就是大名鼎鼎的“神經(jīng)網(wǎng)絡(luò)語言模型”NNLM。
NNLM神經(jīng)網(wǎng)絡(luò)語言模型的想法并不是最近冒出來的,它的歷史要追溯到20年前。NNLM的論文在2003年就被發(fā)表出來了,而當(dāng)時,深度學(xué)習(xí)的概念還只存在于杰弗里·辛頓(GeoffreyHinton)的腦袋里。
所以,不幸的是,NNLM當(dāng)時沒有引起學(xué)界多少反響,被埋沒了近10年。事實(shí)上,在深度學(xué)習(xí)大火之前,用神經(jīng)網(wǎng)絡(luò)做自然語言處理甚至?xí)恍υ挘白匀徽Z言處理的主流研究方式還是基于統(tǒng)計學(xué)的機(jī)器學(xué)習(xí)方法。神經(jīng)網(wǎng)絡(luò)語言模型NNLM這個概念太超前時代了。
一直到了2013年,在深度學(xué)習(xí)概念提出來7年之后,深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)模型先是在圖像和語音領(lǐng)域大顯神威,自然語言AI的同學(xué)終于想起了這篇十年前的論文。NNLM重出江湖,為世人所知:
在2013年,AI研究人員倒騰了一個自然語言處理的處理模型Word2Vec。顧名思義,“Word2Vec”就是“wordtovector,從詞到向量”。研究人員的目標(biāo)是把一個單詞變成一個數(shù)學(xué)向量,這個數(shù)學(xué)量在NLP里有個專門的名詞,叫做WordEmbedding(詞嵌入)
為啥要變成一個向量,出發(fā)點(diǎn)也很簡單,如果能將每個單詞都能表示為數(shù)學(xué)空間里的一個向量,那么是不是理論上,在這個向量空間里比較接近的詞,就是意義接近的單詞呢?這樣計算機(jī)不就可以方便的理解單詞之間的聯(lián)系了嗎?
Word2Vec翻出了十年前的NNLM。NNLM的初衷只是想構(gòu)建一個神經(jīng)網(wǎng)絡(luò)語言模型,根據(jù)前面的詞,來預(yù)測后一個是什么詞。NNLM網(wǎng)絡(luò)內(nèi)部構(gòu)造了一個隨機(jī)初始化的矩陣,通過不斷的訓(xùn)練,來達(dá)成NNLM模型預(yù)測單詞的目的。
特別湊巧的是,研究人員發(fā)現(xiàn)這個訓(xùn)練出來的內(nèi)部矩陣的每一行,正好可以作為每個詞的嵌入向量WordEmbedding!這真是得來全不費(fèi)功夫啊。
NNLM和Word2Vec使用了類似的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),不過因為目的不同,其訓(xùn)練方法理念是截然不同的。NNLM作為語言模型,是要看到上文預(yù)測下文,所以訓(xùn)練時輸入的是句子上文單詞;而Word2Vec呢?因為它的目標(biāo)是要找出所有單詞之間意義遠(yuǎn)近的數(shù)學(xué)關(guān)系,所以訓(xùn)練時都使用句子上文和下文作為輸入。
不知道讀者意識到?jīng)],這兩種訓(xùn)練方式在更高的意義上有著一些本質(zhì)區(qū)別,就好比我們?nèi)祟愓f話,都是順序說出來一個個單詞的,說不定呢,人的潛意識或許也是一個類似NNLM的P函數(shù),自覺不自覺地的決定人說話里的下一個詞是什么。因此只從上文預(yù)測下文的訓(xùn)練方式,貌似天然更契合“生成式”的邏輯。
而Word2Vec這種通過上文和下文輸入來訓(xùn)練的方式,可以比喻成機(jī)器來做閱讀理解,就像是我們做語文或英語的閱讀理解,一定是通讀全文,然后根據(jù)上下文來理解和判斷問題的答案。這樣的人工智能,就是所謂分析式的AI。
兩種模型訓(xùn)練的思路,在后續(xù)發(fā)展里變成了自然語言模型的兩種路線。本文開頭提到的OpenAI生成式模型GPT系列,堅定的只用上文進(jìn)行訓(xùn)練,用以追求“純粹”的生成;而Google公司的大語言模型Bert,則采用了上文和下文一起訓(xùn)練的模式,此乃后話。
前面提到,圖像處理領(lǐng)域里使用大規(guī)模通用數(shù)據(jù)進(jìn)行“預(yù)訓(xùn)練”所取得的效率和成果實(shí)在讓人羨慕,而在自然語言處理領(lǐng)域里,其實(shí)也有一點(diǎn)點(diǎn)“預(yù)訓(xùn)練”概念的,這個預(yù)訓(xùn)練就是,每個單詞的WordEmbedding可以反過來初始化神經(jīng)網(wǎng)絡(luò)的內(nèi)部參數(shù)。
不去探究數(shù)學(xué)細(xì)節(jié),讀者只要知道,這種“預(yù)訓(xùn)練方式”和前面圖像處理領(lǐng)域的低層級網(wǎng)絡(luò)預(yù)訓(xùn)練方式有點(diǎn)類似,但問題是利用WordEmbedding只能初始化第一層網(wǎng)絡(luò)參數(shù),和圖像處理領(lǐng)域的預(yù)訓(xùn)練能有效初始化大多數(shù)網(wǎng)絡(luò)層級不可同日而語,只能說是一種比較原始初級的“預(yù)訓(xùn)練”了
但直到2018年前,這就是NLP領(lǐng)域里能采用的預(yù)訓(xùn)練典型做法了。
采用WordEmbedding來初始化NLP神經(jīng)網(wǎng)絡(luò)有那么點(diǎn)效果,但沒有期待的那么好。這里面還有一個邏輯上的原因:一個單詞有多義詞問題。所以企圖在一個數(shù)學(xué)空間里用一個固定的數(shù)學(xué)向量來表征一個單詞的意義,還要求含義相近的單詞都聚在一起。在面對多義詞的時候,這在邏輯上顯然就是矛盾的。
當(dāng)然了,聰明的AI研究人員肯定還是有辦法。既然一個單詞存在多義性,固定的WordEmbedding向量無法表達(dá)單詞的多個含義,那么是不是可以先訓(xùn)練好一個單詞的WordEmbedding,然后在實(shí)際使用中,根據(jù)句子里的上下文語義去動態(tài)調(diào)整這個WordEmbedding數(shù)值,這樣經(jīng)過調(diào)整后的“動態(tài)WordEmbedding”更能準(zhǔn)確表達(dá)單詞在上下文的具體含義,同時自然的,解決了多義詞的問題。
這個根據(jù)當(dāng)前上下文來動態(tài)調(diào)整WordEmbedding的想法就是頂級學(xué)術(shù)會議NAACL2018年的最佳論文“Deepcontextualizedwordrepresentation”,這個NLP模型命名為ELMO(EmbeddingfromLanguageModels,基于語言模型的詞嵌入)
ELMO引入上下文動態(tài)調(diào)整單詞WordEmbedding后,多義詞問題就被徹底解決了,而且比預(yù)期的解決得還好:利用ELMO改進(jìn)過的多種不同NLP任務(wù),性能上都有幅度不同的提升,最高達(dá)到了25%,不愧是最佳論文。
此外,ELMO還有一個貢獻(xiàn),研究人員發(fā)現(xiàn)ELMO所使用的深度神經(jīng)網(wǎng)絡(luò)模型里,不同層次提取到的特征是有差異的??吹竭@里,讀者想起了什么沒有?是不是和圖像預(yù)訓(xùn)練的模型層級特征有點(diǎn)像了?
讓我們復(fù)習(xí)一下,前面講過,圖像處理領(lǐng)域進(jìn)行大規(guī)模預(yù)訓(xùn)練后,把深度學(xué)習(xí)網(wǎng)絡(luò)每層參數(shù)做可視化后可以看到,深度學(xué)習(xí)網(wǎng)絡(luò)每一層都對應(yīng)著不同抽象層級的“特征”,在圖像領(lǐng)域里,就是從底層的線段,到中間層的具體五官細(xì)節(jié),再到高層的臉型,等等。
再說一次,“預(yù)訓(xùn)練”為什么是一個特別重要的概念?這是因為好的“預(yù)訓(xùn)練”可以直接利用大量標(biāo)準(zhǔn)通用的的訓(xùn)練數(shù)據(jù)(圖像領(lǐng)域就是圖片,NLP領(lǐng)域就是語料),把深度學(xué)習(xí)模型調(diào)整到了90%甚至更高程度的可用狀態(tài),預(yù)訓(xùn)練好的模型最后通過任務(wù)相關(guān)的少量訓(xùn)練數(shù)據(jù),就能微調(diào)至完全勝任各種特定任務(wù),這真是一個很美妙的事情。
那么,ELMO出現(xiàn)后,自然語言處理領(lǐng)域的“預(yù)訓(xùn)練”有可能趕上圖像領(lǐng)域了嗎?
遺憾的是,還差一口氣。
因為技術(shù)原因,LEMO模型在抽取文字特征方面還比較弱,這是一個技術(shù)上的缺陷,意味著這個模型就無法很好完成NLP的“預(yù)訓(xùn)練”夢想:特征都抽取不好,怎么讓網(wǎng)絡(luò)里每一層具體表達(dá)不同邏輯層級的特征呢?而從技術(shù)細(xì)節(jié)上對比,也會發(fā)現(xiàn)ELMO這種“預(yù)訓(xùn)練”方法和圖像領(lǐng)域的預(yù)訓(xùn)練方法,兩者在模式上還有很大差異。
自然語AI研究人員還需要繼續(xù)找到一個方法,希望這個方法能很好的提取出文字的特征,就類似圖像處理領(lǐng)域的神經(jīng)網(wǎng)絡(luò)模型,能很好的提取圖像不同邏輯層面的特征。
恰就在時間剛好的2017年底,Google研究人員發(fā)表了一篇里程碑式的論文<Attentionisallyouneed>,這一篇論文提出的“自我注意力”機(jī)制讓自然語言處理揭開了嶄新的篇章。
八、注意力機(jī)制和Transformer
2017年12月,Google在頂級機(jī)器學(xué)習(xí)會議NIPS上發(fā)表了論文《Attentionisallyouneed》,提出在機(jī)器翻譯上大量使用自注意力(SelfAttention)機(jī)制來學(xué)習(xí)文本表示,并把這種機(jī)制模型起了個霸氣的名字:Transformer。
這篇論文一經(jīng)出世就橫掃了整個自然語言處理學(xué)術(shù)界,Transformer迅速的取代了深度學(xué)習(xí)里傳統(tǒng)的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)成為了之后的大語言模型的標(biāo)準(zhǔn)配置。
Transformer是目前NLP領(lǐng)域里最強(qiáng)的特征提取器,本質(zhì)上Transformer是一個疊加的“自注意力機(jī)制”構(gòu)成的深度網(wǎng)絡(luò)。
包括我們現(xiàn)在所知道的OpenAIGPT系列模型,以及GoogleBERT系列模型,都受到了這篇文章的啟發(fā)采用了部分transformer的架構(gòu),從而取得了突破性的效果。
先說個題外話,筆者感慨,論文是否牛逼,一看題目就知道,這篇論文連題目都如此特別和霸氣。
話說回來,什么是注意力機(jī)制?深度學(xué)習(xí)里的注意力機(jī)制其實(shí)是一種思想,參考借鑒了人類的注意力思維方式。
視覺注意力機(jī)制是人類視覺所特有的大腦信號處理機(jī)制,我們的眼睛會快速掃描全局圖像,得到需要重點(diǎn)關(guān)注的區(qū)域,就是所謂的注意力焦點(diǎn)后,再進(jìn)一步對相關(guān)區(qū)域投入更多的關(guān)注。這是人類在長期進(jìn)化中獲得的一種生存機(jī)制,極大提高了人類信息處理的效率和準(zhǔn)確性。
深度學(xué)習(xí)的注意力機(jī)制在概念上參照了人類的視覺注意力機(jī)制,核心目標(biāo)就是從眾多信息里選擇出對當(dāng)前任務(wù)更重要和關(guān)鍵的信息。
具體到NLP自然語言處理領(lǐng)域里,在之前,注意力機(jī)制一般是指輸出句子里某個詞和輸入句子每個詞之間的相似度。這也很好理解,就是去尋求問題(輸入)和答案(輸出)之間的關(guān)系么。
但Google這篇<Attentionisallyouneed>的特別之處,是明確指出了,我們其實(shí)不需要先考慮輸入和輸出的關(guān)系啊,為什么不參考人類理解語言的方式,首先“學(xué)習(xí)”一句話內(nèi)部單詞之間的關(guān)系呢?這就是所謂的“SelfAttention自注意力機(jī)制”:指的是輸入元素之間,或者輸出元素之間的內(nèi)在聯(lián)系機(jī)制。
如上圖所示,SelfAttention自注意力機(jī)制尋找到了一個句子里單詞之間的語義特征,“it”指代的是“theanimal”。
稍微想一下,SelfAttention自注意力機(jī)制在邏輯意義上非常清晰,它讓機(jī)器去理解人類語言每句話里單詞之間的語義關(guān)系。
除了邏輯上看起來更有道理,SelfAttention機(jī)制還附帶了一個很大的好處:因為網(wǎng)絡(luò)層面拋棄了傳統(tǒng)的RNN(循環(huán)神經(jīng)網(wǎng)絡(luò))模型,徹底規(guī)避了RNN不能很好并行計算的困擾,極大提高了模型并行訓(xùn)練計算的效率。更不用說,Attention注意力機(jī)制只關(guān)注部分信息,參數(shù)較少,容易訓(xùn)練。
有趣的是,谷歌研究人員在這篇重要論文里差點(diǎn)使用了“注意力網(wǎng)絡(luò)”這樣的命名,只是他們覺得這個名字聽起來實(shí)在不夠響亮,后來團(tuán)隊里一位工程師給起了個名字Transformer,這看起來就高大上很多了:)
基于自我注意力機(jī)制的Transformer模型的出現(xiàn)是革命性的,最最重要的一點(diǎn),它能實(shí)現(xiàn)自我監(jiān)督學(xué)習(xí)。所謂自我監(jiān)督,就是不需要標(biāo)注的樣本,使用標(biāo)準(zhǔn)的語料或者圖像,模型就能學(xué)習(xí)了。
在Tranformer出現(xiàn)之前,我們要訓(xùn)練一個深度學(xué)習(xí)模型,必須使用大規(guī)模的標(biāo)記好的數(shù)據(jù)集合來訓(xùn)練神經(jīng)網(wǎng)絡(luò)。對數(shù)據(jù)進(jìn)行標(biāo)注只能人工進(jìn)行,金錢和時間成本都相當(dāng)高。
讀者如果還有印象,在筆者上一篇關(guān)于AI繪畫的文章里有講到,對于AI繪畫至關(guān)重要的跨模態(tài)模型CLIP之所以成功,是因為它使用了互聯(lián)網(wǎng)已經(jīng)帶文字標(biāo)記的圖片作為訓(xùn)練數(shù)據(jù),巧妙規(guī)避了超大規(guī)模數(shù)據(jù)標(biāo)記的難題。
而回過頭來,Transformer的核心是在數(shù)學(xué)上計算輸入元素之間的關(guān)聯(lián)(Attention),通過這種模式,Tranformer成功的消除了訓(xùn)練數(shù)據(jù)集的標(biāo)注需求!
這簡直是感天動地,我們可以想象一下,從今以后,互聯(lián)網(wǎng)上或者企業(yè)數(shù)據(jù)庫里海量的文本數(shù)據(jù)都能直接成為大模型的訓(xùn)練數(shù)據(jù)源了。
NVIDIA創(chuàng)始人兼CEO黃仁勛在2022NVIDIAGTC大會上表示說,Transformer使自我監(jiān)督學(xué)習(xí)成為可能,并無需人類標(biāo)記數(shù)據(jù),AI領(lǐng)域出現(xiàn)了“驚人的進(jìn)展”。因此,Transformer正在越來越多的領(lǐng)域中發(fā)揮作用。比如用于語言理解的GoogleBERT,用于藥物發(fā)現(xiàn)的NVIDIAMegaMolBART以及DeepMind的AlphaFold2都要追溯到Transformer的突破。
上面又提到了GoogleBERT語言模型。這里要插一句,Google引以為傲的語言大模型BERT的架構(gòu)和OpenAIGPT其實(shí)非常像,但有一個簡單而本質(zhì)的區(qū)別,在訓(xùn)練階段,GoogleBERT輸入上文和下文來訓(xùn)練,OpenAIGPT系列一直堅持只輸入上文訓(xùn)練,而結(jié)果就是,GoogleBERT在體現(xiàn)AI分析能力的各種閱讀理解等問題上,都表現(xiàn)上佳;而OpenAIGPT術(shù)業(yè)有專攻,在生成式AI(比如回答各種問題,創(chuàng)造各種文字內(nèi)容)上一騎絕塵。
不夸張的說,Transformer是迄今為止發(fā)明的最強(qiáng)大的模型之一。斯坦福研究人員在2021年8月的一篇論文把tranformer稱之為“基礎(chǔ)模型”(Foundationmodel),認(rèn)為它推動了AI整個范式的轉(zhuǎn)變。
九、GPT3,神功初成
受Google論文啟發(fā),基于Transformer模式的GPT系列模型作為OpenAI的當(dāng)紅炸子雞,風(fēng)頭當(dāng)下無兩。
GPT全稱是“GenerativePre-Training”,直譯過來就是“生成式的預(yù)訓(xùn)練”,有意思吧。
如前文所說,OpenAI對GPT的生成式AI有堅定的信念,因此在訓(xùn)練模型的時候,只選用“上文”來訓(xùn)練模型,也就是說,GPT本質(zhì)上是一個極致的概率模型,它根據(jù)上文提示,來猜測下一個單詞應(yīng)該是什么。
這個堅持雖然在一開始GPT1和GPT2時代讓其輸出效果稍遜于同期Google的語言大模型BERT,但到了GPT3時期,在超級規(guī)模網(wǎng)絡(luò)參數(shù)的加持下,GPT這個100%純粹的生成式AI終于迸發(fā)出耀眼的光芒,模型輸出效果甚至大幅超越了研究人員的預(yù)期。
盡管沒有實(shí)證,但筆者很傾向認(rèn)為GPT3的極大成功和OpenAI堅定不移的只用上文來訓(xùn)練模型有著某種必然的關(guān)系,人的語言溝通也從來都是按順序表達(dá)的,沒有誰先把一句話的最后一個詞說完才回頭考慮上一個詞。從這點(diǎn)來看,GPT系列模型順應(yīng)了人類思考的邏輯,最終由量變推動了質(zhì)變。
終于,借助了Transformer,GPT這樣的超大規(guī)模語言模型(GPT-3有1750億個參數(shù))在不需要標(biāo)記數(shù)據(jù)的情況下,可以借助現(xiàn)成的海量標(biāo)準(zhǔn)數(shù)據(jù)以及超級算力,得到通用的“預(yù)訓(xùn)練”版本模型。
可能有讀者會繼續(xù)問,有了預(yù)訓(xùn)練好的模型版本后,GPT怎么能以適應(yīng)各種各樣的特定任務(wù)(或者專業(yè)一點(diǎn),“下游任務(wù)”)呢?GPT論文里給出了簡單的改造施工圖,附在這里讀者們有點(diǎn)直觀感性感知即可。總之通過簡單的改造操作,GPT就能很好適應(yīng)不同的任務(wù)。只需要在輸入部分調(diào)整一下就可以了,非常方便。
補(bǔ)充一句,或許正是因為改造特別方便,OpenAI的研究人員才能在GPT3。5版之上改造出一個問答專用的chatGPT。雖然還不是基于大殺器GPT4.0,但chatGPT所展現(xiàn)出的超強(qiáng)內(nèi)容生成能力,在這幾天已經(jīng)在大眾用戶群體里刮起了超級旋風(fēng)。
十、從GPT3到chatGPT,進(jìn)化繼續(xù)
在歷史長河里走了過來,終于回到了本文開頭的主角chatGPT。
如果讀者已經(jīng)理解了前面關(guān)于深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)的變遷和發(fā)展之路,再來看chatGPT的技術(shù)升級,就是特別簡單的事情了。
chatGPT是基于GPT-3。5模型的魔改。GPT-3.5和3.0的區(qū)別呢,首先是和微軟合作,在微軟的AzureAI云服務(wù)器上完成了訓(xùn)練;另一個重要的區(qū)別是其訓(xùn)練數(shù)據(jù)集里除了文字,還加入了代碼,因此chatGPT現(xiàn)在已經(jīng)可以寫程序,甚至給現(xiàn)成的代碼找bug了。
為什么試用過chatGPT的同學(xué)都感覺提升很明顯?一個重要的原因是chatGPT引入了一個新的訓(xùn)練方法RLHF(論文<Traininglanguagemodelstofollowinstructionswithhumanfeedback>發(fā)表于22年3月),簡單的說,就是用人類反饋的方式加強(qiáng)訓(xùn)練。
看這個簡單的描述顯然不能感受到技術(shù)的提升,不過我們只需要理解,這其實(shí)就是在GPT3的大數(shù)據(jù)預(yù)訓(xùn)練之下,再次加強(qiáng)了人類的反饋。
有趣的是,前面基于Transformer的通用大數(shù)據(jù)無監(jiān)督訓(xùn)練模式把自然語言的自動學(xué)習(xí)做到了某種極致,而這個RLHF又重新?lián)炱鹆恕笆謩訖n”人類反饋機(jī)制,貌似有一點(diǎn)返璞歸真的感覺。仿佛是武功高手練至化境之后,又重新拿起了最早的野球拳,一招使出了無與倫比的超越功力。
chatGPT還有一個很重要的特點(diǎn),就是針對輸出有效性上做了非常好的調(diào)整。使用過chatGPT的同學(xué)一定能感覺到,chatGPT并非每一個問題都能回答詳盡,但它絕對沒有胡說八道,chatGPT的回答和真實(shí)世界的情況是相當(dāng)一致的。做到這點(diǎn)很不容易,也是chatGPT和之前容易亂說一氣的問答AI模型前輩最大的不同。
另一個和確?;卮鹩行酝瑯又档藐P(guān)注的改進(jìn)是,chatGPT在道德約束上做得很出色。如果我們?nèi)ピ儐栆恍┯庠搅说赖逻吔绲膯栴},或者一些特別敏感的問題,chatGPT基本都能察覺和回避。這讓我們想起了AI繪畫大模型最讓人詬病的地方,那就是通過AI生成18x圖片,盡管這不是一個技術(shù)問題,但對于一個智能內(nèi)容生成平臺,我們顯然要有方法管理好內(nèi)容的質(zhì)量,以及內(nèi)容的道德邊界。在這一點(diǎn)上,chatGPT帶了一個好頭。
chatGPT的試用版在OpenAI的RLHF論文發(fā)出半年之后剛剛推出,根據(jù)OpenAI研究人員自己的說法,內(nèi)部經(jīng)過了大量調(diào)優(yōu),而且即使當(dāng)下,chatGPT還是有很多需要改進(jìn)的地方。但無論如何,chatGPT已經(jīng)展示給我們所有人,自然語言生成式AI所能達(dá)到的全新高度。
筆者特別憧憬GPT4.0的chatGPT改版。如果如傳說那般,GPT4.0已然突破了圖靈測試,筆者對基于4.0版本的chatGPT抱有無限的期待。說不定,作者在上一篇文章里預(yù)言的,AI大模型來寫長篇玄幻小說的時代,馬上就要來臨了
十一、后記
如果能耐著性子讀到這里,讀者應(yīng)該自然語言的生成式AI的前世今生有了一點(diǎn)概念。
回過頭來再問一次,對于“預(yù)訓(xùn)練”這個深度模型里的重要概念。讀者有沒有想過,預(yù)訓(xùn)練到底是什么?
對,具體而言,預(yù)訓(xùn)練就是在幾千億參數(shù)的支持下,類似GPT這樣的超級模型灌入了難以計量的文本訓(xùn)練數(shù)據(jù)(說不定已經(jīng)把全世界可以搜刮到的文本都拿來用了)來訓(xùn)練得到了一個通用大語言模型。
不過,在更高的一個角度去暢想,當(dāng)我們把全世界的文字信息直接灌進(jìn)擁有數(shù)千億參數(shù)的AI模型里,模型在網(wǎng)絡(luò)的各個層級上抽取和記憶這些文字里的特征信息。那么,GPT這樣的超級模型實(shí)際上就在通過所謂預(yù)訓(xùn)練方式,學(xué)習(xí)到了人類所有文字信息的全部特征,直接把人類的語言智慧記在了自己幾千億量級的神經(jīng)網(wǎng)絡(luò)大腦里。
做到了這種程度,真的就像是我們用人類的全部知識體系來培養(yǎng)出了一個超級強(qiáng)大的機(jī)器大腦,這個大腦通過它超大規(guī)模的人工神經(jīng)網(wǎng)絡(luò)規(guī)模接納學(xué)習(xí)了人類創(chuàng)造的所有內(nèi)容。進(jìn)而,針對人類的任意問題,AI可以做出連圖靈測試都無法區(qū)分的真正智能回答。
人類已經(jīng)馬上無法分辨,在小黑屋后面,那究竟是一個人還是一個AI了。
這一天來得比想象更快。
一個能容納和理解人類全部文字知識,并做出真正智能回答的AI,我們是不是可以簡單認(rèn)為,
今天,真正的機(jī)器智能,已然誕生。
本文由 @Web3天空之城 授權(quán)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自 Unsplash,基于 CC0 協(xié)議
該文觀點(diǎn)僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)。
- 目前還沒評論,等你發(fā)揮!