當前位置:網站首頁>論文解讀:精華內容——用於常識推理的知識生成提示

論文解讀:精華內容——用於常識推理的知識生成提示

2022-01-26 22:45:26 NLP論文解讀

原創作者 |康德

圖片

地址:https://arxiv.org/abs/2110.08387

盡管大型語言模型能够在預訓練期間捕獲大量知識,但它們通常受益於整合外部知識庫,尤其是在常識推理任務上。

這促使我們探索如何更好地利用從語言模型中獲得的知識。作者建議使用通用提示格式直接從語言模型生成知識語句,然後選擇使得預測概率最大的知識。

盡管它很簡單,但這種方法提高了預訓練模型在數字常識、通用常識和科學常識上的性能。值得注意的是,使用模型自己生成的知識,它的預測可以提高,這錶明了符號知識錶示在神經推理過程中的重要性。

圖片

Introduction

進行常識推理需要常識知識,而預訓練語言模型隱含了大量的知識,可以直接作為常識推理的推理模型,一方面,整合外部知識庫可以提高其中一些任務的性能。

另一方面,語言模型本身可以充當知識庫的角色,因為它們允許查詢符號知識。為了利用語言模型中包含的知識來回答常識問題,最近的一些工作通過設計cloze-style模板來生成某種類型的知識陳述,例如闡明、對比說明等。

然而,任務通常需要不同類型的知識,這超出了預定義模板的範圍(錶1)。如何從語言模型中靈活地引出一般類型的有用知識,並將這些知識整合到預測中?

圖片

錶1:生成知識提示修正預測的例子

每部分綠色錶示正確的回答 

紅色錶示錯誤的回答

每一行的第一句錶示問題 

第二句錶示知識生成模型生成的知識語句

作者開發了一個簡單而有效的方法來生成知識並使用它來提高預測性能。作者提出的方法使用兩種語言模型:一種是知識模型,它使用帶有通用提示符的演示生成與問題相關的知識陳述;

一個推理模型,它接收每個知識陳述所增加的問題,然後使用這些知識,從而使其預測的概率最高(圖1)。生成性知識提示(generated knowledge prompting )在數值常識、一般常識以及科學常識可以提高現成模型和經過微調的模型的推理性能。

值得注意的是,當使用相同的語言模型進行知識生成和推理時,該方法是有效的。

圖片

圖1:上面:沒有符號知識的推理預測模型

下面:生成知識的提示:

1、生成問題相關的符號知識

2、在推理模型中使用知識陳述

作者發現有三個因素對基於生成性知識提示的推理任務有幫助:1、知識質量,2、知識數量,3、整合知識的推理策略。通過定性分析,生成的知識可以將常識性問題簡化為明確的推理流程。

圖片

Method

圖片

2.1知識生成

利用問題相關的知識示例,通過提示語言模型生成知識陳述。在所有任務中使用同樣的提示形式:由一個命令句子,一些問題-知識對示例,然後以問題占比特符結束,如錶2所示。

圖片

錶2:NumerSense和QASC知識生成提示的例子

提示由一個指令句子、五個問題-知識對示例和問題占比特組成

對於一個給定的問答任務,給出同問題類似的五個問題,然後為每個問題寫一個相應的知識陳述。理想情况下,提供的知識陳述應該把常識問題變成明確的推理過程。

當然,不應該簡單地將答案插入到問題後面,而是鼓勵多樣的知識生成。比如對於問題Penguins havewings, 可以將知識陳述寫成Birds have two wings. Penguin is a kind of bird。

知識陳述中的兩句話可以看作是演繹推理的完備集。而Penguins have two wings是一個不好的知識陳述示例,因為直接將問題和答案顯示出來了。

2.2通過提示進行知識整合

圖片

圖片

實驗

本文在四個常識推理數據集上評估生成性知識提示:NumerSense (NS), CommonsenseQA (CSQA), CommonsenseQA 2.0 (CSQA2), and QASC。這些數據集包含了推理和問題多樣性。

使用GPT-3進行知識生成,一般對每個問題生成20個知識陳述,將重複的和空字符串丟弃。當超過64個token或者遇到‘\n’時,生成終止。

NumerSense由多個關於常見的物體和概念的陳述組成的,對於每個句子需要恢複一個被掩蓋的數字。選項是從0到10的整數,加上單詞no,所以這個任務可以被定為一個多項選擇題。

在推理階段使用T5進行推斷,同時使用零樣本的GPT-3進行推斷,將每個選項插入到句子中,並將答案的概率作為整個句子的生成概率:

圖片

CSQA 是一個關於現實世界的多個選項的問答數據集。通過T5進行推斷,將問題形式化為文本填充,並以最高的序列到序列語言建模概率預測選擇。 

CSQA2 是一個二元分類數據集,需要判斷常識性陳述是對還是錯。

QASC 是一個關於小學科學的多項選擇的數據集。這個數據集還包括每個問題的兩個背景知識,背景知識完全回答了問題。

圖片

錶3:不同先進方法的比較

將本文提出的方法與之前的最好的方法進行比較,如錶3所示。在每種情况下,在之前SOTA中使用的相同推理模型上應用本文提出的方法,可以看出NumerSense實現了6%的提昇,CSQA2實現了2%的提昇,QASC實現了3%的提昇。 

圖片

錶4:在零樣本模型上的提昇

錶4顯示了在零樣本推理模型中,應用本文提到的方法,在NumerSense, CSQA和QASC上提高7%到10%不等,在CSQA2上錶現不好,作者也沒分析原因。

錶5錶明,本文方法在微調推理模型上也能給模型的性能帶來提昇。

圖片

錶5:在微調模型上的提昇

通過定量分析,作者發現本文提到的方法要優於基於檢索的知識提示方法,以及優於基於模板的知識生成方法,同時推理階段利用的知識越好,對性能提昇也越好。生成的知識越多,對推理越有幫助,如錶6所示。

圖片

錶6:每個問題生成不同數量的知識陳述的性能

錶7顯示了在不同大小的推理模型下NumerSense的性能增益。

第三行顯示,gpt-3既是知識生成模型,也是推理模型,模型越小,提昇越大,但個人覺得第三行要有意義些,因為其他模型太小了,可能gpt-3直接把答案告訴推理模型了,可以再做兩個推理模型比gpt-3强的實驗。

圖片

錶7:不同知識集成算法的性能

本文提出生成性知識提示模型,從預訓練語言模型中抽取知識,然後整合知識提昇常識推理任務的性能。這種方法在多個推理數據集上被證明是有效的。

版權聲明
本文為[NLP論文解讀]所創,轉載請帶上原文鏈接,感謝
https://cht.chowdera.com/2022/01/202201262245264263.html

隨機推薦