機器之心報道
機器之心編輯部
(相關資料圖)
「數(shù)學研究就像尼羅河一樣,始于細微,終于宏大?!埂?Charles Caleb Colton,英國作家
數(shù)學推理是人類智能的關鍵體現(xiàn),它使我們能夠理解并做出基于數(shù)值數(shù)據(jù)和語言的決策。數(shù)學推理適用于各個領域,包括科學、工程、金融和日常生活,并包含一系列能力,諸如從模式識別、數(shù)字運算等基本技能到解決問題、邏輯推理和抽象思維等高級技能。
長期以來,開發(fā)能夠解決數(shù)學問題、證明數(shù)學定理的 AI 系統(tǒng)是機器學習和自然語言處理領域的研究重點。這也可以追溯到 20 世紀 60 年代。
在深度學習興起的近十年,人們對這一領域的興趣更是大幅增長:
圖 1:每年發(fā)表的關于數(shù)學推理的深度學習論文的預估數(shù)量。自 2018 年以來,這一領域經(jīng)歷了快速增長。
深度學習在各種自然語言處理任務中顯示出巨大的成功,如問題回答和機器翻譯。同樣,研究人員開發(fā)了各種用于數(shù)學推理的神經(jīng)網(wǎng)絡方法,這些方法在處理應用題、定理證明和幾何問題解決等復雜任務時已被證明是有效的。例如,基于深度學習的應用題求解器采用了一個序列到序列的框架,并以注意力機制作為中間步驟生成數(shù)學表達式。此外,通過大規(guī)模語料庫和 Transformer 模型,預訓練的語言模型在各種數(shù)學任務上取得了可喜的成果。最近,像 GPT-3 這樣的大型語言模型在復雜推理和語境學習中表現(xiàn)出令人印象深刻的能力,進一步推動了數(shù)學推理領域的發(fā)展。
在近期發(fā)布的一篇報告中,來自 UCLA 等機構(gòu)的研究者系統(tǒng)回顧了深度學習在數(shù)學推理方面的進展。
論文鏈接:https://arxiv.org/pdf/2212.10535.pdf
項目地址:https://github.com/lupantech/dl4math
具體而言,本文討論了各種任務和數(shù)據(jù)集(第 2 節(jié)),并研究了神經(jīng)網(wǎng)絡(第 3 節(jié))和預訓練語言模型(第 4 節(jié))在數(shù)學領域的進展。此外還探討了大型語言模型的上下文學習在數(shù)學推理中的快速發(fā)展(第 5 節(jié))。文章進一步分析了現(xiàn)有的基準,發(fā)現(xiàn)對多模態(tài)和低資源環(huán)境的關注較少(第 6.1 節(jié))?;谘C的研究表明,目前的計算能力表征是不充分的,深度學習方法在數(shù)學推理方面也是不一致的(第 6.2 節(jié))。隨后,作者建議在概括性和魯棒性、可信推理、從反饋中學習和多模態(tài)數(shù)學推理方面改進目前的工作(第 7 節(jié))。
任務和數(shù)據(jù)集
本節(jié)研究了目前可用于研究使用深度學習方法的數(shù)學推理的各種任務和數(shù)據(jù)集,見表 2。
應用題 (Math Word Problem)
應用題包含一個涉及人物、實體和數(shù)量的簡短敘述其,數(shù)學關系可以用一組方程來模擬,方程的解揭示了問題的最終答案。表 1 就是一個典型的例子。一個問題涉及加、減、乘、除四種基本的數(shù)學運算,有單一或多個運算步驟。應用題對 NLP 系統(tǒng)的挑戰(zhàn)在于對語言理解、語義解析和多種數(shù)學推理能力的需求。
現(xiàn)有的應用題數(shù)據(jù)集涵蓋了小學階段的問題,這些問題是從在線學習網(wǎng)站上抓取的、從教科書中收集的或由人類手動注釋的。早期的應用題數(shù)據(jù)集相對較小,或者僅限于少量的操作步驟。最近的一些數(shù)據(jù)集旨在增加問題的多樣性和難度。例如,目前最大的公開問題集 Ape210K 由 210k 個小學應用題組成;而 GSM8K 中的問題可以涉及多達 8 個步驟的解法。SVAMP 是一個基準,測試深度學習模型對具有簡單變化的應用題的魯棒性。一些最近建立的數(shù)據(jù)集還涉及文本以外的模態(tài)。例如,IconQA 提供了一個抽象的圖表作為視覺背景,而 TabMWP 為每個問題提供了一個表格形式的背景。
大多數(shù)應用題數(shù)據(jù)集會提供注釋方程作為解決方案的理由(如表 1)。為了提高學習的求解器的性能和可解釋性,MathQA 用精確的運算程序進行注釋,MathQA-Python 則提供具體的 Python 程序。另一些數(shù)據(jù)集用多步驟的自然語言解決方案對問題進行注釋,這些解決方案被認為更適合人類閱讀。Lila 用 Python 程序的原理注釋了許多前面提到的應用題數(shù)據(jù)集。
理論證明
定理證明自動化是 AI 領域的一個長期挑戰(zhàn)。問題通常是通過一連串的邏輯論證來證明一個數(shù)學定理的真理性。定理證明涉及各種技能,如選擇高效的多步驟策略、使用背景知識以及進行符號運算(如算術(shù)或推導)。
最近,人們對在形式化的交互式定理證明器(ITP)中使用語言模型進行定理證明越來越感興趣。定理會在 ITP 的編程語言中被陳述,然后通過生成「證明步驟」來簡化,直到它被簡化為已知事實。其結(jié)果是一個步驟序列,構(gòu)成一個驗證的證明。
非形式化定理證明提出了定理證明的另一種媒介,即用自然語言和「標準」數(shù)學符號(如 LATEX)的混合形式來編寫語句和證明,并由人類檢查其正確性。
一個新興的研究領域旨在結(jié)合非正式和正式定理證明的要素。例如,Wu et al. (2022b) 探索將非形式化語句翻譯成形式化語句,而 Jiang et al. (2022b)發(fā)布了一個新版本的 miniF2F 基準,其中增加了非形式化語句和證明,稱為 miniF2F+informal。Jiang et al. (2022b)探索將提供(或生成)的非形式化證明轉(zhuǎn)化為形式化證明。
幾何問題
幾何問題自動化求解(GPS)也是數(shù)學推理研究中一個長期存在的人工智能任務,并在近年來引起了廣泛關注。與應用題不同,幾何問題由自然語言的文本描述和幾何圖形組成。如圖 2 所示,多模態(tài)輸入描述了幾何元素的實體、屬性和關系,而目標是找到未知變量的數(shù)值解。由于需要復雜的技能,GPS 對深度學習方法來說是一項具有挑戰(zhàn)性的任務。它涉及到解析多模態(tài)信息、進行符號抽象、利用定理知識和進行定量推理的能力。
早期的數(shù)據(jù)集促進了這一領域的研究,然而這些數(shù)據(jù)集相對較小或不公開,這限制了深度學習方法的發(fā)展。為了應對這一限制,Lu et al. 創(chuàng)建了 Geometry3K 數(shù)據(jù)集,該數(shù)據(jù)集由 3002 個多選幾何問題組成,并對多模態(tài)輸入進行了統(tǒng)一的邏輯形式注釋。最近,更大規(guī)模的數(shù)據(jù)集,如 GeoQA、GeoQA + 和 UniGeo 已經(jīng)被引入,并被注釋了可以被神經(jīng)求解器學習并執(zhí)行以獲得最終答案的程序。
數(shù)學問答
最近的研究表明,SOTA 數(shù)學推理系統(tǒng)在推理上可能存在「脆性」,即模型依靠特定數(shù)據(jù)集的虛假信號和即插即用的計算來達到「令人滿意」的性能。為了解決這個問題,人們從各個方面提出了新的基準。The Mathematics (Saxton et al., 2020) 數(shù)據(jù)集包括許多不同類型的數(shù)學問題,涵蓋算術(shù)、代數(shù)、概率和微積分。該數(shù)據(jù)集可以測量模型的代數(shù)泛化能力。同樣,MATH (Hendrycks et al., 2021) 由具有挑戰(zhàn)性的競賽數(shù)學組成,以衡量模型在復雜情況下的問題解決能力。
一些工作在問題輸入中加入了表格背景。例如,F(xiàn)inQA、TAT-QA 和 MultiHiertt 收集了需要表格理解和數(shù)值推理來回答的問題。一些研究則提出了大規(guī)模的數(shù)值推理的統(tǒng)一基準。NumGLUE (Mishra et al., 2022b) 是一個多任務基準,目標是評估模型在八個不同任務上的表現(xiàn)。Mishra et al. 2022a 提出了 Lila,進一步推動了這一方向,Lila 由 23 個數(shù)值推理任務組成,跨越了廣泛的數(shù)學主題、語言復雜性、問題格式和背景知識要求。
AI 同樣在其他類型的定量問題上有所成就。比如數(shù)字、圖表和繪圖,是以簡明的方式傳達大量信息的基本媒介。FigureQA、DVQA、MNS、PGDP5K 和 GeoRE 都是為了研究模型對基于圖表的實體間的定量關系進行推理的能力推出的。NumerSense 研究了現(xiàn)有的預訓練語言模型是否以及在多大程度上能夠感應數(shù)值常識知識。EQUATE 在自然語言推理框架中對定量推理的各個方面進行了形式化。定量推理還經(jīng)常出現(xiàn)在金融、科學和編程等特定領域。例如,ConvFinQA 以對話式問答的形式對財務報告進行數(shù)字推理;ScienceQA 涉及科學領域的數(shù)字推理;而 P3 研究了深度學習模型的函數(shù)推理能力,找到一個有效的輸入讓給定的程序返回 True。
用于數(shù)學推理的神經(jīng)網(wǎng)絡
對于常見的用于數(shù)學推理的幾種神經(jīng)網(wǎng)絡,本文的作者也進行了總結(jié)。
Seq2Seq 網(wǎng)絡
Seq2Seq 神經(jīng)網(wǎng)絡已經(jīng)成功地應用于數(shù)學推理任務,如應用題、定理證明、幾何問題和數(shù)學問題回答。Seq2Seq 模型使用編碼器 - 解碼器架構(gòu),通常將數(shù)學推理形式化為一個序列生成任務。這種方法的基本思想是將輸入序列(如數(shù)學問題)映射到輸出序列(如方程式、程序和證明)。常見的編碼器和解碼器包括長短時記憶網(wǎng)絡(LSTM)、門控遞歸單元(GRU)。大量的工作表明,Seq2Seq 模型比以前的統(tǒng)計學習方法具有性能優(yōu)勢,包括它們的雙向變體 BiLSTM 和 BiGRU。DNS 是第一項使用 Seq2Seq 模型將應用題中的句子轉(zhuǎn)化為數(shù)學方程的工作。
基于圖的網(wǎng)絡
Seq2Seq 方法具備生成數(shù)學表達式和不依賴手工制作特征的優(yōu)勢。數(shù)學表達式可以轉(zhuǎn)化為基于樹的結(jié)構(gòu),例如抽象語法樹(AST)和基于圖的結(jié)構(gòu),描述了表達式中的結(jié)構(gòu)化信息。然而,這種重要的信息并沒有被 Seq2Seq 方法明確地建模。為了解決這個問題,研究者開發(fā)了基于圖的神經(jīng)網(wǎng)絡來明確地模擬表達式中的結(jié)構(gòu)。
Sequence-to-tree(Seq2Tree)模型在對輸出序列進行編碼時明確地對樹結(jié)構(gòu)進行建模。例如,Liu et al. 設計了一個 Seq2Tree 模型來更好地利用方程的 AST 信息。相反,Seq2DAG 在生成方程時應用了一個序列圖(Seq2Graph)框架,因為圖解碼器能夠提取多個變量之間的復雜關系。在對輸入的數(shù)學序列進行編碼時,也可以嵌入基于圖的信息。例如,ASTactic 在 AST 上應用 TreeLSTM 來表示定理證明的輸入目標和前提。
基于注意力的網(wǎng)絡
注意力機制已成功應用于自然語言處理和計算機視覺問題,在解碼處理過程中考慮到了輸入的隱藏矢量。研究人員一直在探索它在數(shù)學推理任務中的作用,因為它可以用來識別數(shù)學概念之間最重要的關系。例如,MATH-EN 是一個應用題求解器,它得益于通過自注意力學習的長距離依賴信息。基于注意力的方法也被應用于其他數(shù)學推理任務,如幾何問題和定理證明。為了提取更好的表征,人們研究了各種注意力機制,如使用不同的多頭注意力來提取各種類型的 MWP 特征的 Group-ATT,以及被應用于提取 knowledge-aware 信息的圖注意力。
其他神經(jīng)網(wǎng)絡
數(shù)學推理任務的深度學習方法也可以利用其他神經(jīng)網(wǎng)絡,如卷積神經(jīng)網(wǎng)絡和多模態(tài)網(wǎng)絡。一些工作使用卷積神經(jīng)網(wǎng)絡架構(gòu)對輸入文本進行編碼,使模型有能力捕捉輸入中符號之間的長期關系。例如,Irving et al. 研究提出了深度神經(jīng)網(wǎng)絡在定理證明中的第一個應用,它依靠卷積網(wǎng)絡在大型理論中進行前提選擇。
多模態(tài)數(shù)學推理任務,如幾何問題解決和基于圖表的數(shù)學推理,被形式化為視覺問題答案(VQA)問題。在這個領域,視覺輸入使用 ResNet 或 Faster-RCNN 進行編碼,而文本表征則通過 GRU 或 LTSM 獲得。隨后,使用多模態(tài)融合模型學習聯(lián)合表征,如 BAN、FiLM 和 DAFA。
其他深度神經(jīng)網(wǎng)絡結(jié)構(gòu)也可用于數(shù)學推理。Zhang et al. 利用圖譜神經(jīng)網(wǎng)絡(GNN)在空間推理中的成功,將其用于幾何問題。由于能夠解決縱向時間序列數(shù)據(jù),WaveNet 被應用于定理證明。此外,在 DDT 中生成數(shù)學方程方面,Transformer 被發(fā)現(xiàn)優(yōu)于 GRU。以及,MathDQN 是第一個探索解決數(shù)學應用題的強化學習工作,主要利用其強大的搜索能力。
用于數(shù)學推理的預訓練語言模型
預訓練的語言模型已經(jīng)在廣泛的 NLP 任務上表現(xiàn)出顯著的性能提升,同樣應用于數(shù)學相關的問題,此前的工作表明,預訓練語言模型在解答應用題上有很好的表現(xiàn),協(xié)助進行定理證明以及其他數(shù)學任務。然而,將其用于數(shù)學推理卻存在若干挑戰(zhàn)。
首先,預訓練語言模型不是專門針對數(shù)學數(shù)據(jù)的訓練。這可能導致它們在數(shù)學相關任務中的熟練程度低于自然語言任務。與文本數(shù)據(jù)相比,可用于大規(guī)模預訓練的數(shù)學或科學數(shù)據(jù)也較少。
其次,預訓練模型的規(guī)模持續(xù)增長,使得為特定的下游任務從頭開始訓練整個模型的成本很高。
此外,下游任務可能會處理不同的輸入格式或模態(tài),如結(jié)構(gòu)化表格或圖表。為了應對這些挑戰(zhàn),研究者必須通過在下游任務上對預訓練模型進行微調(diào)或調(diào)整神經(jīng)架構(gòu)。
最后,盡管預訓練的語言模型可以編碼大量的語言信息,但僅從語言建模的目標來看,模型可能很難學習數(shù)字表示或高級推理技能??紤]到這一點,最近有研究調(diào)查了從基礎知識開始的課程對數(shù)學相關技能的注入。
數(shù)學的自監(jiān)督學習
下表 4 提供了一個預訓練了數(shù)學推理的自監(jiān)督任務的語言模型列表。
特定任務的數(shù)學微調(diào)
當沒有足夠的數(shù)據(jù)來從頭訓練大型模型時,特定任務的微調(diào)也是一種常見的做法。如表 5 所示,現(xiàn)有的工作嘗試了在各種下游任務上對預訓練語言模型進行微調(diào)。
除了對模型參數(shù)進行微調(diào),很多工作還使用預訓練語言模型作為編碼器,將其與其他模塊組合起來完成下游任務,例如,IconQA 提出將 ResNet 和 BERT 分別用于圖表識別和文本理解。
數(shù)學推理中的上下文學習
一個上下文的樣本通常包含一個輸入 - 輸出對和一些 prompt 詞,例如,請從列表中選擇最大的數(shù)字。
輸出:8。
少樣本學習會給出多個樣本,然后模型在最后一個輸入樣本時預測輸出。然而這種標準的少樣本 prompting,即在 test-time 樣本前給大型語言模型提供輸入 - 輸出對的上下文樣本,還沒有被證明足以在數(shù)學推理等挑戰(zhàn)性任務上取得良好表現(xiàn)。
思維鏈(Chain-of-thought prompting,CoT)利用中間的自然語言解釋作為 prompt,使大型語言模型首先生成推理鏈,然后預測一個輸入問題的答案。例如,一個解決應用題的 CoT prompt 可以是
Kojima et al.(2022)提出,為模型提供「讓我們一步一步地思考!(Let’s think step by step!)」的 prompt 會讓大型語言模型成為良好的零樣本推理器。除此之外,近期的大部分工作都集中在如何在零樣本推理的設置下改進思維鏈推理。這類工作主要分為兩部分:(i)選擇更好的上下文樣本和(ii)創(chuàng)造更好的推理鏈。
上下文樣本選擇
早期的思維鏈工作是隨機地或啟發(fā)式地選擇上下文樣本。最近的研究卻表明,在不同的上下文例子選擇中,這種類型的少樣本學習可能是非常不穩(wěn)定的。因此,哪些上下文的推理樣本能做出最高效的 prompt,在學術(shù)上仍是一個未知的問題。
為了解決這個局限,最近的一些工作研究了各種方法來優(yōu)化上下文樣本的選擇過程。例如,Rubin et al.(2022)試圖通過檢索語義相似的樣本來解決這個問題。然而,這種方法在數(shù)學推理問題上效果不佳,而且如果包含結(jié)構(gòu)化信息(如表格)就很難衡量相似性。此外,F(xiàn)u et al.(2022)提出了基于復雜性的 prompt,選擇具有復雜推理鏈的樣本(即具有更多推理步驟的鏈)作為 prompt。Lu et al.(2022b)提出了一種通過強化學習來選擇上下文樣本的方法。具體來說,智能體學習從候選池中找到最佳的上下文樣本,目的是在與 GPT-3 環(huán)境互動時,使給定的訓練樣本的預測獎勵最大化。此外,Zhang et al.(2022b)發(fā)現(xiàn)示例問題的多樣化也可以提高模型性能。他們提出了一個兩步法來構(gòu)建上下文中的示例問題:首先,將給定數(shù)據(jù)集的問題劃分為幾個群組;其次,從每個群組中選擇一個有代表性的問題,并使用具有簡單啟發(fā)式的零樣本思維鏈生成其推理鏈。
高質(zhì)量推理鏈
早期的思維鏈工作主要依靠單一的人類注釋推理鏈作為 prompt。然而,人工創(chuàng)建推理鏈有兩個缺點:首先,隨著任務變得越來越復雜,目前的模型可能不足以學會執(zhí)行所有必要的推理步驟,而且不能輕易推廣到不同的任務;其次,單一的解碼過程很容易受到錯誤推理步驟的影響,導致最終的答案是不正確的預測。為了解決這個限制,最近的研究主要集中在兩個方面:(i)手工制作更復雜的示例,稱為基于過程的方法;(ii)利用類似集合的方法,稱為基于結(jié)果的方法。
在評估現(xiàn)有的基準和方法之后,作者還討論了這一領域的未來研究方向。更多研究細節(jié),可參考原論文。
關鍵詞: 語言模型 神經(jīng)網(wǎng)絡 學習方法