登頂對(duì)話式語(yǔ)義解析國(guó)際權(quán)威榜單SParC和CoSQL,全新多輪對(duì)話表格知識(shí)預(yù)訓(xùn)練模型STAR解讀
阿里巴巴達(dá)摩院聯(lián)合中國(guó)科學(xué)院深圳先進(jìn)技術(shù)研究院提出面向多輪 Text-to-SQL 語(yǔ)義解析的 SQL 查詢(xún)語(yǔ)句導(dǎo)向型預(yù)訓(xùn)練模型 STAR。
目前高速發(fā)展的互聯(lián)網(wǎng)時(shí)代中,各種類(lèi)型的數(shù)據(jù)不斷涌現(xiàn),其中,我們較為常用的就有表格數(shù)據(jù),表格作為一種通用的結(jié)構(gòu)化數(shù)據(jù),我們可以根據(jù)需求設(shè)計(jì) SQL 查詢(xún)語(yǔ)句來(lái)獲得表格中的知識(shí),但是往往需要較高的設(shè)計(jì)成本以及學(xué)習(xí)成本。此時(shí),Text-to-SQL 解析任務(wù)顯得格外重要,而根據(jù)對(duì)話場(chǎng)景的不同,還分為單輪 Text-to-SQL 解析和多輪 Text-to-SQL 解析,本文主要研究更加困難且更接近現(xiàn)實(shí)應(yīng)用的多輪 Text-to-SQL 解析任務(wù)。
近期,阿里巴巴達(dá)摩院聯(lián)合中國(guó)科學(xué)院深圳先進(jìn)技術(shù)研究院提出面向多輪 Text-to-SQL 語(yǔ)義解析的 SQL 查詢(xún)語(yǔ)句導(dǎo)向型預(yù)訓(xùn)練模型 STAR。截至目前,STAR 已連續(xù) 10 個(gè)月占據(jù) SParC 和 CoSQL 兩大榜單的第一名。研究論文已被自然語(yǔ)言處理領(lǐng)域國(guó)際會(huì)議 EMNLP 2022 Findings 接收。
論文地址:https://arxiv.org/abs/2210.11888
代碼地址:https://github.com/AlibabaResearch/DAMO-ConvAI/tree/main/star
STAR 是一種新穎且有效的多輪對(duì)話表格知識(shí)預(yù)訓(xùn)練語(yǔ)言模型,該模型主要通過(guò)兩個(gè)預(yù)訓(xùn)練目標(biāo)對(duì)多輪對(duì)話中的復(fù)雜上下文語(yǔ)義追蹤和數(shù)據(jù)庫(kù)模式狀態(tài)追蹤進(jìn)行建模,目的是增強(qiáng)自然語(yǔ)言查詢(xún)和數(shù)據(jù)庫(kù)模式在對(duì)話流中的編碼表示。
該研究在對(duì)話式語(yǔ)義解析的權(quán)威榜單 SParC 和 CoSQL 上進(jìn)行了評(píng)估,在公平的下游模型對(duì)比下,STAR 相比之前最好的多輪表格預(yù)訓(xùn)練模型 SCoRe,在 SParC 數(shù)據(jù)集上 QM/IM 提升了 4.6%/3.3%,在 CoSQL 數(shù)據(jù)集上 QM/IM 顯著提升 7.4%/8.5%。特別地,CoSQL 相比 SParC 數(shù)據(jù)集,擁有更多的上下文變化,這驗(yàn)證了該研究提出的預(yù)訓(xùn)練任務(wù)的有效性。
背景介紹
為了使得用戶在不熟悉 SQL 語(yǔ)法的情況下也能夠通過(guò)自然語(yǔ)言對(duì)話與數(shù)據(jù)庫(kù)進(jìn)行交互,多輪 Text-to-SQL 解析任務(wù)應(yīng)運(yùn)而生,該任務(wù)作為用戶與數(shù)據(jù)庫(kù)之間的橋梁,將交互內(nèi)的自然語(yǔ)言問(wèn)題轉(zhuǎn)換為可執(zhí)行的 SQL 查詢(xún)語(yǔ)句。
預(yù)訓(xùn)練模型最近幾年在 NLP 的各種任務(wù)上大放異彩,但由于表格和自然語(yǔ)言之間內(nèi)在的差異性,普通的預(yù)訓(xùn)練語(yǔ)言模型(例如 BERT,RoBERTa) 在該任務(wù)上無(wú)法達(dá)到最優(yōu)的性能,所以預(yù)訓(xùn)練表格模型(TaLM)[1-5] 應(yīng)運(yùn)而生。通常,預(yù)訓(xùn)練表格模型(TaLM)需要處理兩個(gè)核心問(wèn)題,包括如何建模上下文查詢(xún)之間的復(fù)雜依賴(lài)(指代、意圖偏移)及如何有效利用歷史生成的 SQL 結(jié)果。針對(duì)上述兩個(gè)核心問(wèn)題,現(xiàn)有的預(yù)訓(xùn)練表格模型存在以下缺陷:
圖 1. 一個(gè)上下文依賴(lài)的多輪 Text-to-SQL 解析例子。
第一,現(xiàn)有的表格預(yù)訓(xùn)練模型僅僅探索了自然語(yǔ)言查詢(xún)的上下文信息,而不考慮歷史 SQL 查詢(xún)語(yǔ)句中所蘊(yùn)含的交互狀態(tài)信息,這種信息往往能以一種更加準(zhǔn)確而緊湊的形式概括用戶的意圖。因此,對(duì)歷史 SQL 信息進(jìn)行建模和追蹤能夠更好地捕獲當(dāng)前輪查詢(xún)的意圖,從而更加準(zhǔn)確地生成對(duì)應(yīng)的 SQL 查詢(xún)語(yǔ)句。如圖 1 所示,由于第一輪 SQL 查詢(xún)中提到了表名 “Compuses”,在第二輪 SQL 查詢(xún)中很大可能會(huì)再次選擇該表,因此對(duì)表名 “Compuses” 的狀態(tài)進(jìn)行追蹤顯得格外重要。
第二,由于用戶可能忽略對(duì)話歷史中提及的實(shí)體或者引入一些指代,導(dǎo)致當(dāng)前輪對(duì)話信息缺失,因此多輪 Text-to-SQL 解析任務(wù)需要有效地建模上下文信息以便更好地解析當(dāng)前輪自然語(yǔ)言對(duì)話。如圖 1 所示,第二輪對(duì)話省了第一輪對(duì)話中提到的 “campuses in year 2000”。然而大部分已有預(yù)訓(xùn)練表格模型并沒(méi)有考慮上下文信息,而是對(duì)每輪自然語(yǔ)言對(duì)話單獨(dú)進(jìn)行建模。盡管 SCoRe [1] 通過(guò)預(yù)測(cè)相鄰兩輪對(duì)話之間的上下文切換標(biāo)簽來(lái)建模上下文切換信息,但是忽略了更復(fù)雜的上下文信息,并且不能追蹤遠(yuǎn)距離對(duì)話之間的依存信息。例如,圖 1 中,由于第二輪對(duì)話和第三輪對(duì)話發(fā)生了上下文切換,而 SCoRe 并不能捕獲第一輪對(duì)話和第四輪對(duì)話之間長(zhǎng)距離依賴(lài)信息。
受到多輪對(duì)話中對(duì)話狀態(tài)追蹤任務(wù)的啟發(fā),該研究提出了一種基于模式狀態(tài)追蹤預(yù)訓(xùn)練目標(biāo)來(lái)隊(duì)上下文 SQL 的模式狀態(tài)進(jìn)行追蹤;針對(duì)多輪對(duì)話中問(wèn)題間復(fù)雜語(yǔ)義依賴(lài)問(wèn)題,該研究提出了對(duì)話依賴(lài)追蹤方法,捕捉多輪對(duì)話之間的復(fù)雜語(yǔ)義依存關(guān)系,并提出基于權(quán)重的對(duì)比學(xué)習(xí)方法來(lái)更好地建模對(duì)話之間的正例和負(fù)例關(guān)系。
問(wèn)題定義
該研究首先給出多輪 Text-to-SQL 解析任務(wù)涉及的符號(hào)和問(wèn)題定義。表示 T 輪自然語(yǔ)言查詢(xún),查詢(xún)的多輪 Text-to-SQL 對(duì)話交互,其中表示第 i 輪自然語(yǔ)言問(wèn)題,每輪自然語(yǔ)言對(duì)話包含個(gè) tokens。此外,還有一個(gè)與交互的數(shù)據(jù)庫(kù) s,其中包含了 N 個(gè)表格,并且所有表格包含 m 個(gè)表名和列名,表示數(shù)據(jù)庫(kù)模式 s 中的第 i 個(gè)表名或列名。假設(shè)當(dāng)前輪為第 t 輪,Text-to-SQL 解析任務(wù)的目的是根據(jù)當(dāng)前輪自然語(yǔ)言查詢(xún),歷史查詢(xún),數(shù)據(jù)庫(kù)模式 s 和上一輪預(yù)測(cè)的 SQL 查詢(xún)語(yǔ)句,生成當(dāng)前輪自然語(yǔ)言查詢(xún)對(duì)應(yīng)的 SQL 查詢(xún)語(yǔ)句。
方法描述
如圖 2 所示,該研究提出了一個(gè)基于 SQL 引導(dǎo)的多輪表格預(yù)訓(xùn)練框架,充分利用了歷史 SQL 的結(jié)構(gòu)化信息來(lái)豐富對(duì)話表示,進(jìn)而對(duì)復(fù)雜的上下文信息進(jìn)行更加有效地建模。
圖 2. STAR 的模型框架。
具體來(lái)說(shuō),該研究提出基于模式狀態(tài)追蹤和基于對(duì)話依賴(lài)追蹤的表格預(yù)訓(xùn)練目標(biāo),分別對(duì)多輪交互中的 SQL 查詢(xún)語(yǔ)句和自然語(yǔ)言問(wèn)題的意圖進(jìn)行追蹤。(1) 在多輪對(duì)話情境中,當(dāng)前對(duì)話的 SQL 查詢(xún)依賴(lài)于上下文的 SQL 信息,因此受到多輪對(duì)話中對(duì)話狀態(tài)追蹤任務(wù)的啟發(fā),該研究提出了一種基于模式狀態(tài)追蹤(Schema State Tracking,SST)的表格預(yù)訓(xùn)練目標(biāo),以自監(jiān)督的方式跟蹤上下文相關(guān) SQL 查詢(xún)語(yǔ)句的模式狀態(tài) (或用戶請(qǐng)求)。(2) 對(duì)針對(duì)多輪對(duì)話中自然語(yǔ)言問(wèn)題之間的復(fù)雜語(yǔ)義依賴(lài)問(wèn)題,提出了基于對(duì)話依賴(lài)追蹤(Utterance Dependency Tracking,UDT)的表格預(yù)訓(xùn)練目標(biāo),利用基于權(quán)重的對(duì)比學(xué)習(xí)方法更好地學(xué)習(xí)自然語(yǔ)言查詢(xún)的特征表示。下面詳細(xì)介紹這兩個(gè)表格預(yù)訓(xùn)練目標(biāo)。
基于模式狀態(tài)追蹤的表格預(yù)訓(xùn)練目標(biāo)
該研究提出了一種基于模式狀態(tài)追蹤的表格預(yù)訓(xùn)練目標(biāo),以自監(jiān)督的方式跟蹤上下文相關(guān) SQL 查詢(xún)語(yǔ)句的模式狀態(tài) (或用戶請(qǐng)求),目的是預(yù)測(cè)模式槽的值。具體來(lái)說(shuō),該研究以模式狀態(tài)的形式追蹤 Text-to-SQL 會(huì)話的交互狀態(tài),其中槽是數(shù)據(jù)庫(kù)模式(即所有表的列名),對(duì)應(yīng)的槽值是 SQL 關(guān)鍵字。以圖 3 中的 SQL 查詢(xún)?yōu)槔?,模式?“[car_data]” 的值是 SQL 關(guān)鍵字 “[SELECT]”。首先,該研究將第 t - 1 輪預(yù)測(cè)的 SQL 查詢(xún)語(yǔ)句轉(zhuǎn)換為一組模式狀態(tài)的形式。由于模式狀態(tài)的槽是數(shù)據(jù)庫(kù)的所有表的列名,那些沒(méi)有出現(xiàn)在 SQL 查詢(xún)語(yǔ)句對(duì)應(yīng)的模式狀態(tài)中的值被設(shè)置為 [NONE]。如圖 3 所示,該研究用 m 個(gè)模式狀態(tài)表示 SQL 查詢(xún)語(yǔ)句,其中表示第 i 個(gè)模式狀態(tài)的槽,表示該模式狀態(tài)的值。對(duì)于第 t 輪,模式狀態(tài)追蹤的目標(biāo)是在給定所有歷史自然語(yǔ)言問(wèn)題,當(dāng)前問(wèn)題和上一輪 SQL 查詢(xún)語(yǔ)句的模式狀態(tài)的情況下,預(yù)測(cè)第 t 輪的 SQL 查詢(xún)語(yǔ)句的每個(gè)模式狀態(tài)槽的值。也就是說(shuō),在第 t 輪,模式狀態(tài)追蹤預(yù)訓(xùn)練目標(biāo)的輸入為:
由于每個(gè)模式狀態(tài)包含多個(gè)單詞,因此應(yīng)用注意力層來(lái)獲得的表示。具體來(lái)說(shuō),給定輸出上下文化表示 ( l 是的起始下標(biāo))。對(duì)于每個(gè)模式狀態(tài),模式狀態(tài)的注意力感知的表示可以計(jì)算為:
進(jìn)而預(yù)測(cè)當(dāng)前問(wèn)題的模式狀態(tài):
最后,將模式狀態(tài)追蹤的預(yù)訓(xùn)練損失函數(shù)可以被定義為:
基于對(duì)話依賴(lài)追蹤的表格預(yù)訓(xùn)練目標(biāo)
該研究提出了一個(gè)話語(yǔ)依賴(lài)跟蹤的預(yù)訓(xùn)練目標(biāo),利用基于權(quán)重的對(duì)比學(xué)習(xí)方法,以捕獲每個(gè) Text-to-SQL 話中自然語(yǔ)言問(wèn)題之間的復(fù)雜語(yǔ)義依賴(lài)關(guān)系。基于權(quán)重的對(duì)比學(xué)習(xí)中的一個(gè)關(guān)鍵挑戰(zhàn)是如何通過(guò)自監(jiān)督的方式構(gòu)建適當(dāng)?shù)恼拓?fù)例標(biāo)簽,直覺(jué)上可以通過(guò)從不同的會(huì)話中選擇自然語(yǔ)言問(wèn)題來(lái)構(gòu)建負(fù)例對(duì)。然而,構(gòu)建正例問(wèn)題對(duì)并非易事,因?yàn)楫?dāng)前的問(wèn)題可能與那些發(fā)生了話題轉(zhuǎn)移的歷史問(wèn)題無(wú)關(guān),如圖 1 所示的第二和第三個(gè)話語(yǔ)。因此,該研究將同一會(huì)話中的自然語(yǔ)言問(wèn)題視為正例對(duì),并且給它們分配了不同的相似度分?jǐn)?shù)。SQL 是一種高度結(jié)構(gòu)化的用戶話語(yǔ)指示,因此通過(guò)測(cè)量當(dāng)前 SQL 與歷史 SQL 的相似性,可以獲得自然語(yǔ)言問(wèn)題的語(yǔ)義依賴(lài)的偽標(biāo)簽,以獲得不同語(yǔ)句建的相似度分?jǐn)?shù),從而指導(dǎo)上下文建模。該研究從語(yǔ)義和結(jié)構(gòu)兩個(gè)角度出發(fā)提出了一種度量 SQL 相似性的方法。如圖 3 所示:
圖 3. 兩種計(jì)算 SQL 語(yǔ)句相似度的方法。
基于語(yǔ)義的 SQL 相似度計(jì)算 該研究通過(guò)計(jì)算兩個(gè) SQL 查詢(xún)語(yǔ)句對(duì)應(yīng)的模式狀態(tài)相似度來(lái)衡量它們之間的語(yǔ)義相似度。具體來(lái)說(shuō),如圖 3 所示,該方法會(huì)分別獲取兩個(gè) SQL 查詢(xún)語(yǔ)句,的模式狀態(tài)和。然后,該研究采用 Jaccard 相似度來(lái)計(jì)算它們之間的語(yǔ)義相似度:
其中表示和對(duì)應(yīng)模式狀態(tài)的值不是 [NONE] 的非重復(fù)模式狀態(tài)的數(shù)量。
基于結(jié)構(gòu)的 SQL 相似度計(jì)算 為了利用 SQL 查詢(xún)語(yǔ)句的樹(shù)形結(jié)構(gòu),該研究首先將每個(gè) SQL 查詢(xún)解析為 SQL 樹(shù),如圖 3 所示。給定 SQL 查詢(xún)和的兩棵 SQL 樹(shù)和,該研究利用 Weisfeiler-Lehman 算法來(lái)計(jì)算的結(jié)構(gòu)相似度分?jǐn)?shù),公式如下:
總的來(lái)說(shuō),該研究定義兩個(gè) SQL 查詢(xún)語(yǔ)句和的相似度分?jǐn)?shù)如下:
基于權(quán)重的對(duì)比損失 在獲得 SQL 相似度后,該研究使用加權(quán)對(duì)比學(xué)習(xí)將會(huì)話中語(yǔ)義相似的自然語(yǔ)言問(wèn)題的表示拉近,將語(yǔ)義不相似的自然語(yǔ)言問(wèn)題的表示推遠(yuǎn)。具體來(lái)說(shuō),首先該研究利用一個(gè)注意機(jī)制來(lái)學(xué)習(xí)輸入表示:
然后,該研究將加權(quán)對(duì)比損失函數(shù)最小化以?xún)?yōu)化整體網(wǎng)絡(luò):
最后,為了學(xué)習(xí)基于上下文語(yǔ)境的自然語(yǔ)言查詢(xún)和數(shù)據(jù)庫(kù)模式表示,該研究也采用了基于掩碼語(yǔ)義建模的預(yù)訓(xùn)練目標(biāo),損失函數(shù)表示為。基于上述的三個(gè)訓(xùn)練目標(biāo),該研究定義了基于同方差的聯(lián)合損失函數(shù):
其中,為可訓(xùn)練的參數(shù)。
實(shí)驗(yàn)效果
數(shù)據(jù)集 該研究在兩個(gè)對(duì)話式語(yǔ)義解析權(quán)威數(shù)據(jù)集 SParC 和 CoSQL 對(duì) STAR 模型的有效性進(jìn)行了驗(yàn)證。其中,SParC 是一個(gè)跨領(lǐng)域的多輪 Text-to-SQL 解析數(shù)據(jù)集,包含了大約 4300 次多輪交互和超過(guò) 12000 條自然語(yǔ)言問(wèn)題 - SQL 查詢(xún)語(yǔ)句對(duì);CoSQL 是一個(gè)跨領(lǐng)域的對(duì)話式 Text-to-SQL 解析數(shù)據(jù)集,包含了大約 3000 次對(duì)話交互和超過(guò) 10000 條自然語(yǔ)言問(wèn)題 - SQL 查詢(xún)語(yǔ)句對(duì)。相比于 SParC,CoSQL 的對(duì)話上下文語(yǔ)義相關(guān)性更高,并且 SQL 查詢(xún)語(yǔ)句的語(yǔ)法更加復(fù)雜。
基準(zhǔn)模型 在基準(zhǔn)模型方面,該研究比較了以下方法:(1)GAZP [6],通過(guò)結(jié)合一個(gè)前向語(yǔ)義解析模型和一個(gè)后向?qū)υ捝赡P秃铣勺匀徽Z(yǔ)言對(duì)話 - SQL 查詢(xún)語(yǔ)句對(duì)的訓(xùn)練數(shù)據(jù),最后選擇具有循環(huán)一致性的數(shù)據(jù)擬合前向語(yǔ)義解析模型。(2)EditSQL [7],考慮了交互歷史信息,通過(guò)編輯前時(shí)刻預(yù)測(cè)的 SQL 查詢(xún)語(yǔ)句來(lái)提升當(dāng)前輪對(duì)話的 SQL 生成質(zhì)量。(3)IGSQL [8],提出了一個(gè)數(shù)據(jù)庫(kù)模式交互圖編碼模型,該模型使用數(shù)據(jù)庫(kù)模式的歷史信息來(lái)捕獲自然語(yǔ)言輸入歷史信息,并且在解碼階段引入門(mén)控機(jī)制。(4)IST-SQL [9],受到對(duì)話狀態(tài)追蹤任務(wù)的啟發(fā),定義了模式狀態(tài)和 SQL 狀態(tài)兩種交互狀態(tài),并在每一輪中根據(jù)上一個(gè)預(yù)測(cè)的 SQL 查詢(xún)語(yǔ)句進(jìn)行狀態(tài)更新。(5)R2SQL [10],提出了一個(gè)動(dòng)態(tài)圖框架,針對(duì)對(duì)話流中的對(duì)話、數(shù)據(jù)庫(kù)模式之間的復(fù)雜交互進(jìn)行建模,通過(guò)一種動(dòng)態(tài)記憶衰退機(jī)制豐富對(duì)話和數(shù)據(jù)庫(kù)模式的上下文表示。(6)PICARD [11],提出一種增量式的語(yǔ)義解析,對(duì)語(yǔ)言模型的自回歸解碼模型進(jìn)行約束,在每個(gè)解碼步驟中,通過(guò)約束解碼結(jié)果的可接受性來(lái)尋找合法的輸出序列。(7)DELTA [12],首先使用一個(gè)對(duì)話重寫(xiě)模型解決對(duì)話上下文的完整性問(wèn)題,然后將完整的對(duì)話輸入一個(gè)單輪 Text-to-SQL 語(yǔ)義解析模型,得到最終 SQL 查詢(xún)語(yǔ)句。(8)HIE-SQL [13],從多模態(tài)的角度出發(fā),將自然語(yǔ)言和 SQL 看作兩種模態(tài),探索所有歷史對(duì)話和上一句預(yù)測(cè)的 SQL 查詢(xún)語(yǔ)句之間上下文依賴(lài)信息,提出了一個(gè)雙模態(tài)預(yù)訓(xùn)練模型并且設(shè)計(jì)了一個(gè)對(duì)話和 SQL 查詢(xún)語(yǔ)句之間的模式鏈接圖。
整體實(shí)驗(yàn)結(jié)果 如圖 4 所示,從實(shí)驗(yàn)結(jié)果可以看出,STAR 模型在 SParC 和 CoSQL 兩個(gè)數(shù)據(jù)集上的效果遠(yuǎn)勝于其他對(duì)比方法。在預(yù)訓(xùn)練模型對(duì)比方面,STAR 模型都遠(yuǎn)超于其他預(yù)訓(xùn)練模型(如 BERT,RoBERTa,GRAPPA,SCoRe),在 CoSQL dev 數(shù)據(jù)集上,對(duì)比 SCoRE 模型,QM 分?jǐn)?shù)提升 7.4%,IM 分?jǐn)?shù)提升 7.5%。在下游 Text-to-SQL 模型對(duì)比方面,以 STAR 為預(yù)訓(xùn)練模型底座的 LGESQL 模型,效果遠(yuǎn)勝于將其他預(yù)訓(xùn)練語(yǔ)言模型當(dāng)作底座的下游方法,例如目前效果最好的以 GRAPPA 為底座的 HIE-SQL 模型。
圖 4. 在 SParC 和 CoSQL 數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果
消融實(shí)驗(yàn)結(jié)果 本文還補(bǔ)充了完整的消融實(shí)驗(yàn)來(lái)說(shuō)明 STAR 模型中每個(gè)模塊的有效性。消融實(shí)驗(yàn)結(jié)果如圖 5 所示,當(dāng)去掉 SST 或者 UDT 預(yù)訓(xùn)練目標(biāo)時(shí),效果會(huì)大幅下降,而結(jié)合所有預(yù)訓(xùn)練目標(biāo)的實(shí)驗(yàn)結(jié)果在所有數(shù)據(jù)集上都達(dá)到了最好的效果,這說(shuō)明了 SST 和 UDT 的有效性。另外,該研究針對(duì) UDT 中的兩種 SQL 相似度計(jì)算方法進(jìn)行了進(jìn)一步的實(shí)驗(yàn),從圖 6 可以看出,兩種 SQL 相似度計(jì)算方法都能提升 STAR 模型的效果,并且結(jié)合后的效果最佳。
圖 5. 針對(duì)預(yù)訓(xùn)練目標(biāo)的消融實(shí)驗(yàn)結(jié)果。
圖 6. 針對(duì) SQL 相似度計(jì)算方法的消融實(shí)驗(yàn)結(jié)果。
不同難度樣本的模型效果 如圖 7 所示,從 SParC 和 CoSQL 兩個(gè)數(shù)據(jù)集上的不同難度樣本的實(shí)驗(yàn)結(jié)果可以看出,STAR 模型針對(duì)各種難度樣本的預(yù)測(cè)效果都遠(yuǎn)勝于其他對(duì)比方法,即使是在難度最大的 extra hard 樣本中也效果顯著。
圖 7. 在 SParC 和 CoSQL 數(shù)據(jù)集上不同難度樣本的實(shí)驗(yàn)結(jié)果。
不同輪次樣本的模型效果 如圖 8 所示,從 SParC 和 CoSQL 兩個(gè)數(shù)據(jù)集上的不同輪次樣本的實(shí)驗(yàn)結(jié)果可以看出,隨著對(duì)話輪次的增加,基準(zhǔn)模型的 QM 指標(biāo)在急劇下降,而 STAR 模型即使在第三輪和第四輪也能表現(xiàn)出更穩(wěn)定的性能。這表明 STAR 模型可以更好地追蹤和探索對(duì)話歷史中的交互狀態(tài),以幫助模型更好地解析當(dāng)前對(duì)話。
圖 8. 在 SParC 和 CoSQL 數(shù)據(jù)集上不同輪次樣本的實(shí)驗(yàn)結(jié)果。
實(shí)例分析 為了評(píng)估 STAR 模型的實(shí)際效果,該研究從 CoSQL 驗(yàn)證集中選擇了兩個(gè)樣本,并在圖 9 中對(duì)比了 SCoRe 模型和 STAR 模型生成的 SQL 查詢(xún)語(yǔ)句。從第一個(gè)例子我們可以看到 STAR 模型能夠很好地使用歷史 SQL 的模式狀態(tài)信息(例如,[car_names.Model]),從而正確生成了第三輪對(duì)話的 SQL 查詢(xún)語(yǔ)句,而 SCoRe 模型則無(wú)法跟蹤這種模式狀態(tài)信息。在第二個(gè)例子中,STAR 模型有效地跟蹤了第一輪和第四輪話語(yǔ)之間的長(zhǎng)期對(duì)話依賴(lài)關(guān)系,并通過(guò)跟蹤和引用第二輪對(duì)話中的 “the number of” 信息,在第四輪 SQL 查詢(xún)語(yǔ)句中正確地生成了 SQL 關(guān)鍵字 [SELECT COUNT (*)]。然而,SCoRe 模型無(wú)法跟蹤這種長(zhǎng)期依賴(lài)關(guān)系,并受到第三輪話語(yǔ)的干擾生成了錯(cuò)誤的 SQL 查詢(xún)語(yǔ)句。
圖 9. 實(shí)例分析。
ModelScope 模型開(kāi)源社區(qū)
本文在 CoSQL 數(shù)據(jù)集上訓(xùn)練得到的模型,目前已集成到 ModelScope 模型開(kāi)源社區(qū)。讀者可以直接在 notebook 中選擇 V100 GPU 環(huán)境,通過(guò)一個(gè)簡(jiǎn)單 pipeline 即可使用 demo 模型用于多輪 Text-to-SQL 語(yǔ)義解析任務(wù)。
總結(jié)
本文中,研究團(tuán)隊(duì)提出了一個(gè)新穎且有效的多輪表格知識(shí)預(yù)訓(xùn)練模型(STAR 模型)。針對(duì)多輪 Text-to-SQL 語(yǔ)義解析任務(wù),STAR 模型提出基于模式狀態(tài)追蹤和基于對(duì)話依賴(lài)追蹤的表格預(yù)訓(xùn)練目標(biāo),分別對(duì)多輪交互中的 SQL 查詢(xún)語(yǔ)句和自然語(yǔ)言問(wèn)題的意圖進(jìn)行追蹤。STAR 模型在兩個(gè)權(quán)威多輪語(yǔ)義解析榜單很好的結(jié)果,連續(xù) 10 個(gè)月占據(jù)榜單第一名的成績(jī)。
最后,歡迎對(duì)中國(guó)科學(xué)院深圳先進(jìn)技術(shù)研究院SIAT-NLP組感興趣的同學(xué)申請(qǐng)博后/博士/碩士/實(shí)習(xí)等職位,簡(jiǎn)歷請(qǐng)發(fā)至min.yang@siat.ac.cn。
參考文獻(xiàn)
[1] Tao Yu, Rui Zhang, Alex Polozov, Christopher Meek, Ahmed Hassan Awadallah. SCoRe: Pre-Training for Context Representation in Conversational Semantic Parsing. In NeurIPS, 2020.
[2] Tao Yu, Chien-Sheng Wu, Xi Victoria Lin, Bailin Wang, Yi Chern Tan, Xinyi Yang, Dragomir R.Radev, Richard Socher, and Caiming Xiong. Grappa: Grammar-augmented pre-training for table semantic parsing. In ICLR,2021.
[3] Peng Shi, Patrick Ng, Zhi guo Wang, Henghui Zhu, Alexander Hanbo Li, J. Wang, C. D. Santos, and Bing Xiang. Learning contextual representations for semantic parsing with generationaugmented pre-training. In AAAI,2021.
[4] Xiang Deng, Ahmed Hassan Awadallah, Christopher Meek, Oleksandr Polozov, Huan Sun, and Matthew Richardson. Structure-grounded pretraining for text-to-SQL. In NAACL,2021.
[5] Qian Liu, Bei Chen, Jiaqi Guo, Zeqi Lin, and JianGuang Lou. 2021a. TAPEX: table pre-trainin via learning a neural SQL executor. In arxiv,2021.
[6] Victor Zhong, Mike Lewis, Sida I. Wang, Luke Zettlemoyer. Grounded Adaptation for Zero-shot Executable Semantic Parsing. In EMNLP, 2020.
[7] Rui Zhang, Tao Yu, He Yang Er, Sungrok Shim, Eric Xue, Xi Victoria Lin, Tianze Shi, Caiming Xiong, Richard Socher, Dragomir Radev. Editing-Based SQL Query Generation for Cross-Domain Context-Dependent Questions. In EMNLP, 2019.
[8] Cai, Yitao, and Xiaojun Wan. IGSQL: Database Schema Interaction Graph Based Neural Model for Context-Dependent Text-to-SQL Generation. In EMNLP, 2020.
[9] Runze Wang, Zhenhua Ling, Jingbo Zhou, Yu Hu. Tracking interaction states for multi-turn text-to-sql semantic parsing. In AAAI, 2021.
[10] Binyuan Hui, Ruiying Geng, Qiyu Ren, Binhua Li, Yongbin Li, Jian Sun, Fei Huang, Luo Si, Pengfei Zhu, Xiaodan Zhu. Dynamic hybrid relation exploration network for cross-domain context-dependent semantic parsing. In AAAI, 2021.
[11] Scholak, Torsten, Nathan Schucher, and Dzmitry Bahdanau. PICARD: Parsing Incrementally for Constrained Auto-Regressive Decoding from Language Models. In EMNLP, 2021.
[12] Zhi Chen, Lu Chen, Hanqi Li, Ruisheng Cao, Da Ma, Mengyue Wu, Kai Yu. Decoupled Dialogue Modeling and Semantic Parsing for Multi-Turn Text-to-SQL. In ACL, 2021.
[13] Yanzhao Zheng, Haibin Wang, Baohua Dong, Xingjun Wang, Changshan Li. HIE-SQL: History Information Enhanced Network for Context-Dependent Text-to-SQL Semantic Parsing. In ACL, 2022.
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。
晶體管相關(guān)文章:晶體管工作原理
晶體管相關(guān)文章:晶體管原理