機器之心報導
機器之心編輯部
來自多倫多大學、滑鐵盧大學等機構的研究者受 prompt engineering 的啟發,提出一種使用大型語言模型自動生成和選擇指令的新演算法,在 24 項任務中有 19 項達到了人類水平的表現。
現階段,得益於模型規模的擴大和基於注意力架構的出現,語言模型表現出了前所未有的通用性。這些大型語言模型(LLM,large language models)在各種不同任務中表現出非凡的能力,其中包括零樣本和小樣本設定。
然而,在模型通用性的基礎上,繼而引出一個控制問題:我們如何才能讓 LLM 按照我們的要求去做?
為了回答這個問題並引導 LLM 朝著我們期望的行為方向發展,研究者們採取了一系列措施來達到這個目的,例如對模型進行微調、透過上下文進行學習、不同形式的 prompt 生成等。而基於 prompt 的方法又包括可微調的 soft prompt 以及自然語言 prompt engineering(提示工程)。眾多研究者對後者表現出了極大的興趣,因為它為人類與機器互動提供了一個自然互動的介面。
然而簡單的 prompt 並不總能產生所需的結果,例如,在生成熊貓影像時,新增諸如「cute」之類的形容詞或諸如「eat bamboo」之類的短語對輸出有何影響,我們不瞭解。
因此,人類使用者必須嘗試各種 prompt 來引導模型完成我們期望的行為。LLM 這一執行過程可視為黑盒過程:雖然它們可以執行大範圍的自然語言程式,但這些程式的處理方式對人類來說可能並不直觀,非常難以理解,而且只有在執行下游任務時才能衡量指令的質量。
我們不禁會問:大型語言模型可以為自己編寫 prompt 嗎?答案是,不但可以,還能達到人類水平。
為了減少建立和驗證有效指令的人工工作量,來自多倫多大學、滑鐵盧大學等機構的研究者提出了一種使用 LLM 自動生成和選擇指令的新演算法:APE(Automatic Prompt Engineer)。他們將此問題描述為自然語言程式合成,並建議將其作為黑盒最佳化問題來處理,LLM 可以用來生成以及搜尋可行的候選解決方案。
論文地址:https://arxiv.org/pdf/2211.01910.pdf
論文主頁:https://sites.google.com/view/automatic-prompt-engineer
研究者從 LLM 的三個特性入手。首先,使用 LLM 作為推理模型,根據輸入 - 輸出對形式的一小組演示生成指令候選。接下來,透過 LLM 下的每條指令計算一個分數來指導搜尋過程。最後,他們提出一種迭代蒙特卡洛搜尋方法,LLM 透過提出語義相似指令變體來改進最佳候選指令。
直觀地說,本文提出的演算法要求 LLM 根據演示生成一組指令候選,然後要求演算法評估哪些指令更有希望,並將該演算法命名為 APE。
本文貢獻如下:
研究者將指令生成作為自然語言程式合成,將其表述為一個由 LLM 引導的黑盒最佳化問題,並提出迭代蒙特卡羅搜尋方法來近似求解;
APE 方法在 19/24 任務中實現了比人工註釋器生成的指令更好或相當的效能。
看到這項研究,網友不禁感嘆:那些剛被聘用的 prompt 工程師,幾個月後可能要被 AI 淘汰。言外之意就是,這項研究要搶了人類 prompt 工程師的活。
「該研究盡最大的努力使 prompt engineering 自動化,這樣從事 ML 的研究人員就可以回到真正的演算法問題上了(附加兩個大哭的表情)。」
還有人感嘆:LLM 不愧是原始 AGI 的中流砥柱。
使用 LLM 進行自然語言程式合成
APE 在建議(proposal)和評分這兩個關鍵元件中都使用 LLM。
如下圖 2 和演算法 1 所示,APE 首先提出幾個候選 prompt,然後根據選定的評分函式對候選集合進行篩選 / 精煉,最終選擇得分最高的指令。
下圖為 APE 的執行過程。它可以透過直接推理或基於語義相似度的遞迴過程生成幾個候選 prompt,評估其效能,並迭代地提出新的 prompt。
初始提議分佈
由於搜尋空間無限大,找到正確指令是極其困難的,這使得自然語言程式合成歷來難以處理。基於此,研究者考慮利用一個預先訓練過的 LLM 來提出一個候選解決方案,以指導搜尋過程。
他們考慮兩種方法生成高質量候選。首先採用一種基於前向模式生成的方法。此外,他們還考慮了反向模式生成,使用具有填充功能的 LLM(如 T5、GLM、InsertGPT)來推斷缺失的指令。
得分函式
為了將問題轉換為黑盒最佳化問題,研究者選擇了一個得分函式來準確測量資料集和模型生成的資料之間的對齊情況。
在歸納實驗中,研究者考慮了兩個潛在的得分函式。在 TruthfulQA 實驗中,研究者主要關注 Lin 等人提出的自動化指標,類似於執行精度。
在每一種情況下,研究者使用如下公式 (1) 來評估生成指令的質量,並對持有測試資料集 Dtest 進行期望。
實驗
研究者對 APE 如何引導 LLM 實現預期的行為進行了研究。他們從三個角度進行:零樣本效能、少樣本上下文學習效能和真實性(truthfulness)。
研究者評估了 Honovich 等人提出的 24 個指令歸納任務的零樣本和少樣本上下文學習。這些任務涵蓋語言理解的許多方面,從簡單的短語結構到相似性和因果關係識別。為了瞭解 APE 生成的指令如何引導 LLM 生成不同風格的答案,本文將 APE 應用於 TruthfulQA(一個資料集)。
對於零樣本測試準確率,APE 在 24 項任務中有 19 項達到了人類水平的表現。
對於少樣本上下文測試準確率,在 24 個任務中,APE 提高了 21 個任務的少樣本上下文學習效能。
研究者還將 APE prompt 與 Lin 等人提出的人工 prompt 進行了對比。圖 (a) 顯示 APE 指令在所有三個指標上的表現都優於人工 prompt。圖(b)顯示了 truthfulness 和 informativeness 之間的權衡。