【NLP】再見了,提示~ 谷歌發(fā)布自適應(yīng)提示方法,從此告別提示工程!
作者 | 謝年年、ZenMoore
大模型雖好,但卻存在著一個惱人的問題:大模型回答得好不好,取決于我們問題問得怎么樣。一個好的、詳細(xì)的問題往往可以產(chǎn)生驚人的效果...
所以... ChatGPT 問世之后,最火的書可能不是《ChatGPT 技術(shù)原理》,而是《提示工程(Prompt Engineering)指南》(如何讓 ChatGPT 更能聽懂你的問題)。
一時間,全球人民都捧起了這本“咒語”教程,開始背誦各種各樣的“施咒”技巧,比如“Let's take a breath...”,比如“You are my grandma...”,比如...
但是夠了!真正的人工智能是不需要解釋的,你解釋得越多,智能就越智障。理想的情況是,大模型可以幫你對問題進(jìn)行合理的解釋,幫你把一個簡陋的問題變成一個好問題,就像 DALL·E 3 的原理那樣(p.s., DALL·E 3 使用 GPT-4 來優(yōu)化用戶提示,從而提升圖像和用戶需求的一致性)。
幸運(yùn)的是,最近谷歌發(fā)布了一篇博客,一口氣介紹了兩篇相關(guān)論文,可能有望幫助我們擺脫繁瑣的提示工程...
文章概覽
LLM在少樣本學(xué)習(xí)和零樣本學(xué)習(xí)中所展現(xiàn)的問題解決能力令人驚喜,這大大降低了對標(biāo)注數(shù)據(jù)的強(qiáng)依賴性。僅需一點點prompt魔法,就可以獲得不錯的效果。
比如零樣本方法可以直接提出需求而不需要提供樣例示范,其操作簡單且普適性強(qiáng),但對模型的指導(dǎo)完全依賴模型內(nèi)部知識,性能通常較弱。
少樣本學(xué)習(xí)相比零樣本來說,通過提供示范能更好地指導(dǎo)LLM輸出答案,但前提是給出的是一個高質(zhì)量的示范,否則可能比沒有示范還要糟糕。
來看一個數(shù)學(xué)推理問題的例子:給問題添加一個正確的示范可以引導(dǎo)出對測試問題的正確解答(Demo1與問題),而添加一個錯誤的示范(Demo2與問題,Demo3與問題)會導(dǎo)致錯誤的答案。其中Demo2是一個正確但推理過程重復(fù)的示范,這也導(dǎo)致了最終輸出重復(fù);Demo3提供的則是一個答案錯誤的示范。
由此可見,樣本示范的選擇對LLM生成質(zhì)量有很大的影響。
但對于復(fù)雜任務(wù)來說人工構(gòu)造高質(zhì)量示范樣本難度很大,特別是對于需要領(lǐng)域知識的任務(wù),如長文章摘要或醫(yī)療問題回答。因此自動生成可靠示范是非常有必要的。
為了解決這個困境,谷歌團(tuán)隊提出了一種名為 Consistency-Based Self-Adaptive Prompting(COSP)的方法,無需人工構(gòu)造樣本,僅使用無標(biāo)簽樣本(通常容易獲取)和模型自身的預(yù)測輸出,即可構(gòu)建LLM的偽示范,在推理任務(wù)中大大縮小了零樣本和少樣本之間的性能差距。同時本文還將這個思想擴(kuò)展到廣泛的通用自然語言理解(NLU)和自然語言生成(NLG)任務(wù),在多個任務(wù)上展示了其有效性。這兩篇工作分別被 ACL2023 和 EMNLP 2023 接收。
谷歌博客:
https://blog.research.google/2023/11/zero-shot-adaptive-prompting-of-large.html
論文一標(biāo)題:
Better Zero-shot Reasoning with Self-Adaptive Prompting
論文一鏈接:
https://aclanthology.org/2023.findings-acl.216/
論文二標(biāo)題:
Universal Self-Adaptive Prompting
論文二鏈接:
https://arxiv.org/pdf/2305.14926.pdf
論文一:COSP
如果LLM對自己的答案很“自信”,那么應(yīng)該在多次調(diào)用下輸出相同答案,如果是這樣,就說明該答案更可能是正確的,其置信度就比較高。因此可以考慮使用高置信度的輸出及其輸入作為偽示范。之所以叫做偽示范,是因為示范樣例的答案仍然是LLM生成的并且沒有經(jīng)過真實答案檢驗。
基于此設(shè)想,COSP 方法的步驟如下:
-
將每個無標(biāo)簽的問題輸入到LLM中,通過多次采樣,模型將獲得多個包含問題、生成的推理過程和答案的示范,并為其分配一個分?jǐn)?shù),以反映答案的一致性。輸出次數(shù)越多的答案分?jǐn)?shù)越高。 -
除了偏好更一致的答案外,COSP還懲罰回答中的重復(fù)問題(即重復(fù)的詞語或短語),并鼓勵選擇多樣性的示范。將一致的、非重復(fù)和多樣化輸出的偏好編碼為一個評分函數(shù),該函數(shù)由三個評分的加權(quán)和組成,用于選擇自動生成的偽示范。 -
將偽示范與測試問題一起輸入LLM中,并獲得該測試問題的最終預(yù)測答案。
論文二:USP
COSP專注于推理問答任務(wù),這些問題有唯一答案很容易測量置信度。但是對于其他任務(wù),比如開放式問答或生成任務(wù)(如文本摘要),則會變得困難。為了解決這個限制,作者引入了USP(Uncertainty-based Self-supervised Prompting),將該思想推廣到其他常見的NLP任務(wù)上。
選擇偽示范的方法因任務(wù)類型變化而有所不同:
-
分類(CLS):LLM生成預(yù)測,使用神經(jīng)網(wǎng)絡(luò)計算每個類別的 logits, 并基于此選擇置信度較高的預(yù)測作為偽示范。
-
短文本生成(SFG):這類問題類似于問答任務(wù),可以使用COSP中提到的相同步驟進(jìn)行處理,LLM生成多個答案,并對這些答案的一致性進(jìn)行評分。一致性較高的答案被選擇作為偽示范。
-
長文本生成(LFG):這類問題包括摘要和翻譯等任務(wù),通常是開放式的,即使LLM非常確定,輸出也不太可能完全相同。在這種情況下使用重疊度度量,計算不同輸出對于相同查詢的平均ROUGE分?jǐn)?shù),選擇具有較高重疊度的作為偽示范。

