Quantcast
Channel: 電腦王
Viewing all articles
Browse latest Browse all 5910

聊天機器人在理解「否定」的概念上,還有很大的障礙

$
0
0
模型在理解「否定」的概念上存在很大的障礙。如今的語言模型比以往任何時候都更加複雜,但它們仍然在與「否定」的概念奮戰。445cbe0d73bc2dcc74362ebea0104ca3

諾拉·卡斯納(Nora Kassner)覺得她的電腦並不像人們想像的那麼聰明。2018 年 10 月,Google發表了一種名為 BERT 的語言模型演算法,同一領域的研究人員卡斯納迅速將其載入到了自己的筆記型電腦上。這是Google的第一個基於大量線上資料的語言模型。像大多數同行一樣,卡斯納對 BERT 補全句子和回答簡單問題的能力印象深刻。大型語言模型(LLM)似乎可以像人類一樣閱讀文本(甚至做得更好)。 

但當時在慕尼黑大學(Ludwig Maximilian University of Munich)讀研究所的卡斯納還是對此持懷疑態度。她認為,大型語言模型應該明白它們的答案意味著什麼,以及不意味著什麼。「知道鳥會飛是一回事」,她說,「一個模型還應該自動知道『鳥不會飛』這種否定的說法是錯誤的。」但當她和顧問辛里希·施茲(Hinrich Schütze)在 2019 年對 BERT 和其他兩個大型語言模型進行測試時,發現這些模型的表現就好像「不」這樣的否定詞彙是不存在的一樣。 

自那以後,大型語言模型的規模和能力都在飆升。「演算法本身仍然與我們以前的演算法相似,但其規模和性能確實是令人驚訝的,」卡內基美隆大學(Carnegie Mellon University)安全人工智慧實驗室負責人趙鼎(音譯,Ding Zhao)說。 

但是,雖然聊天機器人的表現有所提高,但它們在理解「否定」方面仍然存在問題。他們知道說一隻鳥不能飛意味著什麼,但當面對更複雜的、人類可以輕鬆理解的邏輯時,他們則會崩潰。 

香港科技大學(Hong Kong University of Science and Technology)的人工智慧研究員帕絲卡·馮(Pascale Fung)表示:「大型語言模型比我們以前擁有的任何系統都運行得更好。那麼,為什麼它們在看似簡單的事情上做不好,卻在其他我們意想不到的事情上能表現出驚人的力量呢?」最近的研究終於開始解釋這些問題了。但研究人員仍然不明白機器是否會真正理解「不」這個詞。

諾拉·卡斯納(Nora Kassner)對主流的聊天機器人進行了測試,發現它們通常無法理解否定的概念。Courtesy of Nora Kassner

 

1. 創造連接

要讓電腦像人一樣閱讀和寫作是很難的。機器擅長儲存大量資料和進行複雜的運算,因此開發人員將大型語言模型構建為神經網路:一種評估物件(在語言模型中指的是單詞)如何相互關聯的統計模型。每一種語言關係都有一定的權重,而這種權重在訓練過程中會經過微調。例如,「老鼠」與「齧齒動物」的關係比與「披薩」的關係更大,即使我們知道有些老鼠也喜歡吃披薩。 

就像智慧型手機鍵盤知道你在「good」後面喜歡跟著「morning」一樣,大型語言模型也會按順序預測文本段中的下一個單詞。用於訓練語言模型的資料集越大,模型的預測能力就越好,而且隨著用於訓練模型的資料量大大增加,數十種不同的大型語言模型如雨後春筍般湧出。例如,聊天機器人已經學會了使用自己的風格、語法和語氣來「說話」。「早期的一個問題是,語言模型完全無法察覺語言中的情緒,」卡內基美隆大學(Carnegie Mellon)的電腦科學家凱薩琳·卡利(Kathleen Carley)說。卡利研究的是使用大型語言模型進行「情緒分析」,從大型資料集中提取情緒語言,用於挖掘社群媒體意見等。 

因此,新模型應該能更可靠地得到正確的答案。「但我們並沒有應用推理,」卡利說,「我們只是應用了一種數學上的變化。」而且,不出所料,專家們正在尋找這些模型與人類閱讀方式之間存在差異的地方。 

2. 沒有「否定」

與人類不同,大型語言模型是透過將語言轉化為數學來處理語言的。這些模型透過預測可能的文本組合,來改進其在生成文本方面的能力。但是,這是有代價的。 

