Abductive Commonsense Reasoning(溯因推理)
介紹
溯因推理是對不完全觀察情境的最合了解釋或假設的推論。
上圖給出的是一個簡明扼要的例子:
給定不同時間節點上的情境觀測值 \(O_{1}\) 和 \(O_{2}\) ,溯因推理的任務是從給出的一衆解釋性假設 \(H_{1}, \space H_{2}, \space \cdots ,H_{n}\) 中選出最合理的。例如,上圖在 \(t_{0}\) 時刻觀測到的情境 \(O_{1}\) 是:Jenny打掃好了房間并給窗戶留了條縫隙之後去工作了。而在 \(t_{n}\) 時刻,情境變成了:當Jenny回到家,發現房間裡一片狼藉。針對這兩個觀測到的不同時間節點上情境,有若幹個解釋性假設 \(H_{1}, \space H_{2}, \space H_{3}\)。
- 對于假設 \(H_{1}\) ,小偷的入室盜竊(broke into)很好的承接了 \(O_{1}\) 中”未關緊窗戶(a crack open)“帶來的安全隐患,并很好地解釋了情境 \(O_{2}\) 中房間為什麼一團亂(小偷翻東西),是以看上去假設 \(H_{1}\) 非常合理的解釋了情境 \(O_{1}\) 到情境 \(O_{2}\) 的轉換。
- 對于假設 \(H_{2}\) ,假設中提到的大隻的鳥(large bird)似乎不太可能從窗戶縫隙飛進房間,但是如果不考慮情境 \(O_{1}\),該假設可以很好地解釋房間亂的現象(鳥兒被困房間,為了逃離,弄得房間很亂)
- 對于假設 \(H_{3}\),前半部分(At work)可以很好地承接情境 \(O_{1}\)(Jenny去工作了,是以Jenny在工作中),但是該假設後半部分(blew her papers everywhere)完全沒法解釋情境 \(O_{2}\), 因為該假設完全指的是發生在辦公處的事情,而情境 \(O_{2}\) 則是Jenny家中的場景。
綜合以上對三個假設的考量,我們很容易得出,第一個假設是最符合情境 \(O_{1}\) 和 \(O_{2}\) 的。然而這看似簡單的推理過程,對于現有的模型來說,卻不是那麼容易的。
雖然長期以來”溯因“這種行為被認為是人們解讀、了解自然語言的核心,但受限于資料集的缺乏和模型的性能,支撐溯因自然語言推理和生成的研究卻相對較少。
ART資料集
ART(叙事文本中的溯因推理——ABDUCTIVE REASONING IN NARRATIVE TEXT)是第一個用于研究叙事文本中溯因推理的大規模基準資料集。其組成如下:
-
20K左右的叙述背景 ——成對的觀察結果<\(O
_{1}\space,O_{2}\)>
- 這些觀察情境是根據ROCStories資料集進行編寫的。ROCStories是一個由五句話組成的手動精選短篇故事的大集合。它被設計為每個故事都有一個清晰的開始和結束,這自然對應到ART資料集中的 \(O_{1},O_{2}\) 。
- 超過200K的解釋性假設
- 按可能的解釋性假設 \(h^{+}\) 和不太可能的解釋性假設 \(h^{-}\) 進行衆包。對于 \(h^{-}\) 的衆包 ,要求衆包勞工在 \(h^{+}\) 的基礎上,進行最小限度的編輯(最多改動5個單詞),為每個 \(h^{+}\) 創造不可信的假設變量 \(h^{-}\)。
- 資料集分析
- 下面分别分析了對應每個觀測對
任務
論文中提出的兩個溯因推理任務分别是αNLI(溯因自然語言推理——Abductive Natural Language Inference)和αNLG(溯因自然語言生成 —— Abductive Natural Language Generation)。
ART資料集中每個例子按如下格式定義:
- \(O_{1}\) —— \(t_{1}\)時刻的觀察
- \(O_{2}\) —— \(t_{2}\)時刻的觀察
- \(h^{+}\) —— 對觀察 \(O_{1}\) 和觀察 \(O_{2}\) 的更合理的解釋
- \(h^{-}\) —— 對觀察 \(O_{1}\) 和觀察 \(O_{2}\) 來說不太合理的解釋
αNLI
給定一對觀測和一對解釋性假設,αNLI的任務是選出兩個假設中更有可能的那個。
在機率架構下模型的目标函數為:
\[h^{*}=\arg \max _{h^{i}} P\left(H=h^{i} \mid O_{1}, O_{2}\right)
\]
根據貝葉斯法則,以觀測 \(O_{1}\) 為先驗條件,可以重寫上述公式:
\[\begin{equation}
\begin{aligned}
P\left(h^{i} \mid O_{1}, O_{2}\right) = \frac{P\left(O_{2}, O_{1}, h^{i}\right)}{P\left(O_{1} , O_{2}\right)} \\
=\frac{P\left(O_{2}\mid h^{i}, O_{1}\right)P\left(h^{i},O_{1}\right)}{P\left(O_{2}, O_{1}\right)} \\
=\frac{P\left(O_{2}\mid h^{i}, O_{1}\right)P\left(h^{i} \mid O_{1}\right)}{P\left(O_{2}\mid O_{1}\right)}
\end{aligned}
\end{equation}
\]
因為 \(P\left(O_{2}\mid O_{1}\right)\) 是定值,所求又是優化問題,是以可以僅考慮左側的目标函數與右側乘式的相關關系即可:
\[P\left(h^{i} \mid O_{1}, O_{2}\right) \propto P\left(O_{2} \mid h^{i}, O_{1}\right) P\left(h^{i} \mid O_{1}\right)
\]
根據上式,建立如下若幹獨立性假設,為αNLI任務建構一套機率模型:
- \(H_{i}\) 與 \(O_{1},O_{2}\)都無關時(模型沒用到觀測值)
\[P\left(h^{i} \mid O_{1}, O_{2}\right)=P\left(h_{i}\right)
\]
- \(H_{i}\) 僅與 \(O_{1},O_{2}\)其中一個有關(模型用到了一個觀測值)
- 線性鍊模型 —— \(H_{i}\) 與 \(O_{1},O_{2}\)都直接相關,但 \(O_{1} \perp O_{2}\) (模型使用兩個觀測值,但獨立地考慮了每個觀測值對假設的影響),
\[h^{*}=\arg \max _{h^{i}} P\left(O_{2} \mid h^{i}\right) P\left(h^{i} \mid O_{1}\right) \text { where }\left(O_{1} \perp O_{2} \mid H\right)
\]
- 全連接配接(模型使用兩個觀測值,結合兩個觀測值的資訊選擇合理的假設),目标函數為:
\[h^{*}=\arg \max _{h^{i}} P\left(O_{2} \mid h^{i},O_{1}\right) P\left(h^{i} \mid O_{1}\right)
\]
在論文的實驗中,将不同的獨立性假設文本輸入BERT進行編碼。對于前兩個機率模型,可以通過簡單地将模型的輸入限制為相關變量來加強獨立性。另一方面,相關線性鍊模型将所有三個變量 \(O_{1},O_{2},H\) 都作為輸入,通過限制模型的形式以加強條件獨立性。具體來說,學習一個具有二分類功能的分類器:
\[P_{\text {Linear }} \text { Chain }\left(h \mid O_{1}, O_{2}\right) \propto e^{\phi\left(O_{1}, h\right)+\phi^{\prime}\left(h, O_{2}\right)}
\]
其中,\(\phi\) 和 \(\phi^{\prime}\) 為産生标量值的神經網絡模型。
αNLG
給定 \(O_{1},O_{2},h^{+}\) 為一組的的訓練資料,αNLG的任務就是最大化 \(O_{1},O_{2},h^{+}\) 對應的文本句在生成模型中的生成機率。同時,還可以在給定兩個觀測的基礎上再添加背景知識 \(\text{K}\) 作為條件,模型的損失函數構造如下:
\[\mathcal{L}=-\sum_{i=1}^{N} \log P\left(w_{i}^{h} \mid w_{<i}^{h}, w_{1}^{o 1} \ldots w_{m}^{o 1}, w_{1}^{o 2} \ldots w_{n}^{o 2}, \mathcal{K}\right)
\]
其中,\(O_{1}=\left\{w_{1}^{o 1} \ldots w_{m}^{o 1}\right\}\) ,\(O_{2}=\left\{w_{1}^{o 2} \ldots w_{n}^{o 2}\right\}\),\(h^{+}=\left\{w_{1}^{h} \ldots w_{l}^{h}\right\}\),它們都由其自然語言文本對應的token組成。 \(w_{<i}^{h}\) 代表目前位置的前 \(i\) 個token,\(w_{i}^{h}\) 為目前位置 \(i\) 處的token。模型的訓練目标就是最大化句子的生成機率 \(P\),也即最小化上述公式的損失 \(L\)。
實驗結果
αNLI
αNLI任務被構造成了一個二分類問題。
Baseline
- SVM —— 利用Glove詞嵌入,考慮詞長度、詞的重疊和情感特征等對兩個假設選項進行選擇。(50.6%)
- BOW —— 将兩個觀察和一個解釋性假設文本串接在一起,利用Glove為串接起來的文本建構句子嵌入,再通過一個全連接配接網絡為包含每個不同的解釋性假設選項的句子的嵌入打分。(50.5%)
- Bi-LSTM + max-pooling —— 用Bi-LSTM編碼句子,使用經過最大池化後的句子嵌入進行打分。(50.8%)
可以看到,傳統分類器 + 上下文無關的單詞嵌入的方式對解決這個二分類問題看上去幾乎毫無作用(因為随機二選一都有一般的機率選對)。
實驗模型
采用預訓練模型GPT和BERT編碼觀測和解釋性假設。
- 對于GPT,将觀測 \(O_{1}\) 和解釋性假設 \(H\) 串接在一起,然後使用 [SEP] 将其與觀測 \(O_{2}\) 分隔開,以[START] 和 [SEP] 結尾。
- 對于BERT,根據不同獨立性假設。有如下五種輸入的構造方式:
評估
最後一列代表模型在論文提出的 \(\text{ART}\) 資料集上的表現,和前四個baseline相比,基于GPT和BERT構造的分類模型在資料集上的表現明顯提高了很多,最好的BERT-ft[Linear Chain]比最佳baseline提升了10.1個百分點,達到了68.9。但是和人類的表現相比,這樣的結果還是非常差的。是以,在溯因推理方面的研究還有很多工作要做。
αNLG
實驗模型
- \(O_{1}-O_{2}-\text{Only}\) —— 以組成兩個觀測值 \(O_{1}\) 和 \(O_{2}\) 的token為起始訓練GPT2。
- 使用COMET生成ATOMIC格式(如果-那麼)的知識 —— 包含常識知識的圖,是一個以推理“如果-那麼”的知識為主的知識庫,它以事件作為節點,下列九大關系作為邊:
ATOMIC是對\(\text{ART}\) 資料集中的叙事上下文進行推理所需的背景常識的來源。COMET是基于ATOMIC訓練的專門實作常識知識圖自動建構的Transformer,這裡借助COMET生成基于事件的常識推理知識,然後再GPT2中內建了COMET生成的資訊用于αNLG任務。內建方式分兩種:
- COMeT-Txt+GPT-2(作為文本短語的方式內建)
在單詞嵌入層嵌入輸入标記之後,我們在通過Transformer架構的層之前,向串接的觀察序列添加18個(對應于每個觀察的九個關系)自然語言文本,由GPT2進行編碼。
- COMeT-Emb+GPT2(作為嵌入的方式內建)
和上面那種方式一樣,不過在觀察序列前添加的是18個COMeT Embedding,這允許模型在處理COMeT嵌入時學習每個token的表示——有效地将背景常識知識內建到語言模型中。
評估
- 自動評估 —— BLEU、METEOR、ROUGE、CIDEr、BERT-Score
- 人工評估 —— 向衆包人員展示成對的觀察結果和一個生成的假設,要求他們标注該假設是否解釋了給定的觀察結果。最後一欄為對應的評估分數。人工編寫的假設在96%的情況下是正确的,而我們最好的生成模型,即使有背景常識知識的增強,也隻能達到45%——這表明αNLG生成任務對目前最優越的文本生成器來說尤其具有挑戰性。
生成執行個體
結論
文章提出了第一項研究,調查基于語言的溯因推理的可行性。概念化并引入溯因自然語言推理(αNLI)——一個關注叙事語境中溯因推理的新任務。該任務被表述為一個選擇題回答問題。文章還介紹了溯因自然語言生成(αNLG)——一種新的任務,需要機器為給定的觀察結果生成可信的假設。為了支援這些任務,建立并引入了一個新的挑戰資料集ART,它由20k個常識性叙述和200k多個解釋性假設組成。在實驗中,基于最先進的NLI和語言模型建立了這一新任務的Baseline,其準确率為68.9%,與人類性能(91.4%)有相當大的差距。αNLG任務要困難得多——雖然人類可以寫出96%的有效解釋,但是目前表現最好模型隻能達到45%。文章的分析讓我們對深度預訓練語言模型無法執行的推理類型有了新的見解——盡管預訓練模型在NLI蘊涵的密切相關但不同的任務中表現出色,但是在應對基于 \(\text{ART}\) 資料集提出的溯因推理和溯因生成任務時,表現卻差強人意,這為未來的研究指出了有趣的途徑。作者希望ART将成為未來基于語言的溯因推理研究的一個具有挑戰性的基準,并且αNLI和αNLG任務将鼓勵在人工智能系統中實作複雜推理能力的表征學習。