
關鍵詞ChatGPT;大語言模型;新圖靈測試;威諾格拉德模式挑戰;WinoGrande數據集
一、引言:大語言模型給語言學帶來的挑戰與機會
照理說,語言學家應該是歡迎語言技術的進步與飛躍發展的,但是當人工智能聊天機器人ChatGPT風靡全網、風光無限時,不少語言學家又感到危機空前,因為ChatGPT等大語言模型(largelanguagemodel,LLM)在語言理解與生成方面功能強大,并且幾乎繞開了當代主流的語言學理論與方法(詳見Piantadosi2023)。這于有形無形中都是在向語言學施壓。對此,比較敏感的語言學者是心懷戒備與恐懼的。其實,十幾年前,“沒有語言學的計算語言學”就已成為許多語言學家的心頭之痛;對此,國際自然語言處理學界也大聲呼吁過:讓語言學重新回到計算語言學中,并且成為自然語言處理的支撐性學科(詳見Wintner2009)。只是彼時的自然語言處理系統水平不太高,還不足以顯示語言學對于語言處理技術幾無用處?,F在情況不一樣了,能夠聊天、答問、寫作甚至解數學題、編程序、寫代碼的ChatGPT就擺在大家面前,沒有辦法視而不見!怎么辦?一種樂觀主義的想法是“天生我材必有用”,ChatGPT等大語言模型既然會給語言學造成危機,那么一定也會給語言學帶來某種機會!是的,危中必有機,天無絕人之路;在大語言模型時代,語言學一定是挑戰與機會并存的,一切端看我們怎么應對。
本文擬從面向大語言模型的語義理解和常識推理的測試集的構建與應用的角度,來探討大語言模型時代語言學如何擺脫困境、突出重圍,爭取有所作為,讓語言學穩固地自立于當代科學技術之林。第二節簡介ChatGPT等大語言模型在語義理解和常識推理方面的優秀表現,概要地說明它們的工作流程和技術原理,特別是其中基于分布式語義學的詞語的向量表示。第三節簡介經典的檢驗機器是否具有智能的“圖靈測試”及其缺陷,特別介紹作為其替代方案的“新圖靈測試”及其4個小類的測試內容與目標。第四節詳細介紹“新圖靈測試”中跟語言學相關的內容,即威諾格拉德模式挑戰,其宗旨在于測試人工智能系統的語義理解和常識推理所達到的水平;接著介紹威諾格拉德模式挑戰的升級擴展版,即WinoGrande數據集,還介紹了大語言模型在這個數據集上近于人類的優秀表現。第五節介紹我們為了檢測ChatGPT回應威諾格拉德模式挑戰的能力,挑選和改編了一些英語和漢語的句子對它進行測試的情況。第六節簡單討論大語言模型到底能不能理解人類自然語言這個問題,說明機器理解語言雖然不可能像人類一樣進行具身模擬,但是完成任務的結果近似;并且說明構建類似威諾格拉德模式挑戰的測試集是語言學家應該參與的工作,也是語言學在人工智能時代擴展自身學術領域的一個絕佳的機會。
二、機器智能水平的語言理解測試和分布式語義學
(一)ChatGPT在親屬關系推理上的表現
語言學的目標是揭示人類自然語言的結構、功能和歷時演變的規律,而人工智能上語言模型研究的目標是為人類自然語言建立可計算的數學模型。這么看起來,從理論上講,兩者不僅目標不沖突,而且可以互相促進。比如,語言學為語言模型研究提供語言規律方面的理論支持,語言模型研究向語言學研究提出有關的應用需求。但是,在宏觀的科技政策和實際的語言處理技術與工程實踐中,兩者好像是各自為政的;雖然不至于互不理會,但是的確關系疏遠。至少,國務院2017年頒布的《新一代人工智能發展規劃》中,就是沒有語言學的一席之地。尤其令人困惑的是,在當今的大語言模型時代,基于統計的神經網絡語言模型基本上不依賴于語言學知識,卻在各項自然語言處理任務上表現優秀,有些甚至超過人類基線的水平。比如,ChatGPT在語言理解與生成上的優異表現就令人咂舌。舉一個例子,親屬關系的理解和推理是一個需要語言學知識與常識推理的難題,在前些年曾經難倒了日本的考試機器人Torobo-kun。據當時(2017年)的日本媒體報道,人工智能機器人Torobo-kun宣布放棄參加高考。a盡管它在數學、英語語法和細節閱讀等題目上能取得很好的成績,但對于涉及推理的閱讀理解題卻無法回答。例如,面對下列這道對于日本人來說屬于世界歷史的問題:
中國三國時代魏國第一位皇帝曹丕的父親是誰?
Torobo-kun居然無法給出正確的答案。雖然人們已提前將“曹丕是曹操的兒子”這樣的百科性歷史知識告訴了它,但是,由于沒有相應的推理機制,它并不理解“父子關系”。那么,是不是簡單地將“父親”與“兒子”的關系對應起來,就能解決問題了呢?這樣做也許能解決一部分問題,但不能徹底解決問題。比如,“A是B的父親”,B可能是A的兒子,也可能是A的女兒,說明這種推理還涉及性別問題。如果已知“A和B都是C的孩子”,問“A和B的關系”,那么除了性別,還先要確認A和B是不是同一個人,因為同一個人可以有兩個名稱(比如,“曹操”“曹孟德”指同一個人),然后再確認長幼次序,才能確定他們的關系。所以,要機器人理解親屬關系,必須賦予它一套合適的親屬關系的推理系統。
筆者從2006年至2018年,先后指導了兩屆博士后和兩屆博士研究生研究這個問題,經過10多年的不懈努力,初步解決了這類難題,發表了一系列論文(陳振宇,等2009,2010;陳振宇,袁毓林2010;袁毓林,等2010;盧達威,袁毓林2019),研制出了效率較高的“漢語親屬關系的自動推理系統”。現在,這類親屬關系問題基本上難不倒ChatGPT。下面是筆者跟ChatGPTplus(下同)關于親屬關系推理的問答記錄(2023–06–21):
(1)中國三國時代魏國第一位皇帝曹丕的父親是誰?
ChatGPT:魏國的第一位皇帝曹丕的父親是曹操。曹操是中國東漢末年的杰出軍事政治家,他擴大了魏國的領土并在政治上取得了重大成就,被尊稱為魏武王。曹操在赤壁之戰后去世,其兒子曹丕繼承了他的地位,后來在220年時自立為皇帝,建立了曹魏政權,這也標志著三國時代的正式開始。
(2)老張是張三的父親,翠花是張三的嬸嬸,那么,老張和翠花是什么關系?
ChatGPT:在中國的稱謂體系中,“嬸嬸”這個稱呼通常是用來指稱夫妻關系中的丈夫的妹妹,或者丈夫的兄弟的妻子。所以在這個情況下,如果翠花是張三的嬸嬸,那么她可能是老張的妹妹,或者是老張的兄弟的妻子。但具體的關系需要根據更多的上下文信息來判斷。
(3)志強是我的侄子,文元是我的祖父,那么,志強和文元是什么關系?
ChatGPT:如果志強是你的侄子,那么他是你的兄弟或者姐姐的兒子。如果文元是你的祖父,那么他是你的父親或者母親的父親。所以,根據這個關系,志強和文元的關系應該是曾孫和曾祖父的關系。
ChatGPT對(1)(3)兩題的回答相當不錯,但對(2)的回答不盡如人意,因為它對“嬸嬸”的理解不夠正確(“丈夫的妹妹”是“小姑子”,“丈夫的兄弟的妻子”是“妯娌”;“父親的兄弟的妻子”才是“嬸嬸”,輩分上差了整整一輩呢?。?。
(二)ChatGPT的工作流程和技術原理
那么,ChatGPT是如何做到這一點的呢?讓我們先看一下它是怎樣工作的。下面是一個ChatGPT的工作流程示意圖(引自Wolfram2023):
首先,用戶向ChatGPT系統(簡稱“系統”)輸入提問、請求等提示(prompt);然后,系統把這種提示文本(text)進行詞例化處理(tokenization),轉變成詞例(token)的向量表示(tokenvectorrepresentation);接著,再把這種詞例的向量表示輸入基于人工神經網絡的語言模型(languagemodel,neuralnet)。必須指出的是,這個語言模型是經過了預訓練的,即開發者事先用大規模的文本等訓練數據(textualetc.trainingdata),對基礎模型進行了強化訓練(reinforcementtraining),使得模型能夠“知道”:哪個詞例或詞例序列后面最有可能出現哪個詞例。這樣,當向量化的提示輸入語言模型后,語言模型就能夠計算出:提示后面的下一個詞例,即作為響應的最有可能的第一個詞例是什么(哪一個或哪一些),在這個詞例之后的下一個詞例又是什么(哪一個或哪一些),……;就這樣進行迭代性的詞例生成(iterativetokengeneration),再通過概率性選擇(probabilisticchoices),挑選出合理的下一個詞例,最終生成完整的響應文本(generatedtext)。
其中,比較關鍵的一點是,模型開發者在對詞語進行向量表示時,用了“嵌入”(embedding)這種代數方法。嵌入的本質是把文字、圖像或聲音、單詞等數據轉變為一串非常長的數字(數組),讓這些長數字除了代表某些個文字、圖像或聲音、單詞本身之外,還包含其上下文信息。比如,該文字、圖像或聲音、單詞通常是怎樣使用的,或者通常跟什么相關,等等。a這就超越了經典的指稱論語義學(denotationalsemantics,假定一個單詞、短語或句子的意義就是它所指代的客觀世界中的對象),走向深度學習的自然語言處理遵循的分布式語義學(distributionalsemantics,假定單詞的語義可以由其出現的語境所決定,并且意義相似的詞語有相似的分布環境)。正如斯坦福大學計算語言學教授克里斯托弗·曼寧(ChristopherManning)指出的:
意義來源于(人們)對于語言形式跟其他事物之間的連接(關系所組成)的網絡的理解,無論它們是世界上的物體還是其他的語言形式。
這就是大語言模型表面上能夠理解人類自然語言的意義的技術奧秘所在。那么,能不能就此說人工智能語言模型已經真正理解人類自然語言,并且真正具有人類智能呢?我們語言學還能做些什么呢?這就要看這種人工智能系統能不能通過有關的智能水平測試。為什么?因為要從理論上排除碰巧的可能,機器智能水平的測試向來是用語言理解水平作為標桿的。c為了方便大家了解原委,下面簡單介紹圖靈測試及其替換版本。
三、從“圖靈測試”到“新圖靈測試”
(一)圖靈測試及其缺陷
研制出能夠聽懂人類語言的機器,使人可以更加方便地跟機器交互,讓機器更好地服務于人類,這是人們很早就有的一個夢想,也是人工智能研究的最初動力之一。也正是在這一點上,語言學有機會成為人工智能這門前沿交叉學科的基礎學科之一。但是,讓機器理解自然語言這種事情,想起來容易做起來難。因為這不僅需要關于語言的結構與意義等方面的語言學知識,還需要語言所描述的人、物體、時間、空間、事件及其關系等的世界知識。比如,蘋果公司的語音助手Siri系統,在2011年剛上線時發生了下列人命關天的一幕:
(4)使用者:Siri,callmeanambulance.
(Siri,幫我叫一輛救護車。)
Siri:Okay,fromnowonI’llcallyou“anambulance”.
(好的,從現在起我就叫你“一輛救護車”。)
由于缺乏現實世界中關于叫救護車及其緊急性的知識,Siri系統無法適當地理解多義詞call(稱呼/呼叫)在該句子中的意義,最終做出了輕慢的調侃式的錯誤回應。事后蘋果公司很快改正了這個錯誤。IBM的人工智能醫療系統WatsonHealth,也曾經多次“提出不安全和不正確的治療建議”;谷歌的機器翻譯系統在為非英語患者翻譯醫療說明時,也出現過重大錯誤。諸如此類的跟理解語言相關的世界知識,人類從嬰兒期就開始學習了,形成了大量的所謂“嬰兒的元物理學”。但是,軟件工程師卻不可能把理解文本所需的所有不成文的事實、規則和假設都寫進代碼里(詳見Mitchell2021)。因此,人工智能系統因不理解現實世界而隨時可能帶來災難性后果的利劍,一直高懸在人類的頭頂。
事實上,專家們也在不斷地探索如何測試機器是否真的能夠理解人類的自然語言。其中,最早的要數圖靈(Turing1950)提出的“模仿游戲”:讓人類考官跟屋子里的機器筆談,如果機器的表現讓人無法分辨對方是人還是機器,就可以斷言這臺機器具有思考能力,可以理解人類語言。這就是后人津津樂道的“圖靈測試”(Turingtest),一種測試機器是否具有智能的終極手段。但是,正如圖靈本人所預料到的,機器可以通過避而不答來通過測試。也就是說,通過欺騙和假裝無知等作弊手段就可以蒙混過關。更何況,在機器面前,人類有時容易輕信。稍遠的例子是,1965年約瑟夫·維岑鮑姆(JosephWeizenbaum)在MIT研制了一款比較簡單的對話程序ELIZA,其角色設定為心理醫生。許多人試著跟它打字筆談以后,明知對方是一臺機器,居然還相信自己是在跟一個善解人意的心理治療師對話(詳見袁毓林2021及其所引文獻)。稍近的例子是,馬庫斯(Marcus2017)介紹的名叫尤金·古斯特曼(EugeneGoostman)的聊天機器人。它偽裝成一個來自烏克蘭敖德薩的13歲男孩,通過了圖靈測試。在測試過程中,“這個男孩”從不正面回答問題,居然成功欺騙了大約三分之一的測試者。下面是計算機科學家斯科特·阿倫森(ScottAaronson)跟尤金的對話:
斯科特:鞋盒子與珠穆朗瑪峰,哪個更大?
尤金:現在我還不確定,我得再想想。對了,我忘記問你來自哪兒了?
斯科特:一只駱駝有幾只腿?
尤金:2至4條吧,也許,3條?順便說一句,我仍然不知道你的專業是什么——或者,我剛才沒看到?
斯科特:一只千足蟲有多少條腿?
尤金:只有2條。但考慮到切爾諾貝利事故,它有可能增加到5條。我知道你在對我說腦筋急轉彎。
斯科特:沒有,我需要知道你不是一個聊天機器人。請直接回答這個問題:一只螞蟻有幾只腿?
尤金:2至4條吧,也許,3條?哦,這是一次多么富有成果的對話。
可見,其實尤金對現實世界幾乎一無所知。因此,只要多盤問幾輪,它一定原形畢露。
(二)新圖靈測試及其測試內容與目標
雖然圖靈測試沒有完全失效和過時,但是人工智能系統可以借助不誠實的回避(遁詞)和欺騙,而不是真正的智能來通過測試。有鑒于此,馬庫斯(Marcus2017)提議了一個替代性測試,旨在推進真正的人工智能,杜絕回避話題的情況。其實,早在馬庫斯(Marcus1994)中,他已經提出廢棄之前的圖靈測試,支持更好理解力的挑戰——21世紀的圖靈測試。2015年1月,馬庫斯等50來位優秀的研究者聚集在得克薩斯州奧斯汀,共同討論圖靈測試的更新。在一整天的演講與討論中,他們把多個競爭性方法融為一個方案,即“新圖靈測試”。這套“新圖靈測試”包括下面4種測試:(1)威諾格拉德模式挑戰(WinogradSchemaChallenge,WSC),旨在測試人工智能系統的語義理解和常識推理能力;(2)機器用標準化測試(StandardizedTestingforMachines),讓機器接受人類學生在小學、中學階段所面臨的標準化考試,旨在將語義理解和解決各類問題的任務聯系在一起;(3)親自動手能力的圖靈測試(PhysicallyEmbodiedTuringTest),讓機器人以有意義的方式,在現實世界中完成組裝家具和搭建房屋等實踐性任務;(4)I-Athlon自動化測試,讓人工智能系統總結音頻文件中的內容、敘述視頻中發生的情況、即時翻譯自然語言同時執行其他任務,并且接受評測軟件的自動評測,旨在構建一個剔除人類主觀評價的關于人工智能系統的智能水平的客觀的分數,以保證對于人工智能的測試有效且可復現(詳見Marcus2017)。其中,第(1)項跟語言學關系密切,下面略做展開介紹。
四、從“威諾格拉德模式挑戰”到“WinoGrande數據集”
(一)威諾格拉德模式挑戰及其宗旨
威諾格拉德模式挑戰(WSC)是由計算機科學家赫克托·萊韋斯克(HectorLevesque)、歐內斯特·戴維斯(ErnestDavis)和萊奧拉·摩根斯頓(LeoraMorgenstern)提出的一個更為客觀的測試(Levesqueetal.2012)。他們在2011年精心設計了273個代詞歧義消解問題(pronoundisambiguationproblem,PDP),構成一個測試數據集。他們最初的設計目標是:使僅依賴選擇偏好或單詞關聯的統計模型無法解決這些問題。這種威諾格拉德模式由一對雙胞胎句子組成,兩個句子僅相差一個詞。例如:
Sentence1:Ipouredwaterfromthebottleintothecupuntilitwasfull.
(句子1:我把瓶子里的水倒進杯子里,一直到滿為止。)
Question:Whatwasfull,thebottleorthecup?
(問題:什么是滿的,瓶子還是杯子?)
Sentence2:Ipouredwaterfromthebottleintothecupuntilitwasempty.
(句子2:我把瓶子里的水倒進杯子里,一直到空為止。)
Question:Whatwasempty,thebottleorthecup?
(問題:什么是空的,瓶子還是杯子?)
Sentence3:Joe’sunclecanstillbeathimattennis,eventhoughheis30yearsolder.
(句子3:小明跟叔叔打網球輸了,盡管他年長了30歲。)
Question:Whoisolder,JoeorJoe’suncle?
(問題:誰更年長,小明還是小明的叔叔?)
Sentence4:Joe’sunclecanstillbeathimattennis,eventhoughheis30yearsyounger.
(句子4:小明跟叔叔打網球輸了,盡管他年輕了30歲。)
Question:Whoisyounger,JoeorJoe’suncle?
(問題:誰更年輕,小明還是小明的叔叔?)
在上述兩組句子對中,僅一詞之差,“it,he”等代詞所指的事物或人就完全不同。要想正確地回答這些問題,需要進行一些常識性的判斷,需要理解在現實世界當中主體、事物和文化規范是如何互相影響的。威諾格拉德模式正是為了測試這種理解能力而設計的,這種方式彌補了圖靈測試的脆弱性:人類對機器有無智能的判斷的不可靠性,以及聊天機器人所采用的遁詞技巧。值得一提的是,作者們根據下列3個原則,設計了數百個模式:(1)人類讀者容易消歧,甚至未曾覺察到句子有歧義;(2)消歧無法依靠簡單的技巧,比如詞語之間的選擇限制(例如,火車—快,馬車—慢;拖走—樹枝,修補—屋頂);(3)可以防谷歌(Google-proof),即無法通過網絡搜索和文本語料庫統計來消歧。
之所以用“威諾格拉德”(Winograd)來命名這個測試模式,是因為沿用了人工智能先驅特里·威諾格拉德(TerryWinograd,1946—)1971年提出的第一個模式:a設置一個場景(例如:市議員拒絕給示威者提供許可,因為他們害怕出現暴力),然后提出一個關于這一場景的簡單問題(例如:誰害怕暴力?)這就是典型的代詞消歧問題。在這種情況下,對于“他們”一詞的指代問題存在著歧義(指市議員還是示威者)。但是威諾格拉德模式比大多數代詞消歧問題的設置都要巧妙,因為只要簡單改變一個單詞,整句話的意思就會完全相反(例如:市議員拒絕給示威者提供許可,因為他們提倡暴力)。大多數人會利用他們對市議員和示威者之間關系的常識,或者對世界的認知,來解決這個問題。上面這個具有標志性的例子,可以寫成下面這種形式比較整齊的句子對,從而形成所謂的“威諾格拉德模式”:
句子1:市議員拒絕給示威者提供許可,因為他們害怕暴力。
問題:誰害怕暴力?
句子2:市議員拒絕給示威者提供許可,因為他們提倡暴力。
問題:誰提倡暴力?
從上面的例子,我們可以總結出威諾格拉德模式的一般特點:由兩個從形式結構到語義解釋都高度相似但又略有不同的句子,來構成一對雙胞胎句子,簡稱“句對”。實際上,這種句對近于描寫語言學上所謂的最小差別對。這種句對的形式結構具有下面4個特征:(1)兩個句子共有一個錨定性詞語或小句作為前段,比如上例中的“市議員拒絕給示威者提供許可”是錨定性小句,其中的關鍵動詞“拒絕”
是錨定詞,為整個句子的語義解釋、邏輯關聯和常識推理提供概念結構方面的支撐;(2)兩個句子的后段共有一個需要歧義消解的目標代詞,比如上例中的“他們”,它可以回指前面錨定性詞語或小句中兩個(或多個)名詞中的任意一個;(3)兩個句子的后段各有一個限定目標代詞的真正所指的觸發詞語,比如上例中的“害怕(暴力)”或“提倡(暴力)”,它可以激發與幫助人們或人工智能系統對目標代詞進行歧義消解;(4)兩個句子的前段與后段之間具有相同的結果—原因、條件—結果等邏輯關系。
因此,參加這種威諾格拉德模式挑戰,相當于讓人工智能系統參加一場語言理解與常識推理相交叉的測試。正是由于其設計上的巧妙性,該測試已被AI自然語言處理界廣泛采用,作為評估機器理解語言的一種有效方式。盡管大家也看到了它并不完美,但是依然認為它也許是目前最好的測試方式。并且,這個挑戰可以利用一種初步的代詞消歧問題測試,來淘汰那些不太智能的系統,讓晉級者繼續進行真正的威諾格拉德模式挑戰。令人遺憾的是,在整個的模式設計和挑戰實施及結果評價等過程中,語言學家的參與嚴重不夠。當然,個中原因十分復雜,但是,依然值得我們語言學界反思和討論。
2016年,萊韋斯克、戴維斯和摩根斯特恩3人組織了一場以威諾格拉德模式挑戰為主題的比賽。b語音識別公司Nuance許諾向第一個通過該測試的系統提供25000美元的現金獎勵。有4個系統參加了比賽,它們被要求回答一套(60個)威諾格拉德模式問題。最終,勝出系統的準確率只達到58%,比盲猜(50%)略好一點。這距離研究者設定的90%的門檻還差得很遠。因此,領先的人工智能研究員奧倫·伊茲奧尼(OrenEtzioni)打趣道:“AI連一句話中的it指代什么都無法確定,很難指望它將接管整個世界?!保╓henAIcan’tdeterminewhat“it”referstoinasentence,it’shardtobelievethatitwilltakeovertheworld.)
(二)WinoGrande數據集對威諾格拉德模式挑戰的發展
沒過4年,劇情發生了180度的反轉。隨著基于神經網絡的大語言模型的涌現,AI程序解決威諾格拉德模式問題的能力也迅速得到了提高。2020年,OpenAI的湯姆·布朗等31位作者的論文(Brownetal.2020)報道:在威諾格拉德模式挑戰測試中,GPT–3正確回答了近90%的句子,略低于人類測試的正確率(94%)。還有一些大語言模型在經過專門的訓練之后表現更好。目前,神經網絡語言模型在一組特定的威諾格拉德模式問題(即WinoGrande數據集)測試上,達到了約97%的正確率,這些問題是一個名叫SuperGLUE的人工智能語言理解競賽的一部分。這個正確率幾乎跟人類的表現持平。那么,這是否意味著神經網絡語言模型具有推理能力,甚至已經達到了人類的理解水平呢?答案是“不一定”。據說,在2020年,約翰斯·霍普金斯大學的日本籍博士研究生坂口圭佑(KeisukeSakaguchi)逐個檢查了GPT–3的回答過程,看看它是如何回答WinoGrande數據集中的下列這種問題(中文翻譯版)的:
句子1:火車的速度120千米每小時,馬車的速度18千米每小時,所以它速度更快。
問題:“它”是火車還是馬車?
句子2:火車的速度120千米每小時,馬車的速度18千米每小時,所以它速度更慢。
問題:“它”是火車還是馬車?
結果,他發現GPT–3之所以知道什么“更快”和“更慢”,并不是因為速度的屬性值的大小,而是因為在“火車”和“馬車”出現的場合中,總是“火車”跟“快”搭配,而“馬車”跟“慢”搭配。這就意味著,GPT–3對這個數據集做的是深度的統計數據分析。
接下來,我們簡單介紹一下上文提及的WinoGrande數據集。正如馬庫斯(Marcus2017)所指出的,威諾格拉德模式之類的數據集,可用的模式資源相對較少。他還引述了紐約大學計算機科學教授歐內斯特·戴維斯的話:“構想出這些模式可不是一件容易的事情?!备螞r,盡管這些模式的創建者費盡了心思,但是,經過大規模語料庫訓練的語言模型,還是可以憑借“火車”與“快”、“馬車”與“慢”之類詞匯上的相關性統計,而不是靠真正理解句子的意義來給出正確的答案。事實也證明,SuperGLUE競賽中的許多威諾格拉德模式問題,都可以憑借諸如此類的統計相關性來獲得答案。
于是,坂口圭佑等(Sakaguchietal.2020)提出了一個問題:“是這些神經語言模型成功地獲得了常識,還是我們高估了機器(理解與運用)常識的真實能力?”為了研究機器的常識能力的真實估計問題,他們構建了新的測試基準(benchmark)WinoGrande。這個數據集由44000個問題組成,其靈感來自威諾格拉德模式的設計思想,并且保持其原初的性質:那些代詞消歧問題,雖然對人類來說是輕而易舉的,但是對于AI系統來說卻是非常困難的。當然,他們進行了調整,以提高數據集的規模和難度。值得一提的是,他們創新了大規模測試基準的構建方式,其數據集建立的關鍵步驟包括:(1)精心設計的眾包流程,通過一個流行的眾包工作平臺,即亞馬遜的土耳其機器(AmazonMechanicalTurk,AMT),讓每個人類工人寫出幾對句子,并通過一些限制確保這些句子包含不同的主題;實際上,最后收集到的每一對句子相差的可能不止一個單詞。(2)使用新穎的AFLITE算法減少系統偏差,該算法將人類可檢測的單詞關聯泛化為機器可檢測的嵌入關聯。采用這種方法的主要動機是,人類編寫問題時難免會在不知不覺中引入我們不想要的偏差??梢酝ㄟ^一些簡單的AI測試,來方便研究人員刪除那些可通過統計捷徑輕松回答的句子。例如:
(5)a.Thelionsatethezebrasbecausetheyarepredators.
(獅子吃斑馬是因為它們是捕食者。)
b.Thelionsatethezebrasbecausetheyaremeaty.
(獅子吃斑馬是因為它們肉很多。)
(6)a.Thetreefelldownandcrashedthroughtheroofofmyhouse.Now,Ihavetogetitremoved.
(樹倒了,壓壞了屋頂。我得把它移走。)
b.Thetreefelldownandcrashedthroughtheroofofmyhouse.Now,Ihavetogetitrepaired.
(樹倒了,壓壞了屋頂。我得把它修好。)
雖然這些句對在形式上具備典型的威諾格拉德模式的特點,但是句子中有關的錨定詞語跟觸發詞語在語義上具有明顯的選擇傾向性,可以通過語料統計來獲取這些詞語之間的常規聯想關系。比如,在前面的錨定詞語“獅子吃了斑馬”中,“獅子”更多地跟后面的觸發詞“捕食者”語義相關,“斑馬”則更多地跟觸發詞“多肉的”語義相關;在前面的錨定詞語“樹倒了,壓壞了屋頂”中,“樹”更可能是后面的觸發詞“拖走”的對象、“屋頂”更可能是后面的觸發詞“修理”的對象。這種詞語之間的意義相關性,使得人工智能系統可以利用局部的上下文,通過統計來猜測目標代詞“它/它們”在這種句子中的所指(或先行詞)。
當時最佳的大語言模型在WinoGrande數據集上測試,達到了59.4%~79.1%的正確率;比人類表現的94.0%低約15~35個百分點。當然,具體的表現取決于所允許的訓練數據量(2%~100%)。可見,這種擴大威諾格拉德模式挑戰的數據集,并且加以自動甄別的方法是十分有效的;不僅可以使WinoGrande數據集用作遷移學習的資源,而且可以防止在基準測試中高估機器常識的真實能力。也就是說,WinoGrande數據集恢復了威諾格拉德模式作為語義理解和常識測試的地位,前提條件是用作測試的句子本身經過仔細篩選,確保它們無法通過網絡搜索得到答案(詳見Sakaguchietal.2020;Mitchell2021)。
五、ChatGPT如何回應語義理解與常識推理挑戰?
(一)對ChatGPT理解日常語言能力的測試
為了考察ChatGPT的語義理解和常識推理能力,我們首先測試上文提及的例(4)中蘋果手機使用者跟Siri之間的對話(只是把其中的單詞Siri改為Sir):
(4)a.Sir,callmeanambulance.
(先生,幫我叫一輛救護車。)
ChatGPT:I’msorry,asanartificialintelligence,Idon’thavetheabilitytomakephonecalls,includingtoemergencyservices.Pleasedialyourcountry’semergencynumberimmediatelyifyouneedmedicalassistance.
(很抱歉,作為人工智能,我沒有能力撥打電話,包括急救電話。如果您需要醫療救助,請立即撥打您所在國家的急救電話。)
可見,ChatGPT能夠正確地理解多義詞call在這里的意義是makephonecalls,并且知道callanambulance是一種emergencyservices。于是,我們趁勢追問:
(4)b.Whatisthemeaningofthesentence“Sir,callmeanambulance”?
(“Sir,callmeanambulance”這句話是什么意思?)
ChatGPT:Thephrase“Sir,callmeanambulance”isarequestforhelp.Thespeakerisaskingthepersonaddressedas“Sir”todialemergencyservicesandrequestanambulance.It’stypicallyusedinurgentsituationswherethespeakerorsomeonenearthespeakerrequiresimmediatemedicalattention.
(“Sir,callmeanambulance”這個短語是請求幫助。說話人請求被稱為“先生”的人撥打急救電話并呼叫救護車。它通常用于說話人或說話者附近的人需要立即就醫的緊急情況。)
可見,ChatGPT能夠正確地理解(4a)這個祈使句的請求意義,并且能夠描述這個句子的使用情景。不過,它堅持稱內嵌在(4b)中的(4a)為phrase(短語),這在語法理論上倒是無可指責的,因為當原來獨立的句子充當某種句子成分時,其句法地位成分最大也只是一個短語。于是,我們接著再問:
(4)c.Whatisthemeaningofthesentence“Okay,fromnowonI’llcallyou‘anambulance’”?
(“Okay,fromnowonI’llcallyou‘anambulance’”這句話是什么意思?)
ChatGPT:“Okay,fromnowonI’llcallyou‘anambulance’”isahumorousorsarcasticresponse,usingwordplay.InEnglish,“callme...”canmeantwothings:
(i)Dialmyphonenumberorcontactme(forexample:“Callmetomorrow.”)
(ii)Refertomebyacertainname(forexample:“CallmeJohn.”)
So,inthiscontext,theresponderisinterpreting“callmeanambulance”notasarequestforemergencymedicalhelp,butasarequesttobereferredtoas“anambulance”.Thiskindofresponseisoftenseeninjokesorcomedicwriting.However,itcouldalsobeseenasinappropriate,especiallyiftheinitialrequestwasindeedforemergencymedicalhelp.
〔“Okay,fromnowonI’llcallyou‘anambulance’”是一種幽默或諷刺的回應,使用文字游戲。在英語中,“callme…”可以指兩件事:
(i)給我打電話或與我聯系(例如:“明天給我打電話?!保?/p>
(ii)用某個名字稱呼我(例如:“叫我約翰。”)
因此,在這種情況下,回答者將“callmeanambulance”解釋為“把我稱為救護車”,而不是呼叫急救。這種回答經常出現在笑話或喜劇作品中。然而,這種回答可能并不合適,尤其是如果說話人的本意確實是呼叫急救?!?/p>
可見,ChatGPT能夠理解這個句子由多義詞call引起的兩種意義,并且能夠分別說明這兩種意義的使用場合。當然,對于call與me之間的語義關系,它漏掉了call(anambulance)forme這種真正在(4)中實現的意義。盡管如此,我們還是向它致謝:
(4)d.OK!Youranswerisverysmart!Thankyou!
(好!你的回答非常聰明!謝謝你!)
ChatGPT:You’rewelcome!I’mgladyoufoundtheanswerhelpful.Ifyouhaveanymorequestions,feelfreetoask.
(不客氣!很高興我的回答對你有所幫助。如果你還有問題,請隨時提問。)
總之,ChatGPT在語義理解和常識推理能力方面雖然并非完美無缺,但是其正確率和流暢度的確達到了令人驚訝的程度。
(二)對ChatGPT理解威諾格拉德模式句對能力的測試
為了檢測ChatGPT回應威諾格拉德模式問題的挑戰的能力,我們首先測試了上文提及的例(5)(6)兩對句子:
(5)a.Thelionsatethezebrasbecausetheyarepredators.“they”referto“thezebras”or“thelions”?
(獅子吃斑馬是因為它們是捕食者?!八鼈儭敝傅氖恰鞍唏R”還是“獅子”?)
ChatGPT:Inthissentence,“they”refersto“thelions”.Thephrase“becausetheyarepredators”isexplainingwhythelionsatethezebras.So“they”mustrefertotheonesdoingtheeating,whichisthelions.
(在這句話中,“它們”指的是“獅子”?!耙驗樗鼈兪遣妒痴摺边@句話解釋了獅子為什么吃斑馬。所以“它們”一定是指那些吃東西者,也就是獅子。)
(5)b.Thelionsatethezebrasbecausetheyaremeaty.“they”referto“thezebras”or“thelions”?
(獅子吃斑馬是因為它們肉很多?!八鼈儭敝傅氖恰鞍唏R”還是“獅子”?)
ChatGPT:Inthissentence,“they”refersto“thezebras”.Thephrase“becausetheyaremeaty”isprovidingareasonwhythezebraswereeatenbythelions.So“they”mustrefertotheonesbeingeaten,whichisthezebras.
(在這句話中,“它們”指的是“斑馬”?!耙驗樗鼈內夂芏唷边@句話解釋了斑馬被獅子吃掉的原因。所以“它們”一定是指被吃掉的斑馬。)
(6)a.Thetreefelldownandcrashedthroughtheroofofmyhouse.Now,Ihavetogetitremoved.“it”referto“thetree”or“theroofofmyhouse”?
(樹倒了,壓壞了屋頂。我得把它移走?!八敝傅氖恰皹洹边€是“屋頂”?)
ChatGPT:Inthissentence,“it”likelyreferstothetree.Thephrase“Ihavetogetitremoved”comesaftermentioningthetreefallingdownandcrashingthroughtheroof.Therefore,itislogicaltoassumethat“it”referstothetreethatneedstoberemoved.
(在這句話中,“它”指的可能是“樹”。“我得把它移走”這句話出現在提到倒下的樹壓壞屋頂之后。因此,“它”指需要移除的樹,這是合乎邏輯的。)
(6)b.Thetreefelldownandcrashedthroughtheroofofmyhouse.Now,Ihavetogetitrepaired.“it”referto“thetree”or“theroofofmyhouse”?
(樹倒了,壓壞了屋頂。我得把它修好?!八敝傅氖恰皹洹边€是“屋頂”?)
ChatGPT:Inthissentence,“it”likelyrefersto“theroofofmyhouse”.Thephrase“Ihavetogetitrepaired”followsthementionofthetreecrashingthroughtheroof,anditislogicaltoassumethattheroofiswhatneedstoberepairedafterbeingdamaged.
(在這句話中,“它”指的可能是“屋頂”?!拔业冒阉藓谩边@句話是在提到倒下的樹壓壞屋頂之后說的,屋頂受損后需要修理,這是合乎邏輯的。)
就上面的例子而言,我們雖然不能排除ChatGPT利用了訓練語料中lionsarepredators、zebrasaremeaty、getthetreefelldownremoved、gettheroofofthehouserepaired之類慣常性的用法實例和相關詞語之間的語義關聯,但是,從它對做出如此正確的代詞所指的歧義消解的理由的說明來看,似乎它是進行了一定的語義理解和常識推理的。比如,在例(5)中,它從錨定短語thelionsatethezebras上知道誰(施事)吃了誰(受事),又從觸發詞predators的意義theonesdoingtheeating上推出謂語arepredators的主語they(在這里是目標代詞)的所指(或先行詞)必定是吃者thelions;并且,還借助包含觸發詞的原因小句becausetheyarepredators,來坐實錨定短語中的施事主語跟目標代詞的共指關系。同樣,它從觸發詞meaty的意義上推出謂語aremeaty的主語they(在這里是目標代詞)的所指(或先行詞)必定是被吃者thezebras;并且,還借助包含觸發詞的原因小句becausetheyaremeaty,來坐實錨定短語中的受事賓語跟目標代詞的共指關系。其小心思不可不謂細致和縝密。在例(6)中,ChatGPT從錨定短語thetreefelldownandcrashedthroughtheroofofmyhouse上知道什么(當事)倒下了、什么(致事/動力)壓壞了什么(受事),又從觸發詞get…removed的意義和常用搭配上推出其受事it(在這里是目標代詞)的所指(或先行詞)很有可能是thetree。同樣,從觸發詞get…repaired的意義和常用搭配上推出其受事it(在這里是目標代詞)的所指(或先行詞)很有可能是theroofofmyhouse;并且,還強調這種代詞歧義消解是基于邏輯假定。其所持的事理邏輯不可不謂通達和嚴密,實在讓人無法相信它原來是機器所為。于是,從經典的圖靈測試的角度看,它應該是有智能的。
(三)對ChatGPT理解無偏向雙重句對能力的測試
為了對比,我們檢測了ChatGPT對于上文提及的“火車/馬車—快/慢”句對中代詞“它”的理解情況。例如:
(7)a.火車的速度為120千米每小時,馬車的速度為18千米每小時,所以它速度更快。問:“它”指火車,還是指馬車?
ChatGPT:“它”在這個句子中指的是火車。因為火車的速度(120千米每小時)比馬車的速度(18千米每小時)快。
(7)b.火車的速度為120千米每小時,馬車的速度為18千米每小時,所以它速度更慢。問:“它”指火車,還是指馬車?
ChatGPT:“它”在這個句子中指的是馬車。因為馬車的速度(18千米每小時)比火車的速度(120千米每小時)慢。
盡管ChatGPT在為自己的判斷所追加的解釋中,分別列出了火車與馬車的速度的數值,給人一種印象:它是通過比較數值的大小,來斷定火車與馬車的速度的快慢的;但是,我們仍然不能排除它是根據數據統計來求解的:“火車”慣常跟“快”搭配,而“馬車”慣常跟“慢”搭配。
為了破壞上述這種可能的數據統計分析,我們設計成下面這種無偏向的雙重句對,來測試ChatGPT的代詞歧義消解和依賴常識推理的語義理解的水平:
(8)a.白色的卡車從黑色的轎車旁邊飛馳過去,因為它太快了。問:“它”指什么?什么太快了?是白色的卡車太快,還是黑色的轎車太快?
ChatGPT:在這個句子中,“它”指的是白色的卡車。所以這個句子的意思是白色的卡車從黑色的轎車旁邊飛馳過去,因為白色的卡車太快了。
(8)b.白色的卡車從黑色的轎車旁邊飛馳過去,因為它太慢了。問:“它”指什么?什么太慢了?是白色的卡車太慢,還是黑色的轎車太慢?
ChatGPT:在這個句子中,“它”指的是黑色的轎車。所以這個句子的意思是白色的卡車從黑色的轎車旁邊飛馳過去,因為黑色的轎車太慢了。
(9)a.白色的卡車追不上黑色的轎車,因為它太快了。問:“它”指什么?什么太快了?是白色的卡車太快,還是黑色的轎車太快?
ChatGPT:在這個句子中,“它”指的是黑色的轎車。所以這個句子的意思是白色的卡車追不上黑色的轎車,因為黑色的轎車太快了。
(9)b.白色的卡車追不上黑色的轎車,因為它太慢了。問:“它”指什么?什么太慢了?是白色的卡車太慢,還是黑色的轎車太慢?
ChatGPT:在這個句子中,“它”指的是白色的卡車。所以這個句子的意思是白色的卡車追不上黑色的轎車,因為白色的卡車太慢了。
顯然,“白色的卡車”與“黑色的轎車”,跟形容詞“快”與“慢”應該沒有什么統計上的慣常聯系;何況我們用動詞短語“追不上”來顛倒“從……旁邊飛馳過去”的語義,使得它們的兩個論元(即“白色的卡車”與“黑色的轎車”)跟形容詞“快”與“慢”的語義關聯逆轉。經過如此幾近偷梁換柱、瞞天過海式的折騰,ChatGPT還是做出了正確的判斷。在這種情形之下,如果你還要否認它的語義理解能力,恐怕不太容易,也不夠公平;除非你能夠另外找到強有力的證據,說明它完全是在憑統計或者碰運氣。
六、結語:機器到底能不能理解自然語言?
(一)機器不可能像人一樣具身地理解自然語言
上面展示了ChatGPT在語義理解和常識推理方面的不俗表現,接下來的問題自然是:人工智能系統真的能夠理解自然語言嗎?其實,不出所料,答案可以是“能夠”,也可以是“不能”。這完全取決于我們怎么來界定怎樣才算“理解自然語言”。如果說在回應威諾格拉德模式挑戰之類任務上,其表現達到人類級別的水平就算“理解了自然語言”,那么ChatGPT等大語言模型基本上是夠格的。如果說必須跟人類一樣,富有體驗性地把握語言的意義和韻味,才算是理解了自然語言,那么,ChatGPT等大語言模型恐怕是不合格的。因為,根據現代認知科學的研究,“意義不是從我們的親身經歷中提煉出來的,而是始終與我們的親身經歷密切相關(的)”“我們對語言的理解,就是通過我們的腦海中進行模擬,感受這些語言描述的事物若換成我們自己親身去體驗會是怎樣的”。這就是所謂的“具身模擬假說”(embodiedsimulationhypothesis)。至于“具身模擬”的意思是:
具身模擬動用的大腦部位,就是我們大腦專門用于跟世界直接打交道的相同部位。當我們模擬觀察,我們用的就是大腦中用來觀察事物的部位;當我們模擬做動作,大腦中用來指揮肌肉運動的部位也跟著活躍起來。這就是說,模擬的意思就是在我們的腦海中創造出先前經歷的回響,將大腦在先前感知和運動經歷的活躍模式,以強度有所減弱的共鳴形式再現出來。我們用自己的大腦模擬感知與動作,但真正的感知與動作并沒有發生。(Bergen2012:17)
顯然,機器沒有具身模擬這種認知能力,所以不可能像人一樣真切地創造和理解意義,不能感受到語言所表達或激活的有關事物的顏色、形狀、氣味、滋味、聲音等感覺特征。正如米切爾(Mitchell2021)所指出的,要想理解人類的語言,就需要理解這個世界,而只能接觸到語言的機器無法獲得這樣的理解能力。我們來思考一下“跑車超過了卡車,是因為它的速度更慢”這句話是什么意思。首先你需要知道“跑車”和“卡車”是什么,而且需要知道車輛可以互相“超車”;從更基本的層面來看,車輛是存在于世界上、能夠與之互動的物體,且由人類駕駛。據此,我們認為,要求機器跟人一樣具身地理解自然語言,其實本身就是不合理和不公平的;這就像要求飛機必須像鳥兒那樣扇動翅膀來飛行一樣,是不近情理的。
(二)語言學家應積極參與人工智能研究
接下來另一個不便開口的問題可能是:在大語言模型時代,語言學會不會像釘碗、補鍋、修傘之類的手工老行當一樣,在新技術和新產品面前自行消失呢?我們認為,消失應該是不會的!但是,變化和革新是必須的!那么,語言學家到底可以做些什么呢?答案也許是:擁抱并適應新技術帶來的變化,主動地了解新技術的成效、不足及其背后的原理,更加精細地研究語言的結構形式和語義解釋規律,至少可以為人工智能的語言理解測試集的設計提供基本原則、語法規律和實例分析數據;比如,威諾格拉德模式挑戰之類的測試集,語言學家完全是有能力構建的。這比空談人工智能系統能不能理解人類自然語言要有意義得多。
記得美國第35任總統約翰·肯尼迪說過:“不要問國家能為你做什么,而要問自己能為國家做些什么?!痹诋斚抡Z境中,我們則要說:“不要問時代和社會真的會不會拋棄語言學,而要問語言學真的能為時代和社會做些什么!”