「問題在於,預測的任務並不等同於理解的任務,」芝加哥大學(University of Chicago)的運算語言學家愛麗森·艾丁格(allison Ettinger)說。和卡斯納一樣,艾丁格也在測試語言模型如何處理那些對人類來說似乎很容易的任務。例如,在 2019 年,艾丁格用測試人類語言能力的方法測試了 BERT: 

  • 他接住了傳球,又一次得分。沒有什麼比踢____更讓他開心的了。(BERT 正確地預測了「足球」。) 
  • 車道上的雪積得很高,他們無法把車開出來。當亞伯特醒來時,父親遞給了他一個____。(BERT 錯誤地預測了「紙條」、「信」、「槍」。)
  • 當涉及到否定的時候,BERT 做得始終不太好。
  • 一隻知更鳥不是____。(BERT 預測的是「知更鳥」和「鳥」。)

一方面,對於模型來說,這是一個合理的錯誤。艾丁格說:「在很多情況下,『知更鳥』和『鳥』會相互預測,因為它們可能會非常頻繁地同時出現。」而另一方面,任何人都能看出這是錯的。

「預測的任務並不等同於理解的任務,」芝加哥大學(University of Chicago)的運算語言學家愛麗森·艾丁格說。

 

到 2023 年,OpenAI 的 ChatGPT 和Google的機器人 Bard 已經有了長足進步,可以預測亞伯特的父親遞給他的是一把鏟子,而不是一把槍了。同樣,這可能是資料量增加和改進的結果,使得更好的數學預測成為了可能。 

但「否定」的概念仍然會讓聊天機器人犯錯誤。當輸入提示「什麼動物沒有爪子也不下蛋,但有翅膀?」時,Bard 回答說:「沒有這樣的動物。」而 ChatGPT 正確地回答了蝙蝠,但也回答了飛鼠和飛狐猴,而這兩種動物是沒有翅膀的。整體來說,「隨著模型變大,難以理解否定概念這一點並沒有發生改變,」艾丁格說,「一般的世界知識並沒有什麼幫助。」 

3. 「看不見」的詞彙

一個顯而易見的問題是,在英文中,為什麼像「do not」和「is not」這樣的詞彙不直接提示機器忽略「do」和「is」呢? 

這種情況並非偶然。像「not」(不)、「never」(從不)、和「none」這樣的否定詞被稱為停止詞,它們是功能性的詞彙,而不是描述性的詞彙。像「bird」(鳥)和「rat」(老鼠)等詞彙是具有明確含義的,相比之下,停止詞本身不會自己增加含義和內容。其他例子還包括「a」、「the」和「with」。譯者注:Stop Words(停止詞)是指在自然語言中出現頻率非常高,但是對文章的意義沒有實質影響的那類詞。 

辛辛那提大學(University of Cincinnati)研究感知分析的博士生伊祖那·奧克帕拉(Izunna Okpala)說:「有些模型會過濾掉停止詞,以提高效率。」比如,省略每個「a」,可以讓模型更容易地分析文本的描述性內容。省略每個「the」,並不會讓句子失去原本的意思。但這個過程也排除了否定詞,這意味著大多數大型語言模型都會忽略否定詞。 

那麼,大型語言模型為什麼不能學習一下停止詞的意思呢?歸根結底,是人類與模型理解「意思」的方式不同。是這樣的,否定詞對我們很重要,因為人類有能力理解這些詞的含義。但模型是從數學權重中學習「意義」的:「玫瑰」經常與「花」/「紅色」/「香味「一起出現,而用這種方法是不可能知道什麼是「不」的。 

卡斯納說,訓練資料也有一定的漏洞,更多的訓練資料不一定能解決問題。模型主要被訓練的是肯定句,因為這是人們最有效溝通的方式。卡斯納說:「如果我說自己出生在某一天,那就自動排除了其他所有日期。我不會說『我不是在 XX 天出生的』。」 

這種否定陳述的缺乏破壞了模型的訓練。「模型很難生成事實正確的否定句,因為它就沒有見過那麼多的否定句,」卡斯納說。 

4. 解開「否定」的謎團

如果更多的訓練資料不能解決問題,那還有什麼解決方案嗎?今年 3 月發表在 arxiv.org 網站上的一篇分析文章提供了線索。牛津大學的電腦科學家張明俊(音譯,Myeongjun Jang)和湯瑪士·盧卡謝維奇(Thomas Lukasiewicz)對 ChatGPT 的否定技能進行了測試。他們發現,儘管大型語言模型的學習方式沒有改變,但 ChatGPT 在否定技能方面比早期的大型語言模型略勝一籌。「這是一個相當令人驚訝的結果,」張說。他認為 ChatGPT 的「秘密武器」是人類提供的回饋。 

