可控文本生成,旨在讓語言模型的輸出帶有我們想要的某種屬性。比如情感、主題、三元組等。一般我們習慣采用 CTRL[1] 或者 PPLM[2] 等方式。但是,CTRL 是對整個語言模型進行 Finetuning, PPLM 因為需要在生成的過程中迭代更新 hidden activations,所以推理速度非常慢。
隨著 Prompting 技術的大火,我們一直在思考,Prompt 究竟能夠帶來什么?我們都說,Prompt 本質上是一種激發語言模型中知識的手段。因此,它應該不僅僅局限于數據集或者說任務的層面,激發模型對于某個任務的“知識”,還應該擴展到范圍更廣的控制屬性層面,激發模型對于某種輸出屬性的 sense !
于是,我們不妨把視角從 task scaling 挪開,更多地關注一下 Prompt 對于可控性的 buff 加成。
今天的這篇文章來自 UCSB 和微軟,提出通過對比學習的方法找尋到了這個 buff 一般的 Prompt,能夠“調教”我們的語言模型進行可控的生成。
論文標題:
Controllable Natural Language Generation with Contrastive Prefixes
論文作者:
Jing Qian, Li Dong, Yelong Shen, Furu Wei, Weizhu Chen
論文鏈接:
https://arxiv.org/abs/2202.13257
模型方法
首先明確一個概念:Prefix。讀者可以簡單看一下 Prefix-Tuning[3] 的方法圖,就大概知道:Prefix 相當于一種控制指令,加在輸入的最前面,以控制生成文本的屬性。
本文提出了兩種方法,分別是監督方法和無監督方法。
下面的方法介紹以 Sentiment Control 為例(即生成給定帶有情感的文本)。該任務要訓練的,正是 positive 和 negative 的兩種情感類別所對應的 prefix.
監督方法
整個訓練過程和 Prefix-Tuning[3] 相似,LM 的參數是凍結的,只調整 Prefix 相關聯的參數。在訓練的時候,除了LM loss 之外,新增一個判別損失:
其中, 代表生成文本, 代表控制信號的類別(positive 或 negative)。
無監督方法
在監督方法中,控制信號是已知的。實際場景中還會常常出現控制信號未知的情況,因此需要通過變分的無監督方法找到這個“虛擬的類別信號“并使用 latent variable 表征,即 VQ-VAE[4] 的思想。
如圖,需要先通過一個 encoder 預測相應輸入對應的 latent variable 作為 prefix index(指代當前要使用哪個 prefix)。設 prefix index 為 ,則這個 encoder 就是要學習 這個分布。
一方面,除了 LM loss ,還需要保證后驗概率 或 盡可能的準確,故引入 KL 散度:
這里的 假設是 uniform distribution。其中,
GS 表示 Gumbel Softmax, 是 GS 的 temperature 參數。
關于這塊兒的詳細原理,就是我們小學二年級就學過的 EM 算法啦~
幫讀者回憶一下:
......
另外,作者又提出了一個無監督對比損失:其中, 和 是根據 decoder 的文本生成概率得到的,具體計算方式如下:
最后總的損失函數為 ,, 的加權求和,
實驗結果
Sentiment Control
Detoxification
Topic Control
推理速度
Multi-Aspect Control
實際場景中,很少有 multi-aspect labeled data,只有 single-aspect labeled data.
本文使用了兩種方式來解決多種屬性的可控生成問題:
Ours (concatenation):使用 single-aspect labeled data 分別訓練各自的 prefix, 然后在 multi-aspect control 任務中將其拼接起來。
Ours (semi-supervised):同時訓練 multi-aspect prefixes, 在訓練時把 single-aspect labeled example 當做 partially labeled. 此外,multi-aspect prefixes 經過了 trained single-aspect prefixes 的初始化。
Ours (semi-supervised) 是上述監督方法和無監督方法的組合,因此架構圖和無監督方法的圖是一樣的。
寫在最后
這里也推薦讀者品讀一下 DeepMind & ICL 的相似工作:Control Prefixes [5].
古人云:“君子生非異也,善假于物也”。我們把語言模型比作“人”,把可控性比作“物”,也許,大大小小的語言模型在能力的本質上并沒有什么不同,但是如果可以通過不同的 Control Prefixes,假之以物,則語言模型可成“君子”也!(哈哈,搞一個俏皮的比喻~)
無論是本文介紹的 Contrastive Prefixes 也好,還是 Control Prefixes 也好,我們都可以從中發現 Prompt 對于”調教“語言模型的偉大能力。從 task 到 controllability, 可能會是 prompt 向前發展的又一個新階段吧~
審核編輯 :李倩
-
語言模型
+關注
關注
0文章
506瀏覽量
10245 -
prompt
+關注
關注
0文章
14瀏覽量
2668
原文標題:搭配對比學習,萬能的 prompt 還能做可控文本生成
文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論