精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

求一種基于結(jié)構(gòu)統(tǒng)一M叉編碼樹的求解器解決方案

深度學(xué)習(xí)自然語言處理 ? 來源:南大NLP ? 作者:王斌 ? 2022-11-12 10:25 ? 次閱讀

01

研究動機(jī)

數(shù)學(xué)問題(英文叫Math Word Problem,簡稱MWP)的求解要求給定一段描述文本,其中包含對于若干已知變量和一個未知變量的描述,要求利用變量間的數(shù)值關(guān)系來推理計(jì)算出未知變量的準(zhǔn)確數(shù)值。

一個具體的例子如下圖1所示,可以發(fā)現(xiàn)一個數(shù)學(xué)問題可能對應(yīng)著多個正確的表達(dá)式或二叉樹,有著非確定性的輸出空間,而目前主流方法輸入問題文本序列來學(xué)習(xí)特定單個表達(dá)式序列或二叉樹的生成,使得模型所學(xué)到的知識不完整,并需要大量數(shù)據(jù)來提升性能,限制了模型在低資源場景下的表現(xiàn)。

e62705a4-622e-11ed-8abf-dac502259ad0.png

圖1: MWP問題示例

對于MWP的輸出多樣性,分析原因如下:

1、計(jì)算順序的不確定性:a)運(yùn)算之間常擁有相同的計(jì)算優(yōu)先級。如n1 + n2 + n3 ? n4 中的三個運(yùn)算符優(yōu)先級一樣,可以等價(jià)轉(zhuǎn)換為不同的序列或二叉樹;b)數(shù)學(xué)表達(dá)式中括號的使用給計(jì)算順序也帶來了不確定性。如n1 + n2 ? n3, n1 ? (n3 ? n2) 和 (n1+n2)?n3都是等價(jià)的表達(dá);

2、運(yùn)算的可交換性帶來的不確定性:加法和乘法操作兩邊的算子可以進(jìn)行交換且不影響計(jì)算邏輯與最終結(jié)果,使得輸出的結(jié)構(gòu)具有多樣性的表達(dá),如n1 + n2 × n3可以轉(zhuǎn)換為n1+n3×n2,n2×n3+n1等;

為了解決由多樣性給問題求解帶來的挑戰(zhàn),我們提出了基于結(jié)構(gòu)統(tǒng)一M叉編碼樹的數(shù)學(xué)問題求解器。針對第一點(diǎn)原因,在二叉樹的結(jié)構(gòu)基礎(chǔ)上,我們設(shè)計(jì)了擁有任意分支數(shù)量的M-tree,在豎直方向上對樹的結(jié)構(gòu)進(jìn)行統(tǒng)一;針對第二點(diǎn),我們在M-tree中重新定義了新的M元運(yùn)算,使得所有的運(yùn)算都滿足可交換性,將只在子節(jié)點(diǎn)左右順序不一樣的兩棵M-tree視為相同的結(jié)構(gòu),從而在水平方向?qū)涞慕Y(jié)構(gòu)進(jìn)行統(tǒng)一。

而為了學(xué)習(xí)輸出M-tree,我們放棄了進(jìn)行自上而下且從左到右的自回歸式生成方法,因?yàn)樵摲椒ú荒鼙苊庥捎谧庸?jié)點(diǎn)左右順序的變化而帶來的輸出(one by one)多樣性。我們首先對M-tree進(jìn)行編碼,將其轉(zhuǎn)換為M-tree codes形式的等價(jià)表達(dá),用于保存M-tree的結(jié)構(gòu)信息,其中每個code對應(yīng)M-tree中的一個葉子節(jié)點(diǎn),保存從根節(jié)點(diǎn)到葉子節(jié)點(diǎn)的路徑以及葉子節(jié)點(diǎn)本身的信息。

通過一個sequence to code(seq2code)模型學(xué)習(xí)從輸入問題文本序列到每個code的映射,以非自回歸的方式生成輸出。

02

貢獻(xiàn)

1、我們分析了MWP中輸出多樣性的原因,創(chuàng)新地設(shè)計(jì)了一個基于M樹的方案來統(tǒng)一輸出結(jié)構(gòu);

2、我們設(shè)計(jì)了M-tree codes來等價(jià)表示M-tree,并提出了一個seq2code模型來以非自回歸的方式生成codes,據(jù)我們所知這是第一個利用M-tree codes和seq2code來分析求解MWP的工作;

3、在廣泛使用的Math23K和MAWPS數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,SUMC-Solver在同等實(shí)驗(yàn)設(shè)置下優(yōu)于以前的方法。尤其是在低資源的情況下,我們的求解器取得了更好的性能表現(xiàn)。

03

解決方案

方法的整體示例及模型框架如下圖2所示,下面介紹M-tree,M-tree codes和seq2code模型的設(shè)計(jì)。