ChatGPT 演算法已經透過人類的回饋而進行了微調,在這個過程中,人們會驗證 ChatGPT 的回答並提出改進建議。因此,當使用者注意到 ChatGPT 在簡單的否定句中表現不佳時,就會報告錯誤,進而使演算法最終得到正確的結果。 

ChatGPT 的開發人員約翰·舒爾曼(John Schulman)在最近的一次演講中提到,人類回饋是另一項改進的關鍵:讓 ChatGPT 在得到否定提示而對答案模棱兩可時,給出「我不知道」的回答。卡斯納說:「能夠避免回答問題非常重要。」有時候「我不知道」就是答案。 

帕絲卡·馮(Pascale Fung)說,很難直接對許多大型語言模型進行分析,因此儘管它們顯示出了有關否定的一些小跡象,但研究人員尚不能完全理解這些改進。

 

然而,即使這種方法也存在漏洞。當卡斯納在 ChatGPT 上輸入提示「愛麗絲並非出生在德國,那麼愛麗絲出生在漢堡(德國城市)嗎?」時,機器人仍然回答說它不知道。 

盧卡謝維奇說:「這不是一個能透過語言模型的學習方式自然解決的問題。所以重要的是找到真正解決這個問題的方法。」 

一種選擇是在否定句中添加額外的語言處理層。奧克帕拉開發了一種用於情感分析的此類演算法,其團隊 2 月份在 arxiv.org 上發表了一篇論文,提到可以使用一個名為 WordHoard 的庫來捕捉像「not」這樣的否定詞。這是一個簡單的演算法,研究人員可以將其插入自己的工具和語言模型中。「事實證明,與單獨的情感分析相比,使用 WordHoard 時具有更高的準確性,」奧克帕拉說。當他將自己的代碼和 WordHoard 與三種常見的情感分析工具結合在一起時,都提高了提取觀點的準確性,最好的一種情況提高了35%。 

另一種選擇是修改訓練資料。在測試 BERT 時,卡斯納使用了具有相同數量肯定和否定語句的文本。在反義詞(「bad」,「壞」)可以代替否定詞(「not good」,「不好」)的簡單情況下,這種方法有助於提高性能。但這並不是一個完美的解決方案,因為「不好」並不總是意味著「壞」。對機器來說,「不」的含義範圍太大了。「這是無法解釋的,」馮說,「你不是我,你不是鞋子,你不是很多東西。」 

最後,由於大型語言模型之前的能力進化就曾讓我們頗感意外,所以經過更多訓練的更大模型最終可能會自己學會處理否定。張和盧卡謝維奇表示希望在文本詞彙之外的多樣化訓練資料能有所説明。盧卡謝維奇說:「語言不僅僅是透過文本來描述的,影片和音訊也都可以充當語言」。OpenAI 的新 GPT-4 整合了文本、音訊和視覺,據報導,它是迄今為止最大的「多模態」大型語言模型。 

5. 未來仍不明朗

但是,雖然以上這些技術加上更強大的處理能力和資料量,可能會讓聊天機器人掌握「否定」的含義,但大多數研究人員仍對此持懷疑態度。艾丁格說:「我們實際上不能保證這種情況會發生。」她認為這需要一個根本性的轉變,讓語言模型從目前預測單詞的目標上轉移開來。 

畢竟,當孩子們學習語言時,他們並不是在試圖預測下一個單詞,而只是在把單詞映射到概念上。艾丁格說,他們在「對世界做出『這是真的』或『這不是真的』這樣的判斷」。 

如果大型語言模型能夠以這種方式區分真假,那麼將極大地打開「可能性」的大門。「當大型語言模型更接近人類時,有關否定的問題就可能會消失了。」奧克帕拉說。 

當然,這可能只是將一個問題轉換為了另一個問題。「我們需要更好的理論來研究『人類如何辨識意義』以及『人們如何解讀文本』,」卡利說,「花在理解人類思維方式上的資金,比花在開發更好演算法上的資金要少得多。」 

而且,剖析大型語言模型的錯誤也越來越困難。與最先進的模型相關的資訊不像以前那樣透明了,因此研究人員只能根據輸入和輸出來評估它們,而不知道中間發生的事情。 

卡斯納認為,未來的改進速度將會放緩。她說:「我從來沒有想像過,在這麼短的時間內能看到語言模型領域取得如今這麼大的進展。我一直很懷疑,僅僅擴大模型並輸入越來越多的資料,是否足夠讓模型產生突破。並且我至今仍然認為,這是不夠的。」

加入電腦王Facebook粉絲團

Viewing all articles
Browse latest Browse all 5910

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>