了解聊天機械人的運作原理,才能更好利用它們

A+A-
圖片來源:Domenico Fornas/Shutterstock

人工智能(AI)聊天機械人似乎已無處不在,像 ChatGPT 和 Google Bard 等大型語言模型(LLM),由網絡搜索、寫作論文到整合世間所有知識,都可為人類代勞,但你知道它們其實如何運作嗎?

如同許多 AI 系統一樣,LLM 以大量數據進行訓練。開發公司很多時未必會公開數據來源,但最近就有研究針對 Bard 所建基於的 LaMDA(對話應用程式語言模型),揭示其訓練數據來自維基百科、網上論壇,以及一些問答平台等編程相關網站的代碼文檔。外國熱門論壇 Reddit 曾表示,要對取用其建站至今 18 年來的文本對話徵收費用,而問答網站 StackOverflow 也公佈相關收費計劃,可見各 LLM 一直在沒付款的情況下從它們 —— 甚至是網上更多公開內容 —— 取用訓練數據。

這些文本數據,不論來自何處,都會經由被稱為「神經網絡」的 AI 引擎來處理,根據眾多因素不斷調整解釋數據的方式,而大多數 LLM 會使用一種特別適用於語言處理的神經網絡架構「轉換器」(transformer)。

轉換器會讀取大量文本,找出單詞和短語之間的關聯模式,繼而預測接下來應出現甚麼單詞。換言之,ChatGPT 和 Bard 並非真正「明白」內容,而是摸清了字詞之間的關聯,使其讀起來彷彿真正經過思考甚至具創造力。其中一種關鍵的創新技術,就是自注意力機制(self-attention mechanism),簡單來說就是它們並非單獨分析句子中的單詞,而是單詞之間各種複雜的關聯方式。

這種自我更正的機制帶有一些隨機性質和變化,使得聊天機械人不會每次都作出相同回應,甚至會「出錯」。因為 ChatGPT 和 Google Bard 本身並不知道何謂對或錯、答覆準不準確,而是根據以往的訓練數據,找出看來「合理」和「自然」的回覆。因此它們未必每次都能選出最有可能出現的字詞,而當偏離太遠時,回覆的句子就會顯得不合理。這正是為何 LLM 需要不斷自我分析和糾正;部分回覆當然得視乎用家輸入的指令,例如它們可因應用家的要求精簡或闡述其答覆。

生成文本的另一特徵,就是太概括或陳腔濫調 —— 這可能是因為聊天機械人試圖從龐大的現有文本庫中生成回應。其生成句子的方式,某程度上就像用電子表格尋找一組數字的平均值,以致其回覆顯得普通、毫無個性或模稜兩可。

善用 LLM 的用戶會懂得指正錯誤、根據答覆的好壞進行評分;這稱之為「人類反饋強化學習」(RLHF),讓 LLM 從中學習並改進神經網絡,以便下次作出更好的答覆。此外,隨著這些 LLM 變得更複雜,其能力將提高。例如 ChatGPT 3.5 有 1,750 億個參數 —— 透過數字和算法連接單詞的數學關係 —— 而 ChatGPT-4 估計增加至 1 萬億個以上(OpenAI 並未公佈確實數字),這表示分析單詞之間的關聯,以及如何連接單詞生成回應的能力有了大躍進。

從 LLM 的運作方式看來,它們善於模仿曾接受過的訓練數據,並生成讀起來自然且信息豐富的文本,儘管有點乏味。而自我更正的機制,使得它們很多時也能找出正確的事實,但需留意的是:「最有可能」出現的下一個詞,並不總是「正確」。