M-tree的設(shè)計(jì):M-tree具有兩種節(jié)點(diǎn)——內(nèi)部節(jié)點(diǎn)和葉子節(jié)點(diǎn),其中內(nèi)部節(jié)點(diǎn)擁有任意M個子分支(M>=1)且對應(yīng)四種M元運(yùn)算:{ +,x,x-,+/ },這四種M元運(yùn)算都具有可交換性,葉子節(jié)點(diǎn)有四種:{原始數(shù)值v,v的負(fù)數(shù),v的倒數(shù),v的倒數(shù)的相反數(shù)};定義M-tree的根節(jié)點(diǎn)為+類型節(jié)點(diǎn),任何兩棵僅在子節(jié)點(diǎn)左右順序不一樣的M-tree會被視為同一顆。

M-tree codes的設(shè)計(jì):由于M-tree中的內(nèi)部節(jié)點(diǎn)可以擁有任意數(shù)量的子分支,且兄弟節(jié)點(diǎn)在結(jié)構(gòu)上的位置是等價(jià)的,所以基于自回歸式的生成不能避免由于兄弟節(jié)點(diǎn)的順序在輸出端造成的多樣性。為了解決這一難題,我們將M-tree的結(jié)構(gòu)信息編碼到每個葉子節(jié)點(diǎn)中,在M-tree和葉子節(jié)點(diǎn)的codes集合之間形成一個映射,這樣模型就能以非自回歸的方式生成codes。

具體而言,每個葉子節(jié)點(diǎn)的M-tree code由兩部分組成:一部分保存數(shù)值信息,會使用兩個二進(jìn)制位來區(qū)分?jǐn)?shù)值的四種形式,另一部分由根節(jié)點(diǎn)到當(dāng)前葉子節(jié)點(diǎn)的路徑信息構(gòu)成。

seq2code模型框架:為了驗(yàn)證M-tree和M-tree codes的先進(jìn)性,我們設(shè)計(jì)了一個簡單的seq2code模型來求解MWP,它將問題文本序列作為其輸入,然后輸出問題中數(shù)值的相應(yīng)code(以向量表示)。在結(jié)合所有的codes以恢復(fù)M-tree之后,我們可以計(jì)算出問題的最終答案。整個模型由兩部分組成:問題編碼器和code生成器。a)問題編碼器將MWP的單詞轉(zhuǎn)化為向量表示,我們的實(shí)驗(yàn)中編碼器有兩種選擇:循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)編碼器或預(yù)訓(xùn)練語言模型(PLM)編碼器;b)我們使用了一個簡單的三層前饋神經(jīng)網(wǎng)絡(luò)(FFNN)來作為生成器。

e64824a0-622e-11ed-8abf-dac502259ad0.png圖2:?SUMC-Solver問題求解示例與模型框架

04

實(shí)驗(yàn)

實(shí)驗(yàn)結(jié)果展示在表1中。SUMC-Solver在兩個MWP數(shù)據(jù)集上的表現(xiàn)優(yōu)于所有的基準(zhǔn)模型。當(dāng)使用RNN編碼器時(shí),SUMC-Solver的準(zhǔn)確率比學(xué)習(xí)表達(dá)式序列輸出的StackDecoder和T-RNN 高約9-10%。相比學(xué)習(xí)二叉樹輸出的方法,SUMC-Solver也取得了比GTS、SAU-Solver和Graph2Tree更好的結(jié)果,盡管這些方法使用了精心設(shè)計(jì)的樹解碼器或豐富輸入表示的圖編碼器。

當(dāng)使用預(yù)訓(xùn)練語言模型(PLM)作為編碼器時(shí),SUMC-Solver達(dá)到了82.5%的準(zhǔn)確率,比GTS-PLM和UniLM-Solver有了明顯的提高(分別為3%和5%)??傊?,上述兩種不同編碼器設(shè)置下的結(jié)果都表明,M-tree和M-tree codes的設(shè)計(jì)是合理和先進(jìn)的,這使得我們只用一個簡單的seq2code模型就可以達(dá)到更好的性能。

表1:各模型在基準(zhǔn)數(shù)據(jù)集上的性能對比

e673bac0-622e-11ed-8abf-dac502259ad0.png

表1中在Math23K數(shù)據(jù)集上展示的是在公共測試集上的結(jié)果,在MAWPS*上展示的是5折交叉驗(yàn)證的結(jié)果,帶 ? 的結(jié)果是由我們復(fù)現(xiàn)得到的。

MWP的人工標(biāo)注成本很高,因此提升該模型在低資源場景下的表現(xiàn)是有必要的。我們用不同數(shù)據(jù)規(guī)模的訓(xùn)練集來評估GTS、SAU-Solver和Graph2Tree的性能。測試集統(tǒng)一包含2,312個隨機(jī)抽樣的實(shí)例。詳細(xì)的結(jié)果可以在圖3中找到。可以看出,無論訓(xùn)練集的大小如何,SUMC-Solver的性能始終優(yōu)于其他模型。

