科學現場
人工智能:讀書“破萬卷”,難答“小兒科”
閱讀來自維基百科的536篇文章,回答10萬個基于文章內容的問題,除了題量大一點,這場比賽挺像大學英語六級考試的閱讀理解測試。
但你不可能聽到考場里奮筆疾書的“唰唰”聲,因為“參賽者”只是一段代碼。輸入文章和問題后,計算機的中央處理器(CPU)和圖形處理器(GPU)開始高速計算,最后交出答卷,由出題者批閱。
對來自世界各國的研究者來說,這是一場沒有盡頭的競賽——任何人可以在任意時間加入,排行榜實時更新;即使是第一名,不保持“學習”和“更新”,隨時有可能被新加入者超越。它可能發生在你吃飯和睡覺的時候,而“對手”不過是“啪啪啪”地敲擊了一串代碼。
這場競賽全稱SQuAD(Stanford Question Answering Dataset)文本理解挑戰賽,由斯坦福大學在2016年9月發起,是業內公認的機器閱讀理解標準水平測試,也是這個領域的頂級賽事。
在2018年1月3日以前,人類始終保持著領先的優勢——從來沒有任何一個團隊能夠設計出一種答題正確率超過人類的算法。這一天,微軟亞洲研究院自然語言計算組提交的新模型獲得了82.650的精確匹配分數,超過了人類得分82.304。僅過了兩天,阿里巴巴iDST-NLP團隊也拿到了82.440的精確匹配分數。
微軟亞洲研究院院長洪小文告訴中國青年報·中青在線記者:“這對微軟和自然語言處理(NLP)研究領域來說,都是一個重要的里程碑。計算機文本理解能力首次超越人類,預示著該領域的研究將會有更大突破。”
在計算機看來,世間萬物都是一串數字
微軟亞洲研究院副院長、自然語言計算組負責人周明博士坐在計算機前,緊張地等待測試結果。經過1個多月對模型和算法的更新,他們提交了最新代碼。
這支團隊在SQuAD挑戰賽初期,一度以穩定的成績長期位居排行榜榜首,但周明知道,這場競賽的排名瞬息萬變。2017年最后兩個月里,科大訊飛與哈工大聯合實驗室、騰訊DPDAC NLP團隊先后超過了他們。
新選手參賽大約兩三分鐘后,系統就完成了約50篇數百詞的文章閱讀和約1萬個問題的回答。即使母語是英語的成年人,這個時間也才勉強讀完5篇文章。
“對人類來說,讀完一篇文章就會在腦海中形成一定的印象,比如這篇文章講的什么人,發生了什么故事。人們能夠輕而易舉地歸納出文章里的重點內容,但對計算機來說不是這樣。”周明告訴中國青年報·中青在線記者。
在SQuAD測試中,計算機需要閱讀一段材料,然后回答諸如人名、地理位置等問題。不同于類似測試,SQuAD測試的回答可能是一段短語,而非某個單詞或單個內容。它可能遭遇同義詞替換、句子結構變換等情況,甚至需要綜合多個句子進行邏輯推理。
為了解決這個問題,研究組模擬人類做閱讀理解過程的方式,他們將整個過程分成了四步。拿到測試題后,計算機首先會學習文本和問題,就像我們做閱讀題時,首先會通讀文章,然后審題,獲得一個整體印象。
下一步,計算機會將問題和文章進行比對,找出相關段落,就像人類定位關鍵信息的環節。接下來,計算機會把初步結果放到上下文里比對,類似人會綜合全文看待問題。最后,它會斟酌并選出最像答案的內容。
在這場競賽中,不同團隊設計的答題模式可能完全不同。周明介紹說,他們的設計中,最獨特的就是第3步,是通過“注意力機制”達到的。這讓關鍵信息像被畫上了重點一樣,成為計算機眼中高亮的部分。
“除了自然語言處理,注意力機制在圖像識別領域也是關鍵的概念。”美國哥倫比亞大學計算機系碩士生何欽堯告訴中國青年報·中青在線記者。
人類視覺能夠通過快速掃描整體圖像后,找到需要重點關注的區域,并投入更多注意力,以獲得更多細節,抑制其他無用信息。研究者也嘗試讓計算機學習并利用這種機制。不同于人類擁有動植物、山川河流的概念,所有單詞和圖像在計算機看來都是一串數字。它必須從數字背后微妙的聯系中,洞悉它們的意義。
真理隱藏在數據和概率里
周明所在團隊使用的計算機并不是憑空學會做題。參加SQuAD競賽前,它就像“學霸”考前刷題一樣,先看過了約500篇文章和與之對應的10萬道題目、答案。
但周明表示,“目前基于深度學習的機器閱讀理解模型都是黑盒的狀態,很難直觀地表示機器進行閱讀理解的過程和結果。未來,可解釋性的深度學習模型值得進一步探究。”
通過大量學習,計算機明白了什么數字意味著與文章內容相關,怎樣的聯系意味著這就是問題的答案。
“真理就隱藏在數據和概率里,我們這個領域的研究者大多都這么看。”何欽堯說。一個1歲人類孩童看過狗以后,就能識別各種體型、品種和不同拍攝角度的狗,形成概念,但計算機需要看過很多照片后,才能判斷某個物體是不是狗。“我們不知道人類是怎么形成這個概念的,但對計算機來說,概念是靠積累數據、靠計算概率得來的。”
直到20世紀90年代之前,人們還在試圖讓計算機學會人類語言的規則,從而理解背后的含義。但語言在使用時往往不規范,機器無法處理偏離規則的內容。后來,人們開始讓機器自己進行學習,獲取語言知識。
發展到今天,自然語言處理領域的研究已經基本可以應付單個句子,理解句子成分。各大手機廠商也推出了自己的人工智能語音系統,可以識別并完成用戶的指令,還能進行簡單的交流和對話。
“長文本的理解一直是難點,這涉及句子之間的連貫性、上下文銜接和邏輯推理等更高難度的內容。”周明說。
當我們告訴計算機,“萊茵河上最大的城市是德國科隆,它是中歐和西歐區域的第二長河流,位于多瑙河之后”,并問它“什么河比萊茵河長”時,很多計算機會回答“科隆”。
如何理解代詞“它”、理解“位于……之后”表示比較而非物理上的前后,成為這些“選手”很大的障礙。人類擁有“科隆是城市而非河流”這種常識,幾乎不會在這個問題上犯錯,但計算機無法理解這個概念。
SQuAD競賽不是第一個計算機“超越”人類的領域
計算機很早就在計算、記憶的領域碾軋人類,后來又擊敗了人類最優秀的國際象棋、圍棋棋手。
“其實,計算、下棋、機器翻譯等只聚焦單一任務本身的人工智能都屬于弱人工智能,”周明說,“不過弱人工智能并不弱,它可以具備超越人類的某些能力,有很大的價值,但是弱人工智能還無法真正理解它接收到的信息,而這就使得通往強人工智能的道路十分艱難。”
60多年前,曾有人嘗試讓計算機用6條規則和200個詞匯做俄英翻譯,這被認為是最早的人工智能嘗試。那時的研究人員信心滿滿,宣稱能在5年內完全解決一種語言到另一種語言的自動翻譯問題。
這個目標至今沒有完成,人工智能也因為研究進展緩慢經歷過兩次低潮。一直到近10年,計算機性能的大幅度提升和機器學習理論的興起讓人工智能再次熱了起來。人們發現,計算機能夠寫詩詞、與人對話,它變得越來越像人。
據統計,21世紀以來新創辦的人工智能企業中,有近三分之二是在5年內創辦的。最近3年,人工智能領域的就業崗位數量飆升近8倍。在亞洲,過去17年內投向人工智能領域的51億美元中,有95%是在過去5年內投入的。
翻看SQuAD競賽排行榜,前3名都是來自中國的團隊。“這在過去是不敢想象的。”周明說。放在20年前,中國甚至還沒有在這個領域的頂級會議上發表過文章。而現在,中國發表的文章數已經穩居世界第二,2017年還有5篇文章入選該會議的22篇杰出論文。
在SQuAD競賽中,計算機得分比人類高0.346分,可以理解為同樣做1萬道題時,計算機多做對35道。“這遠不代表計算機超越了人類的閱讀理解水平。”周明告訴中國青年報·中青在線記者。也有人質疑,這里代表“人類”的,不過是眾包平臺上一小時掙9美元、受教育水平參差不齊的人。
一個公認的人工智能的標準是能夠通過“圖靈測試”——如果一臺機器能夠與人進行交流,并且被人誤以為是人,那它就具有智能。
“ ‘能理解、會思考’,這其中,理解自然語言是最核心的問題。”周明說。目前,計算機還是很難在日常交流中理解雙關和諷刺。在中文語境下,計算機還需要面對如何將一個句子拆分為數個詞匯的問題。很多對人類而言無需學習的事情,例如保持平衡、用手拿起一個杯子,對機器而言也是無比困難的事情。
機器沒有經過幾億年的演化,也沒有人類大腦里由神經元數百萬次電脈沖轉化成的觸覺、聽覺或是視覺。在人類程序員的馴導下,它把一切轉化為數字。
時至今日,谷歌仍然在特意審查“大猩猩”詞條的搜索結果,避免圖像搜索引擎把它和黑種人的圖像混淆。了解識別特性的工程師可以通過肉眼無法識別的微調,讓計算機把小狗圖片當成鴕鳥,或是將一片馬賽克認成獵豹。有時,把中文翻譯成英文再翻譯回來,整句話都變得面目全非。
在人工智能威脅論不絕于耳的今天,周明幾乎沒有擔心,他向中國青年報·中青在線記者舉了SQuAD競賽中的一個例子。
機器閱讀了“按質量算,氧氣是宇宙中第三多的元素,排在氫和氦之后”,面對“什么是第二多的元素”的問題,它的回答卻是“氧”。不管是微軟還是阿里巴巴團隊設計的算法,都不能解決這個再簡單不過的問題。
這不只是人工智能之間的競賽,也是人類和自己的競賽。
中國青年報·中青在線見習記者 王嘉興 來源:中國青年報 ( 2018年01月24日 11 版)