數學推理是人類智能的一項核心能力,但對于機器來說,抽象思維和邏輯推理仍然是一個很大的挑戰。大規模預訓練語言模型,如 GPT-3 和 GPT-4,在文本形式的數學推理(如數學應用題)上已經取得了顯著的進展。然而,目前我們還不清楚這些模型能否處理涉及到異構信息(如表格數據)的更復雜的問題。為了填補這一空白,來自 UCLA 和艾倫人工智能研究院(AI2) 的研究人員推出了 Tabular Math word Problems (TabMWP) ,這是一個包含了 38,431 個開放領域問題的數據集,需要同時在文本和表格數據上進行數學推理得到正確答案。TabMWP 中的每個問題都與一個上下文相關聯,這個上下文包含圖片、文本或結構化格式的表格。
研究人員在 TabMWP 上評估了包括 Few-shot GPT-3 等不同的預訓練模型。正如已有的研究發現,Few-shot GPT-3 很依賴 in-context 示例的選擇,這導致其在隨機選擇示例的情況下性能相當不穩定。這種不穩定在處理像 TabMWP 這樣復雜的推理問題時表現得更加嚴重。為了解決這一問題,作者提出了 PromptPG 方法,這種方法將示例的選擇轉化成強化學習中的 contextual bandit 問題,并且利用 Policy Gradient 訓練一個策略網絡來學習從少量的訓練數據中選擇最優的 in-context 示例。實驗結果表明,他們提出的 PromptPG 方法在回答問題的準確性上超過最優基準(Few-shot CoT GPT-3)5.31%,并且相對于隨機選擇的 in-context examples,他們的方法顯著降低了預測的方差,提升了這類方法的穩定性。
- 論文鏈接:https://arxiv.org/abs/2209.14610
- 代碼鏈接:https://Github.com/lupantech/PromptPG
- 項目主頁:https://promptpg.github.io
- 數據可視化:https://promptpg.github.io/explore
1、TabMWP 數據集
下面是來自 TabMWP 數據集的兩個例子。其中一個是答案為數值類型的自由文本問題(free-text),另一個是答案為文本類型的多項選擇題(multi-choice)。可以看到,每個問題都提供了一個包含分步推理的解答。要解決 TabMWP 中的問題,系統必須同時具備查表和多步數學推理的能力。舉下圖中的例子來說,要回答 “how much will she spend (if Tracy buys three kinds of breads)”,我們需要先在表格中查找出三種面包對應的價格,再計算購買每種面包的費用,并對它們求和已得到最終的費用。
如下表的統計所示,TabMWP 數據集包含 38,431 個表格數學問題。其中 74.7% 的問題屬于自由文本問題,25.3% 的問題屬于多選題。TabMWP 共有 28,876 個不同的問題,6,153 個不同的答案和 35,442 個不同的解答,表明其在問題分布方面具有豐富的多樣性。這些問題平均長度為 22.1 個單詞,解答平均長度為 49.5 個單詞,這表明 TabMWP 具有詞匯的豐富性。TabMWP 的一個顯著特點是,每個問題都附帶有一個表格上下文,如果沒有表格,問題將無法解決。TabMWP 總共有 37,644 個不同的表格,表格平均有 5.9 行和 2.2 列,12.9 個單元格,最大可達 54 個單元格。這些統計數據表明,TabMWP 中的表格也具有豐富的多樣性。
TabMWP 數據集有兩種不同的問題類型以及五種不同的答案類型:
TabMWP 中的每個問題都有一個表格上下文,它以圖像、半結構化文本和結構化三種格式表示。這為開發不同類型的推理模型提供了可能性。
相比于已有的數據集,TabMWP 同時需要表格理解和數學推理能力來回答問題。另外,TabMWP 每道題都有詳細的多步推理過程,在數據集大小、表格類型、問題類型和答案類型上有明顯的優勢。據本文所知,TabMWP 是第一個在開放領域表格場景下的數學推理數據集。
2、PromptPG 方法
考慮到大規模預訓練模型例如 GPT-3 在解決數學應用題方面取得的成功,作者首先使用 Few-shot GPT-3 在 TabMWP 上建立了一個基準。他們從訓練集中隨機選擇一些上下文示例以及測試樣本構成提示(prompt),提示 GPT-3 預測答案。然而,最近的研究表明,這種基于隨機選擇的 few-shot 學習在不同的上下文示例選擇上可能會表現得非常不穩定。在處理類似 TabMWP 這樣的復雜推理問題時,隨機選擇的效果可能會更差,因為其問題涉及到不同類型和格式的表格。
為了解決這個問題,作者提出了一種改進方法:通過 Policy Gradient 進行提示學習,從少量的訓練數據中學習選擇上下文示例,稱為 PromptPG。如圖 2 所示,策略網絡學習從候選池(candidate examples)中找到最佳的 in-context example,其優化目標是在與 GPT-3 環境交互時最大化給定訓練示例(training example)的預測獎勵。選擇示例的策略網絡是一個基于固定參數的 BERT 語言模型和一個參數可學習的單層神經網絡。在完成優化學習后,PromptPG 可以對不同的測試題目,動態地從候選示例中選出不同的最優示例,從而最大化提高 GPT-3 的推理性能。
以下為 PromptPG 的學習算法。
3、實驗與分析
預訓練與微調?
表 3 對比了 PromptPG 和不同基準在 TabMWP 數據集上的結果。可以看到,TAPEX 由于在表格數據上進行了預訓練,在相似參數量的前提下,其比 UnifiedQA 的表現要更好。對于 TAPEX 和 UnifiedQA 來說,提高模型的參數量都可以提高預測的準確性。此外,在 TabMWP 上進行模型的微調也可以極大地提升預測的準確性。
大規模語言模型?
GPT-3 在沒有任何微調的情況下(Zero-shot GPT-3),可以取得與微調過的 UnifiedQA 以及 TAPEX 模型相近的準確性。如果 Few-shot GPT-3 模型隨機選擇兩個 in-context 示例作為 GPT-3 的提示,其相比 Zero-shot GPT-3 可以進一步提升 0.17%。通過讓 Few-shot GPT-3 在生成最終答案前生成多步的中間步驟(Few-shot-CoT GPT-3),研究人員可以得到最優的基準模型,其準確率達到了 62.92%。
PromptPG?
區別于隨機選擇 in-context 示例,本文提出的 PromptPG 通過 Policy Gradient 訓練一個策略網絡來選擇更合適的 in-context 示例,在 TabMWP 上取得了最高的預測結果(68.23%),其平均預測準確率超過最好基準模型(Few-shot-CoT GPT-3)5.31%。值得注意的是,對于幾乎所有的問題類型、答案類型和問題難度,PromptPG 都展現出了其在預測準確率上的優勢。盡管如此,PromptPG 距離人類 90.22% 的表現則還有很大的提升空間。
消融實驗
表 4 表明,TabMWP 的所有輸入元素(問題文本、表格信息、選項信息)都對正確回答問題至關重要。只有所有的問題元素作為輸入信息,Zero-shot GPT-3 才取得了其相對最高的平均預測準確率(59.50%)。
不同的示例選擇
作為對比實驗,研究人員還比較了其他不同示例選擇的方法。如表 5 所示,選擇與測試問題相同的題型或者答案類型可以幫助模型找到更相關的示例,并提高回答的準確性。選擇最復雜的示例則并不能穩定地提高回答準確性。在候選示例中固定選擇兩個最好的示例,可以小幅度提高準確性,并降低方差。選擇語義上最接近測試問題的示例可以達到最接近 PromptPG 方法的準確性。總體來說,PromptPG 全面展現了其在提升預測準確性和降低預測方差上的優勢。
下圖展示了 PromptPG 選擇的示例以及最終的預測結果。可以看到,PromptPG 方法可以選擇與測試題目具有類似的數學能力的示例,從而提高 Few-shot GPT-3 的推理性能。
預測成功的例子?
以下展示了 PromptPG 對一個自由文本問題的正確回答。這個問題要求對表格中的八個數字分別進行加法和除法計算以得到平均值。
在如下的例子中,模型被要求理解一個稅收報告,并計算扣稅后的工資。
以下展示了 PromptPG 對多選題問題的正確預測。給定的表格一共有 9 行和 6 列。模型成功地定位到了表格中的目標單元格,并進行多步推理以預測正確答案。
在以下的例子中,模型需要比較預算和總成本,以驗證 Ariana 是否有足夠的錢。
預測失敗的例子?
以下展示了 PromptPG 對自由文本問題的錯誤預測。模型檢索到了錯誤的玫瑰石英價格,從而錯誤計算了三個物品的成本總和。
在以下的例子中,問題提供了一個抽象的莖葉表。模型無法理解這個特定領域的表格,并且缺乏高級邏輯推理能力從而得到了錯誤的答案。
以下的例子表明,現有的模型似乎不具有對數字排序的能力。
在以下的例子中,表格中沒有出現與問題提到的當前時間完全一致的時間,因此模型無法準確定位到下一站的出發時間。
以下的例子中,模型很難準確完成一長串數字的算術運算。
4、結論與展望
作者提出了 TabMWP,這是第一個針對表格語境的數學問題求解的大規模數據集。TabMWP 包含了 38,431 個開放領域的問題,其中包括兩種問題類型和五種答案類型,每個問題都標注了多步的解答過程。作者使用了最先進的 QA 和 TableQA 方法,在預訓練和微調設置下對 TabMWP 進行了全面的實驗,以及使用大型預訓練語言模型 GPT-3 進行評估。作者進一步提出了一種全新的強化學習方法 PromptPG,該方法利用 Policy Gradient 學習從訓練數據中選擇最優的實例用于提示用于 GPT-3 模型。實驗結果表明,與隨機選擇相比,PromptPG 的性能明顯優于現有的基線,并且減少了預測中的性能不穩定性。