首先,當(dāng)訓(xùn)練集的規(guī)模小于6000時(shí),SAU-Slover的性能優(yōu)于GTS;當(dāng)數(shù)量超過6000時(shí),這兩個模型的性能相似。就整體性能而言,在資源受限的情況下,SAU-Solver和Graph2Tree的結(jié)果比GTS的好。其次,在6000個樣本的訓(xùn)練集下,SUMC-Solver和其他模型之間出現(xiàn)了最明顯的性能差距,我們的模型在準(zhǔn)確率上大約提升了5%。這表明SUMC-Solver在低資源情況下具有突出的優(yōu)勢。

e6a92b24-622e-11ed-8abf-dac502259ad0.png

圖3:低資源場景下的模型性能對比

此外,我們根據(jù)問題計(jì)算答案所需的操作數(shù)(問題中的某些數(shù)值)將測試集(2,312個隨機(jī)抽樣的實(shí)例)分為不同的等級,并在不同等級的數(shù)據(jù)上對比模型性能。詳細(xì)情況可見圖4。從結(jié)果中,我們可以看到,大多數(shù)的MWP需要2到4個操作數(shù),而SUMC-Slover在需要更多操作數(shù)的數(shù)據(jù)上表現(xiàn)得比基準(zhǔn)模型更好,這表明我們的求解器有潛力解決更復(fù)雜的問題。

e6cb7422-622e-11ed-8abf-dac502259ad0.png

圖4:不同模型在需要不同操作數(shù)的測試數(shù)據(jù)上正確回答問題數(shù)量的對比

最后,seq2code框架也可以應(yīng)用于二叉樹結(jié)構(gòu),例如可為每個MWP選擇一個二叉樹結(jié)構(gòu)的輸出,并以同樣的方法將其轉(zhuǎn)換為codes。我們對Math23K的訓(xùn)練集數(shù)據(jù)進(jìn)行了轉(zhuǎn)換,并對二叉樹codes和M-tree codes進(jìn)行了比較,結(jié)果如下表2所示??梢钥闯觯瑧?yīng)用M-tree可以大大減少codes集合的大小,并保證得到的codes能夠覆蓋測試集,這說明M-tree對統(tǒng)一輸出結(jié)構(gòu)的效果非常明顯。

表2:二叉樹與M-tree編碼對比

e6f063f4-622e-11ed-8abf-dac502259ad0.png

05

總結(jié)

針對數(shù)學(xué)問題求解的輸出多樣性,我們提出了SUMC-Slover求解器,其應(yīng)用M-tree來統(tǒng)一多樣化的輸出,以及seq2code模型來學(xué)習(xí)M-tree。在廣泛使用的MAWPS和Math23K數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,SUMC-Solver在類似的設(shè)置下優(yōu)于目前一些最先進(jìn)的方法,并且在低資源場景下有著更好的表現(xiàn)。





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 編碼器
    +關(guān)注

    關(guān)注

    45

    文章

    3601

    瀏覽量

    134201
  • PLM
    PLM
    +關(guān)注

    關(guān)注

    2

    文章

    114

    瀏覽量

    20846
  • 求解器
    +關(guān)注

    關(guān)注

    0

    文章

    77

    瀏覽量

    4516

原文標(biāo)題:EMNLP'22 | 基于結(jié)構(gòu)統(tǒng)一M叉編碼樹的數(shù)學(xué)問題求解器