總的來說,在第一個階段,針對不同的任務(wù)類型,調(diào)用語言模型對無標(biāo)簽數(shù)據(jù)生成輸出,并基于 logit 熵值、一致性或者重疊度等指標(biāo)進(jìn)行置信度打分,最后選擇置信度高的樣本作為上下文示范。在第二階段,將這些偽的上下文示范作為語言模型輸入的一部分,對測試數(shù)據(jù)進(jìn)行預(yù)測。
實驗結(jié)果
如圖1所示,通過三個LLM在六個算術(shù)和常識推理問題上進(jìn)行比較,相同的計算資源條件下,COSP方法在零樣本設(shè)置下取得了更好的性能。通過自動生成的示范和策略性的選擇示范,COSP能夠提供更一致和相關(guān)的答案,從而提高了模型的推理能力。
如圖2所示,對于USP,作者將分析擴(kuò)展到更廣泛的任務(wù)范圍,包括超過25個分類任務(wù)、短文生成和長文生成任務(wù)。可以看到在不同的任務(wù)中,USP超越了zero-shot基準(zhǔn)。
本文還針對BIG-Bench Hard任務(wù)進(jìn)行了測試,如圖3所示,每一行代表一個任務(wù)。以前LLM在這些任務(wù)中表現(xiàn)不如人類,而現(xiàn)在大部分任務(wù)上LLM都超越了人類的平均表現(xiàn)。而USP同樣優(yōu)于基線,即使是與人工制造的提示樣本(圖中3-shot)相比也具備一定的競爭力。
結(jié)論
總的來說,本文提到的COSP和USP方法通過自動構(gòu)造偽樣本的方式彌合了零樣本與少樣本之間的差距,對自然語言理解與生成一系列廣泛的任務(wù)都適用。
加上前幾天,我們解讀的一個小妙招從Prompt菜鳥秒變專家!加州大學(xué)提出PromptAgent,幫你高效使用ChatGPT!文章中提到模型可以自動迭代優(yōu)化Prompt,將平平無奇的prompt打造成媲美專家設(shè)計的prompt?,F(xiàn)下,模型還可以自動生成偽示范,提升零樣本的能力。繼續(xù)發(fā)展下去,prompt工程師一職會不會也快要失業(yè)了呢?

往期精彩回顧
交流群
歡迎加入機(jī)器學(xué)習(xí)愛好者微信群一起和同行交流,目前有機(jī)器學(xué)習(xí)交流群、博士群、博士申報交流、CV、NLP等微信群,請掃描下面的微信號加群,備注:”昵稱-學(xué)校/公司-研究方向“,例如:”張小明-浙大-CV“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進(jìn)入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~(也可以加入機(jī)器學(xué)習(xí)交流qq群772479961)
