AAAI 2021 | 基于动态混合关系网络的对话式语义解析方法
作者|惠彬原,耿瑞瑩,黎檳華,李永彬,孫健
單位|阿里巴巴達(dá)摩院Conversational AI團(tuán)隊
引言
機(jī)器可以自己寫 SQL 語句嗎?當(dāng)然可以~只需要用自然語言描述你的想法即可,甚至還能進(jìn)行多輪的交互!
語義解析(Semantic Parsing)是自然語言處理中的一個非常基礎(chǔ)且重要的問題。近些年來,語言解析中的 Text-to-SQL 任務(wù)引起了學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注,該任務(wù)的目的是將自然語言轉(zhuǎn)換為可執(zhí)行的 SQL 語句,幫助用戶僅使用自然語言便可完成和數(shù)據(jù)庫的交互。
利用 Text-to-SQL 技術(shù)可以實(shí)現(xiàn)很多應(yīng)用,比如對話式(上下文相關(guān))語義解析 (Context-Dependent Semantic Parsing) ,數(shù)據(jù)庫作為對話系統(tǒng)中的「知識」來源,將用戶的每一個問題轉(zhuǎn)換為對應(yīng)的 SQL 語句,通過復(fù)雜的多輪問答,進(jìn)而實(shí)現(xiàn)任務(wù)型對話。如下圖所示,用戶通過多輪的詢問與數(shù)據(jù)庫進(jìn)行信息的交換,最終得到期望的回答。
▲ 圖1. 對話式 Text-to-SQL 任務(wù)
針對這項任務(wù),耶魯大學(xué)聯(lián)合 Saleforce 分別于 ACL 2019 和 EMNLP 2019 提出了兩個公開的 Benchmark,SParC [1] 和 CoSQL [2],這兩個數(shù)據(jù)集有如下共同特點(diǎn):
1. 跨領(lǐng)域:每個數(shù)據(jù)庫都屬于不同的領(lǐng)域,這對模型的泛化性提出了嚴(yán)格的要求;
2. 上下文依賴:在對話系統(tǒng)中存在的多輪指代、省略等問題都需要進(jìn)行建模;
3. 復(fù)雜 SQL:最終生成的 SQL 復(fù)雜性較高,譬如需要多表聯(lián)合查詢等。
本文提出了一種新的框架,稱之為動態(tài)上下文模式圖(Dynamic Contextualized Schema Graph),該框架基于動態(tài)進(jìn)化圖的結(jié)構(gòu),有效的刻畫了多輪場景下的話術(shù) (utterance),數(shù)據(jù)庫模式(schema),以及他們之間復(fù)雜的交互 (linking)。
在該框架中,我們討論了基于混合關(guān)系構(gòu)建邊的方式并提出了記憶遺忘的機(jī)制來整合歸納偏置,最終呈現(xiàn)出一個靈活的過程來描述不同層次的上下文。實(shí)驗層面,我們在 SParC 和 CoSQL 上面驗證了模型的性能,在投稿時達(dá)到了 SOTA 的結(jié)果,在榜單上排名第一。
論文標(biāo)題:
Dynamic?Hybrid Relation Network for Cross-Domain Context-Dependent Semantic Parsing
收錄會議:
AAAI 2021
論文鏈接:
https://arxiv.org/abs/2101.01686
代碼鏈接:
https://github.com/huybery/r2sql
對話式語義解析的兩個挑戰(zhàn)
首先我們需要先思考對話式解析模型需要具備哪些能力?首先模型需要能夠處理來自任意領(lǐng)域的數(shù)據(jù)庫信息,比如金融、政務(wù)、酒旅等行業(yè)數(shù)據(jù)。所以模型面臨的第一個挑戰(zhàn):如何處理跨領(lǐng)域問題?對于任意垂域都能夠完成 SQL 生成。
其次,在對話場景中,用戶是通過多輪的查詢實(shí)現(xiàn)最終的目的,處理當(dāng)前的 SQL 生成可能需要依賴歷史的信息,其中大量的指代、省略問題需要被關(guān)注。同時,在對話流不斷增長的過程中,用戶關(guān)心的焦點(diǎn)也可能發(fā)生偏移,這引出了第二個挑戰(zhàn),如何準(zhǔn)確的理解和利用上下文?
下面我們從這兩個方面分別具體的介紹其中的難點(diǎn)。
2.1 跨領(lǐng)域問題
首先是 Text-to-SQL 的跨領(lǐng)域問題,主流的思路是直接建立自然語言和數(shù)據(jù)庫中?列、表、值的連接,研究者將其稱為 Schema linking。如圖 2 所示,模型需要能夠?qū)⒆匀徽Z言中出現(xiàn)的實(shí)體和數(shù)據(jù)庫模式中的信息進(jìn)行對齊,最終生成正確的 SQL 結(jié)果。
▲ 圖2. Schema Linking [3]
我們通過分析 SParC 中驗證集的 bad case,發(fā)現(xiàn)很多樣本都是因為命中了錯誤了表名或列名導(dǎo)致生成的錯誤,所以 Schema linking 的效果將直接影響 SQL 的生成。
過往的上下文依賴的方法,包括 CD-Seq2Seq [1],EditSQL [4] 等,都是基于 Cross attention 機(jī)制來完成 linking,我們將這種僅僅憑借 Cross attention 方式構(gòu)建 linking 的結(jié)果成為隱式關(guān)系,這種方法對于很多表面特征捕捉較差,比如 n-gram 匹配等。
而 RAT-SQL [3] 提出了一種可以融入規(guī)則先驗的 self-attention 結(jié)構(gòu),能夠有效的捕捉表面特征。盡管 RAT 的結(jié)構(gòu)聲稱可以同時處理 hard 和 soft 的關(guān)系,但是我們發(fā)現(xiàn)這種結(jié)構(gòu)還是更容易偏向 hard 的關(guān)系,所以我們將 RAT 歸類為顯式關(guān)系。隱式關(guān)系和顯式關(guān)系各有優(yōu)勢,所以一個難點(diǎn)在于能否有一個統(tǒng)一的框架同時兼顧不同類型的關(guān)系探索?
2.2 上下文建模
在對話式的 Text-to-SQL 任務(wù)中,如何進(jìn)行上下文的建模也是亟需解決的問題。過去的工作主要是圍繞話術(shù) (utterance)層面的上下文,如圖 3 展示很多在 utterance 層面上下文建模的方法。
▲ 圖3. 上下文建模思路[5]
而其實(shí)在這個任務(wù)中,除了 utterance 層面的上下文外,沒有工作關(guān)注 linking 層面的上下文建模,即在用戶不斷詢問的過程中,用戶聚焦的意圖可能會發(fā)生變化,所以如何處理 linking 層面的變化也是一個新的挑戰(zhàn)。那么第二個難點(diǎn)在于能否有一個統(tǒng)一的框架同時兼顧 utterance 和 linking 層面的上下文建模?
提出的模型
首先我們形式化對話式 Text-to-SQL 任務(wù),該任務(wù)由不同領(lǐng)域的對話數(shù)據(jù)組成,目的是將對話流程中的自然語言話術(shù)轉(zhuǎn)為對應(yīng)的 SQL 語句。假設(shè) 是所有對話流程的集合,一個會話過程 由一系列的話術(shù) 和其對應(yīng)的 SQL 語句 組成,其中 為會話的長度。
每一次會話都可能基于多張表且屬于不同的領(lǐng)域設(shè)定,其涉及到的數(shù)據(jù)庫模式可以表達(dá)為 ,包含一系列的表名和列名等。給定當(dāng)前的話術(shù) 、歷史話術(shù) ,以及涉及的數(shù)據(jù)庫模式 來預(yù)測對應(yīng)的 SQL 語句 。
3.1 編碼器
首先我們需要將話術(shù)和數(shù)據(jù)庫模式進(jìn)行編碼,這里我們采用 BERT 的得到輸入的表征:
得到表征后,我們又設(shè)計了任務(wù)相關(guān)的編碼器來提升表征性能,針對多輪的話術(shù),我們首先利用 utterance-level 的 Bi-LSTM 得到每一個話術(shù)的隱向量:
然后利用流行的 interaction-level 的編碼器得到上下文向量:
最終利用這個上下文向量來豐富話術(shù)編碼:
上述流程與圖 3 (b) 的基于 turn 上下文建模的方式一致。除了話術(shù)外,我們還需要對數(shù)據(jù)庫模式中的表名列名進(jìn)行編碼,這里是利用獨(dú)立的 Bi-LSTM 進(jìn)行編碼:
3.2 動態(tài)上下文模式圖
▲ 圖4. 動態(tài)上下文模式圖
針對之前提到的兩個難點(diǎn),我們提出了一種基于動態(tài)上下文模式圖的框架,聯(lián)合的學(xué)習(xí)話術(shù)(utterance)、數(shù)據(jù)庫模式(schema)和其之間復(fù)雜交互(linking)的表征。在第 輪的時刻,當(dāng)前的話術(shù) 和其相關(guān)的 schema ,我們定義出 Graph 的結(jié)構(gòu) ,其中 graph 的節(jié)點(diǎn)為話術(shù)中的 token 和數(shù)據(jù)庫模式中的元素(表/列)組成,而邊可以定義為數(shù)據(jù)庫模式內(nèi)部的關(guān)系,比如外鍵;
以及 token 和 schema 之間的交互關(guān)系,即 linking, 我們同時結(jié)合了隱式和顯式的關(guān)系建立方式,稱之為混合關(guān)系。如圖 4 所示,隨著輪次的增多,藍(lán)色節(jié)點(diǎn)(token of utterance)不斷的增多,并且不斷和綠色節(jié)點(diǎn)(schema)產(chǎn)生新的交互(linking),整個對話流程可以看做是一個動態(tài)進(jìn)化 graph 的范式。
如圖 4 所示,隨著輪次的增多,藍(lán)色節(jié)點(diǎn)(token of utterance)不斷的增多,并且不斷和綠色節(jié)點(diǎn)(schema)產(chǎn)生新的交互(linking),整個對話流程可以看做是一個動態(tài)進(jìn)化 graph 的范式。
那么在這個動態(tài)圖的過程中,模型在編碼器層面已經(jīng)關(guān)注到了 utterance 上下文的信息,那么對于 linking 的上下文信息如何處理呢?用戶聚焦的意圖經(jīng)常會發(fā)生偏移,所以模型應(yīng)該更關(guān)心當(dāng)前問句下的 linking 信息,而對于較早的 linking 信息應(yīng)該適度的「衰減」,所以我們需要模仿人類的交談,引入記憶衰減的方式來歸納偏置。特別的,我們提供了幾種針對 linking 的不同衰減方式。
首先從話術(shù)粒度的層面考慮,我們可以引入 token-level 的遺忘和 utterance-level 的遺忘;而在遺忘方法的層面,我們首先可以想到的是引入門控機(jī)制,讓網(wǎng)絡(luò)自己去學(xué)習(xí)不同 token/utterance 的權(quán)重,這種方式盡管有一定的提升,但是引入了額外的參數(shù)而且缺乏顯示的約束,容易引入噪聲導(dǎo)致訓(xùn)練的不穩(wěn)定。
所以我們開始考慮能不能引入一些函數(shù),直接來計算衰減的權(quán)重?這里我們利用了 Schedule sampling [6] 中的三種衰減函數(shù)進(jìn)行實(shí)驗,分別是:
得到衰減權(quán)重后,我們可以分別在隱式和顯式 linking 的計算過程中引入。
針對隱式關(guān)系:
我們稱之為?DCRI(Dynamic Context Representation over Implicit Relations)。
針對顯式關(guān)系:
我們稱之為?DCRE(Dynamic Context Representation over Explicit Relations)。
最終我們將 DCRI、DCRE 以及解碼器輸入的表征進(jìn)行融合,同時結(jié)合隱式和顯式關(guān)系,得到擁有豐富上下文 linking 信息的表征輸出。解碼器部分我們沿用了 EditSQL [4] 的方案。
實(shí)驗結(jié)果
我們在兩個大規(guī)模的跨領(lǐng)域上下文相關(guān)的 benchmark,SParC 和 CoSQL 上評估模型的效果。這兩個數(shù)據(jù)集擁有 138 個領(lǐng)域下的 200 個復(fù)雜的數(shù)據(jù)庫,以及上萬條的問題話術(shù)。該任務(wù)有兩種評測方式,分別是評測單輪的 Question Match 和評測多輪的 Interaction Match。如下表所示,我們在驗證集上對比了一系列先進(jìn)的方法,展示出動態(tài)混合關(guān)系網(wǎng)絡(luò)的優(yōu)勢。
我們還將模型提交到了官方的測試集榜單中,截至投稿時,我們的方法達(dá)到榜首:
除此之外,我們還執(zhí)行了一系列的消融實(shí)驗:針對 DCRI 和 DCRE,我們發(fā)現(xiàn)盡管顯式關(guān)系更具可解釋性,但隱式關(guān)系對于最終的結(jié)果同樣有增益,證明了混合關(guān)系的重要性。
在衰減函數(shù)的作用下,DCRE 呈現(xiàn)漸變的趨勢,更關(guān)注附近輪次的信息,減少歷史輪次的干擾。
我們還分析一些樣例,發(fā)現(xiàn)我們的模型在指示代詞、所有格限定、回指以及操作符等情況下相比之前的模型有較好的改進(jìn)。
還能做什么?
linking 的路仍然很長。目前的 linking 是數(shù)據(jù)或規(guī)則驅(qū)動的,這造成了模型缺乏一些真實(shí)世界的常識,比如模型很難理解 「republics」是一種政府的形式,導(dǎo)致無法和 「country.governmentform」進(jìn)行 linking,而這個信息對于 SQL 的生成至關(guān)重要。所以如何引入外部知識解決這些問題是一個重要的方向。
模型效率。當(dāng)前的模型主要還是基于 seq2seq 架構(gòu),其中很多組件無論是訓(xùn)練還是推理都非常耗時,無法滿足業(yè)務(wù)的線上要求,如何將模型更好的落地也非常值得探索。
針對對話式語義解析,我們團(tuán)隊還在不斷的攻堅,請大家期待我們后續(xù)的工作~
結(jié)論
本文專注于跨領(lǐng)域的對話式 Text-to-SQL 任務(wù),我們提出動態(tài)上下文模式圖的框架,聯(lián)合的學(xué)習(xí)話術(shù)(utterance)、數(shù)據(jù)庫模式(schema)和其之間復(fù)雜交互(linking)的表征。該框架整合了遺忘機(jī)制,從而引入歸納偏差來構(gòu)建豐富的上下文關(guān)系表示,為動態(tài)多場景中不同層次的上下文建模提供了一個靈活的框架。提出的模型在 SParC 和 CoSQL 數(shù)據(jù)集上取得了 SOTA 的結(jié)果。
最后打個小廣告~?阿里巴巴達(dá)摩院 Conversational AI 團(tuán)隊正在招聘自然語言理解和 Conversational Semantic Parsing 相關(guān)方向的 Research Intern,歡迎感興趣的同學(xué)聯(lián)系 binyuan.hby@alibaba-inc.com !
參考文獻(xiàn)
[1]? Yu T, Zhang R, Yasunaga M, et al. Sparc: Cross-domain Semantic Parsing in Context. ACL 2019.
[2] Yu T, Zhang R, Er H Y, et al. Cosql: A Conversational Text-to-sql Challenge Towards Cross-domain Natural Language Interfaces to Databases. EMNLP 2019.
[3] Wang B, Shin R, Liu X, et al. Rat-sql: Relation-aware Schema Encoding and Linking for Text-to-sql Parsers. ACL 2020.
[4] Zhang R, Yu T, Er H Y, et al. Editing-Based SQL Query Generation for Cross-Domain Context-Dependent Questions. EMNLP 2019
[5] Liu Q, Chen B, Guo J, et al. How Far are We from Effective Context Modeling? An Exploratory Study on Semantic Parsing in Context. IJCAI 2020.
[6] Bengio S, Vinyals O, Jaitly N, et al. Scheduled Sampling for Sequence Prediction with Recurrent Neural Networks. NIPS 2015.
更多閱讀
#投 稿?通 道#
?讓你的論文被更多人看到?
如何才能讓更多的優(yōu)質(zhì)內(nèi)容以更短路徑到達(dá)讀者群體,縮短讀者尋找優(yōu)質(zhì)內(nèi)容的成本呢?答案就是:你不認(rèn)識的人。
總有一些你不認(rèn)識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學(xué)者和學(xué)術(shù)靈感相互碰撞,迸發(fā)出更多的可能性。?
PaperWeekly 鼓勵高校實(shí)驗室或個人,在我們的平臺上分享各類優(yōu)質(zhì)內(nèi)容,可以是最新論文解讀,也可以是學(xué)習(xí)心得或技術(shù)干貨。我們的目的只有一個,讓知識真正流動起來。
?????來稿標(biāo)準(zhǔn):
? 稿件確系個人原創(chuàng)作品,來稿需注明作者個人信息(姓名+學(xué)校/工作單位+學(xué)歷/職位+研究方向)?
? 如果文章并非首發(fā),請在投稿時提醒并附上所有已發(fā)布鏈接?
? PaperWeekly 默認(rèn)每篇文章都是首發(fā),均會添加“原創(chuàng)”標(biāo)志
?????投稿郵箱:
? 投稿郵箱:hr@paperweekly.site?
? 所有文章配圖,請單獨(dú)在附件中發(fā)送?
? 請留下即時聯(lián)系方式(微信或手機(jī)),以便我們在編輯發(fā)布時和作者溝通
????
現(xiàn)在,在「知乎」也能找到我們了
進(jìn)入知乎首頁搜索「PaperWeekly」
點(diǎn)擊「關(guān)注」訂閱我們的專欄吧
關(guān)于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學(xué)術(shù)平臺。如果你研究或從事 AI 領(lǐng)域,歡迎在公眾號后臺點(diǎn)擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
總結(jié)
以上是生活随笔為你收集整理的AAAI 2021 | 基于动态混合关系网络的对话式语义解析方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: w10怎么加入局域网打印机共享打印机 如
- 下一篇: u盘插电脑上怎么播放不了怎么回事啊 U盘