文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    一種基于ZigBee的駕駛輔助系統(tǒng)解決方案

    一種基于ZigBee的駕駛輔助系統(tǒng)解決方案
    發(fā)表于 05-14 06:22

    一種射頻開關(guān)的解決方案

    一種射頻開關(guān)的解決方案
    發(fā)表于 05-21 06:46

    一種NXP最新的NFC電子錢包解決方案

    NFC電子錢包總體結(jié)構(gòu)是怎樣構(gòu)成的?一種NXP最新的NFC電子錢包解決方案
    發(fā)表于 05-24 06:44

    一種基于ARM Cortex-M處理的音頻解決方案

    一種基于ARM Cortex-M處理的音頻解決方案
    發(fā)表于 06-01 06:32

    一種LCD和LED沖突的解決方案

    一種LCD和LED沖突的解決方案
    發(fā)表于 01-25 07:12

    一種求解關(guān)鍵路徑的新算法

    通過定義節(jié)點(diǎn)編碼圖概念,提出一種不需要拓?fù)渑判虻?b class='flag-5'>求解關(guān)鍵路徑的新算法。該算法擴(kuò)充圖的鄰接表的存儲結(jié)構(gòu),使圖的存儲與算法求解過程共享同
    發(fā)表于 04-23 10:29 ?7次下載

    基于四的分形圖像編碼中的剖分決策函數(shù)

    基于四的分形圖像編碼中的剖分決策函數(shù) 為了得到可變的位率,在分形圖像壓縮中經(jīng)常采用四分割方法。該文提出了
    發(fā)表于 02-22 14:20 ?18次下載

    基于HBase的四Hilbert索引設(shè)計(jì)

    隨著遙感技術(shù)的發(fā)展,遙感數(shù)據(jù)的類型和量級發(fā)生了巨大變化,對于傳統(tǒng)的存儲方法產(chǎn)生了挑戰(zhàn)。針對HBase中海量地形數(shù)據(jù)管理效率不高的問題,提出一種- Hilbert相結(jié)合的索引設(shè)計(jì)方法。首先,對傳
    發(fā)表于 01-07 10:01 ?1次下載
    基于HBase的四<b class='flag-5'>叉</b><b class='flag-5'>樹</b>Hilbert索引設(shè)計(jì)

    4中二叉樹的遍歷方式介紹

    對于一種數(shù)據(jù)結(jié)構(gòu)而言,遍歷是常見操作。二叉樹一種基本的數(shù)據(jù)結(jié)構(gòu),是一種每個節(jié)點(diǎn)的兒子數(shù)目都不多于2的
    的頭像 發(fā)表于 04-27 17:23 ?4740次閱讀
    4中二<b class='flag-5'>叉樹</b>的遍歷方式介紹

    叉樹,一種基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)類型

    然后我們再定義棵深度也為 3 的二叉樹,該二叉樹的 n 個結(jié)點(diǎn)(n≤7),當(dāng)從 1 到 n 的每個結(jié)點(diǎn)都與上圖中的編號結(jié)點(diǎn)一一對應(yīng)時(shí),這二叉樹就稱為完全二
    的頭像 發(fā)表于 04-13 10:48 ?4299次閱讀
    二<b class='flag-5'>叉樹</b>,<b class='flag-5'>一種</b>基礎(chǔ)的數(shù)據(jù)<b class='flag-5'>結(jié)構(gòu)</b>類型

    詳解電源二叉樹到底是什么

    作為數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ),分很多種,像 AVL 、紅黑、二搜索....今天我想分享的是關(guān)于二
    的頭像 發(fā)表于 06-06 15:05 ?9963次閱讀
    詳解電源二<b class='flag-5'>叉樹</b>到底是什么

    基于三鏈表的編譯中間結(jié)構(gòu)的設(shè)計(jì)方案研究

    基于樹形結(jié)構(gòu)的中間結(jié)構(gòu)是現(xiàn)今大多數(shù)編譯中間結(jié)構(gòu)的主流設(shè)計(jì)方案,比如GCC、LCC、TCC等均使用二叉樹
    的頭像 發(fā)表于 05-14 09:13 ?3512次閱讀
    基于三<b class='flag-5'>叉</b><b class='flag-5'>樹</b>鏈表的編譯<b class='flag-5'>器</b>中間<b class='flag-5'>結(jié)構(gòu)</b>的設(shè)計(jì)<b class='flag-5'>方案</b>研究

    紅黑(Red Black Tree)是一種自平衡的二搜索

    平衡(Balance):就是當(dāng)結(jié)點(diǎn)數(shù)量固定時(shí),左右子樹的高度越接近,這棵二叉樹越平衡(高度越低)。而最理想的平衡就是完全二叉樹/滿二叉樹,高度最小的二叉樹
    的頭像 發(fā)表于 07-01 15:05 ?5640次閱讀
    紅黑<b class='flag-5'>樹</b>(Red Black Tree)是<b class='flag-5'>一種</b>自平衡的二<b class='flag-5'>叉</b>搜索<b class='flag-5'>樹</b>

    叉樹操作的相關(guān)知識和代碼詳解

    是數(shù)據(jù)結(jié)構(gòu)中的重中之重,尤其以各類二叉樹為學(xué)習(xí)的難點(diǎn)。在面試環(huán)節(jié)中,二叉樹也是必考的模塊。本文主要講二叉樹操作的相關(guān)知識,梳理面試常考的內(nèi)
    的頭像 發(fā)表于 12-12 11:04 ?2022次閱讀
    二<b class='flag-5'>叉樹</b>操作的相關(guān)知識和代碼詳解

    C語言數(shù)據(jù)結(jié)構(gòu):什么是二叉樹

    完全二叉樹:完全二叉樹是效率很高的數(shù)據(jù)結(jié)構(gòu)。對于深度為K,有n個節(jié)點(diǎn)的二叉樹,當(dāng)且僅當(dāng)每個節(jié)點(diǎn)都與深度為K的滿二
    的頭像 發(fā)表于 04-21 16:20 ?2477次閱讀