亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        結(jié)合數(shù)據(jù)庫(kù)結(jié)構(gòu)及內(nèi)容的問(wèn)句理解方法研究

        2021-03-18 08:03:16袁志祥任冬冬洪旭東孫國(guó)華
        計(jì)算機(jī)工程 2021年3期
        關(guān)鍵詞:子句表達(dá)式準(zhǔn)確率

        袁志祥,任冬冬,洪旭東,孫國(guó)華

        (安徽工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,安徽馬鞍山 243000)

        0 概述

        互聯(lián)網(wǎng)上的許多重要數(shù)據(jù)都存儲(chǔ)在結(jié)構(gòu)化數(shù)據(jù)庫(kù)中,其具有存儲(chǔ)簡(jiǎn)單、數(shù)據(jù)質(zhì)量高等特點(diǎn)。但是對(duì)于缺少相關(guān)SQL 專業(yè)知識(shí)的用戶而言,很難快速準(zhǔn)確地寫出他們所需求的SQL 查詢語(yǔ)句。為解決該問(wèn)題,研究人員提出NL2SQL(Natural Language to SQL)任務(wù),該任務(wù)要求模型根據(jù)自然語(yǔ)言問(wèn)句和數(shù)據(jù)庫(kù)表生成相應(yīng)的SQL 查詢,而解決該任務(wù)的關(guān)鍵是充分地理解自然語(yǔ)言問(wèn)句的語(yǔ)義,并將其映射到SQL 表達(dá)式相應(yīng)的部分(如在表中找到對(duì)應(yīng)的列名,在表內(nèi)容找到對(duì)應(yīng)的條件值,在SQL 關(guān)鍵字中找到對(duì)應(yīng)的聚合函數(shù)等)。

        由于缺少人工標(biāo)注的SQL 數(shù)據(jù)集,使得該任務(wù)未被重視。2017 年,ZHOU 等人[1]發(fā)布人工標(biāo)注的大型SQL 數(shù)據(jù)集——WikiSQL,該數(shù)據(jù)集含有大量英文問(wèn)句以及對(duì)應(yīng)的SQL 語(yǔ)句和數(shù)據(jù)庫(kù)表。2019年,追一科技公司在阿里云平臺(tái)舉辦的首屆中文NL2SQL 挑戰(zhàn)賽,提供了大型中文SQL 數(shù)據(jù)集。上述數(shù)據(jù)集為訓(xùn)練NL2SQL 神經(jīng)網(wǎng)絡(luò)及解決語(yǔ)義解析提供了訓(xùn)練條件。

        早期將自然語(yǔ)言轉(zhuǎn)換為SQL 語(yǔ)句的研究是利用中間表達(dá)式的方法,結(jié)合自定義語(yǔ)法和規(guī)則將自然語(yǔ)言問(wèn)句轉(zhuǎn)換成SQL 語(yǔ)句。文獻(xiàn)[2]使用斯坦福依存樹解析器[3]解析問(wèn)句,根據(jù)啟發(fā)式規(guī)則生成SQL候選集,利用語(yǔ)法樹核函數(shù)的SVM[4]對(duì)候選SQL 進(jìn)行排序。文獻(xiàn)[5]使用無(wú)監(jiān)督學(xué)習(xí)的方法生成SQL,利用數(shù)據(jù)庫(kù)模式限制模型的輸出空間以彌補(bǔ)標(biāo)注數(shù)據(jù)的不足,同時(shí)引入擴(kuò)展?fàn)顟B(tài)空間的語(yǔ)義依存樹解決語(yǔ)義和語(yǔ)法不匹配的問(wèn)題。文獻(xiàn)[6]通過(guò)與用戶交互來(lái)確定問(wèn)句的詞語(yǔ)與表相應(yīng)內(nèi)容的關(guān)系,同時(shí)自定義規(guī)則調(diào)整查詢樹的結(jié)構(gòu),最終將其轉(zhuǎn)換成SQL。文獻(xiàn)[7]通過(guò)自定義一種形式化意義語(yǔ)言實(shí)現(xiàn)了中文GIS 自然語(yǔ)言接口。上述方法都是依賴高質(zhì)量的語(yǔ)法來(lái)解析問(wèn)句,不能處理用戶語(yǔ)法多變的問(wèn)句,因此具有局限性。

        隨著深度學(xué)習(xí)的發(fā)展,人們開始將NL2SQL 的研究轉(zhuǎn)向訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型。早期的深度學(xué)習(xí)模型將NL2SQL 看成序列生成問(wèn)題,利用sequence-tosequence 模型[8]生成SQL 查詢。文獻(xiàn)[9]運(yùn)用注意力機(jī)制,通過(guò)sequence-to-sequence 的解碼層自動(dòng)生成SQL 序列。為提升SQL 查詢的準(zhǔn)確率,結(jié)合SQL 語(yǔ)法限制輸出空間的模型被提出。文獻(xiàn)[1]提出Seq2SQL 模型,該模型將SQL 生成分為聚合函數(shù)分類、select column 以及where 子句生成三部分,同時(shí)利用強(qiáng)化學(xué)習(xí)解決序列生成引發(fā)的“order matters”問(wèn)題。文獻(xiàn)[10]利用SQL 語(yǔ)句的格式和語(yǔ)法提出sequence-to-set 模型,將SQL 語(yǔ)句任務(wù)分成多個(gè)子任務(wù),并結(jié)合column attention 提升SQL 生成的準(zhǔn)確率。文獻(xiàn)[11]結(jié)合知識(shí)圖譜識(shí)別問(wèn)句中的實(shí)體。文獻(xiàn)[12]利用sequence-to-sequence 以及sequence-toset 模型各自的優(yōu)勢(shì),提出sequence-to-action 模型。該模型使用預(yù)定義的action 來(lái)填充SQL 查詢草圖的插槽。文獻(xiàn)[13]通過(guò)SQL 執(zhí)行結(jié)果修復(fù)錯(cuò)誤的SQL查詢。

        近年來(lái),大規(guī)模預(yù)訓(xùn)練模型在許多自然語(yǔ)言處理的下游任務(wù)中取得優(yōu)秀的成績(jī),許多基于預(yù)訓(xùn)練的Nl2SQL 模型被提出。研究人員使用Bert[14-15]預(yù)訓(xùn)練模型替代glove[16]作為模型的編碼器,基于Bert 編碼器提出3 種不同的輸出層,超過(guò)了人類手動(dòng)標(biāo)注。文獻(xiàn)[17]基于MT-DNN 模型[18]提出X_SQL 模型,通過(guò)強(qiáng)化上下文信息得到數(shù)據(jù)庫(kù)模式新的表達(dá)式,更好地表征其結(jié)構(gòu)信息以用于下游任務(wù)。

        現(xiàn)有許多深度學(xué)習(xí)模型都僅局限于數(shù)據(jù)庫(kù)結(jié)構(gòu)對(duì)模型的影響,忽略了表內(nèi)容對(duì)NL2SQL 任務(wù)的重要性。問(wèn)句的詞語(yǔ)與表內(nèi)容不匹配,導(dǎo)致生成的SQL 查詢?cè)跀?shù)據(jù)庫(kù)執(zhí)行錯(cuò)誤。而結(jié)合表內(nèi)容不僅可以幫助模型更好地識(shí)別問(wèn)句中對(duì)應(yīng)的SQL 語(yǔ)句實(shí)體,還可以緩解問(wèn)句與表內(nèi)容不一致的問(wèn)題。本文在SQLova[13]的框架下,提出一個(gè)同時(shí)結(jié)合表結(jié)構(gòu)和內(nèi)容的NL2SQL 模型。使用字符串匹配的方法篩選出與問(wèn)句相關(guān)的表內(nèi)容,利用Bert 編碼器對(duì)問(wèn)句、表列名以及相關(guān)表內(nèi)容進(jìn)行字編碼,value attention 和column attention 將表結(jié)構(gòu)和內(nèi)容的表示特征加到問(wèn)句表達(dá)式中,幫助模型更好地理解用戶問(wèn)句的語(yǔ)義,識(shí)別問(wèn)句中的表列名和條件值,并根據(jù)多個(gè)子模型的分類方法填充SQL 草圖完成SQL 查詢。

        1 任務(wù)描述

        本文使用追一公司在阿里云發(fā)布的中文數(shù)據(jù)集作為整篇文章的示例。該中文數(shù)據(jù)集的任務(wù)是在給定問(wèn)句和數(shù)據(jù)庫(kù)表的情況下生成相應(yīng)的SQL 查詢。其數(shù)據(jù)格式如圖1 所示,每條數(shù)據(jù)對(duì)應(yīng)一個(gè)數(shù)據(jù)庫(kù)表和1 條問(wèn)句以及SQL 查詢。

        圖1 中文數(shù)據(jù)集數(shù)據(jù)格式Fig.1 Chinese dataset data format

        對(duì)于問(wèn)句的詞語(yǔ)與表內(nèi)容不完全匹配的問(wèn)題,如圖1 中的“死侍2”與表內(nèi)容的“死侍2:我愛我家”不一致的情況,會(huì)導(dǎo)致SQL 查詢結(jié)果為空。模型結(jié)合表內(nèi)容通過(guò)字符串匹配的方法來(lái)替換模型從問(wèn)句中生成的詞語(yǔ),即將“死侍2:我愛我家”替換成“死侍2”,緩解表內(nèi)容與問(wèn)句詞語(yǔ)不一致的問(wèn)題。在WikiSQL 測(cè)試集上比SQLova 準(zhǔn)確率高出1.4%,實(shí)驗(yàn)結(jié)果表明,結(jié)合數(shù)據(jù)庫(kù)結(jié)構(gòu)和內(nèi)容特征可以幫助模型更好地理解問(wèn)句語(yǔ)義,提升SQL 查詢的準(zhǔn)確率。

        本文將序列生成任務(wù)轉(zhuǎn)化為多個(gè)分類任務(wù),通過(guò)填充SQL 草圖生成SQL 查詢。該中文數(shù)據(jù)集的SQL 查詢對(duì)應(yīng)的SQL 草圖如圖2 所示,草圖的每個(gè)槽對(duì)應(yīng)不同子任務(wù)。以$開頭的標(biāo)記表示槽標(biāo)記,$后面的名稱表示需要預(yù)測(cè)的類型。其中:$AGG 表示模型預(yù)測(cè)SQL 查詢的聚合函數(shù),取值集合包括{‘ ’,‘MAX’,‘MIN’,‘COUNT’,‘SUM’,‘AVG’};$SELECT_COL 和$WHERE_COL 表示模型需要預(yù)測(cè)的數(shù)據(jù)庫(kù)表列名;$WHERE_RELA 表示where 子句的關(guān)系,包括{‘ ’,‘a(chǎn)nd’,‘or’};$WHERE_OP 表示SQL 查詢的操作符,包括{‘=’,‘>’,‘<’};$WHERE_VAL 表示從問(wèn)句中生成的SQL 查詢條件值;(…)*表示子句的數(shù)量是零個(gè)或多個(gè)。

        圖2 SQL 草圖Fig.2 SQL sketch

        2 相關(guān)表內(nèi)容獲取方法和模型整體架構(gòu)

        在SQLova 框架下,將模型分成Encoder 層、Attention 層以及Ouput 層三部分,具體結(jié)構(gòu)如圖3 所示。在Encoder 層,SQLova 將問(wèn)句和表列名作為Bert 預(yù)訓(xùn)練模型的輸入,在SQLova 模型的基礎(chǔ)上將相關(guān)表內(nèi)容作為Bert 的輸入;在Attention 層,SQLova 通過(guò)Column Attention 得到問(wèn)句表達(dá)式,利用Value Attention 將表內(nèi)容的信息融入問(wèn)句的表達(dá)式中;在Output 層,為了更好地預(yù)測(cè)Where Column和Where Value 子任務(wù),將基于表內(nèi)容的問(wèn)句表達(dá)式作為額外輸入。

        圖3 模型整體結(jié)構(gòu)Fig.3 Model overall structure

        2.1 表內(nèi)容篩選

        在解析問(wèn)句語(yǔ)義時(shí),相對(duì)于結(jié)合數(shù)據(jù)庫(kù)結(jié)構(gòu),表內(nèi)容對(duì)于生成SQL 查詢有著重要作用。結(jié)合表內(nèi)容可以幫助模型更好地找到SQL 查詢的條件值,如圖1中的示例,模型根據(jù)表內(nèi)容“大黃蜂”更好地找到問(wèn)句中的“大黃蜂”。同時(shí)結(jié)合表內(nèi)容還可以幫助模型預(yù)測(cè)問(wèn)句中表列名,比如“北京”這個(gè)條件值使模型更傾向于預(yù)測(cè)“城市”列名。但將表內(nèi)容所有的信息作為Bert 編碼器的輸入,給模型帶來(lái)過(guò)多的干擾因素,同時(shí)會(huì)使得模型的輸入過(guò)長(zhǎng),所以本文篩選出與問(wèn)句有關(guān)的表內(nèi)容作為模型的輸入。

        為得到與問(wèn)句相關(guān)的表內(nèi)容,模型將問(wèn)句進(jìn)行分詞處理,枚舉長(zhǎng)度為1~4 的所有n-garms,使用Jaccrad公式計(jì)算組合的詞語(yǔ)與表內(nèi)容的相似度。若問(wèn)句中出現(xiàn)單引號(hào)或者雙引號(hào)以及書名號(hào)時(shí),直接使用該詞語(yǔ)與表內(nèi)容進(jìn)行相似度計(jì)算。計(jì)算公式如下:

        如果相似度超過(guò)一定的閾值,則將表內(nèi)容加到模型的輸入中。本文利用得到的相關(guān)表內(nèi)容、問(wèn)句和表列名共同構(gòu)成Bert 編碼器的輸入。

        2.2 基于表的Bert 編碼器

        基于語(yǔ)境的動(dòng)態(tài)詞表達(dá)式ELMO[19-20]和Bert[14]預(yù)訓(xùn)練模型,在處理許多自然語(yǔ)言處理任務(wù)方面表現(xiàn)突出。SQLova[13]的實(shí)驗(yàn)結(jié)果也表明利用Bert 模型得出的基于上下文和表的詞表達(dá)式,可以有效提高NL2SQL 任務(wù)的準(zhǔn)確率。模型使用Bert 模型對(duì)其進(jìn)行字編碼,同時(shí)將問(wèn)句、數(shù)據(jù)庫(kù)列名以及相關(guān)表內(nèi)容作為Bert 的整體輸入。Bert 中的self-attention 機(jī)制使得模型更注重問(wèn)句中列名和條件值,獲得更準(zhǔn)確的表達(dá)式。具體如圖3 所示,其中[CLS]和[SEP]是用于分類和上下文分離的特殊標(biāo)記。本文使用[SEP]來(lái)分隔問(wèn)句、列名以及表內(nèi)容,與位置向量共同構(gòu)成bert 編碼器的輸入,得到對(duì)應(yīng)的問(wèn)句、列名以及表內(nèi)容的特征表達(dá)式Hq、Hcol和Hval。

        2.3 注意力層

        將Hq、Hcol、Hval通過(guò)3 個(gè)Bi-LSTM,選擇最后的隱藏狀態(tài)得到對(duì)應(yīng)的表達(dá)式Eq、Ecol、Eval。在預(yù)測(cè)Select Column 與Where Column 子任務(wù)時(shí),為表示不同列名在自然語(yǔ)言問(wèn)句的重要程度,本文引用SQLNet 的Column Attention[9]表示問(wèn)句的表達(dá)式,具體如下:

        其中,Wcol是d×d的參數(shù)矩陣,softmax 函數(shù)對(duì)輸入矩陣的每行做歸一操作,wq|col表示列名對(duì)問(wèn)句的注意力權(quán)重,Eq|col是結(jié)合表內(nèi)容的問(wèn)句表達(dá)式。

        為更好地理解問(wèn)句中的條件值,本文提出Value Attention,使問(wèn)句的表達(dá)式可以在預(yù)測(cè)SQL 查詢的條件值時(shí)更好地反映出表內(nèi)容在問(wèn)句的重要信息。本文首先利用問(wèn)句和表內(nèi)容的表達(dá)式計(jì)算問(wèn)句對(duì)應(yīng)表內(nèi)容的權(quán)重,其中,Wval是參數(shù)矩陣。根據(jù)得到的每個(gè)問(wèn)句的權(quán)重wq|val,然后與問(wèn)句的特征表達(dá)式Eq進(jìn)行加權(quán)乘積求和得到基于表內(nèi)容問(wèn)句的新表達(dá)式,具體公式如下:

        2.4 輸出層

        模型利用Attention 層得到的輸出來(lái)預(yù)測(cè)SQL 草圖不同的槽,其中槽分別對(duì)應(yīng)8 個(gè)子任務(wù),分別是Select Number、Select Column、Select Agg、Where Relation、Where Number、Where Column、Where Operator、Where Value。Output 層的子任務(wù)以及之間詳細(xì)的依存關(guān)系如圖4 所示。由于Select Number 子任務(wù)與Where Number 以及Where Relation 模型結(jié)構(gòu)相同,在圖中只顯示出Select Number 子模型的結(jié)構(gòu)。

        圖4 輸出層子模型之間的關(guān)系Fig.4 Relationship between output layer submodels

        子任務(wù)分別介紹如下:

        1)Select Number。該任務(wù)是確定Select 子句中表列名的數(shù)量,模型把該任務(wù)當(dāng)成一個(gè)4 分類任務(wù),具體公式如下:

        其中,Eq|q表示基于self-attention 的問(wèn)句表達(dá)式,Vsnum和Wsnum分別對(duì)應(yīng)4×d、d×d的參數(shù)矩陣。

        2)Select Column。該任務(wù)根據(jù)概率的大小從表中k個(gè)列名作為SQL 語(yǔ)句的Select 查詢字段,其中,k是Select Number 預(yù)測(cè)的個(gè)數(shù),具體公式如下:

        3)Select Agg。該任務(wù)是預(yù)測(cè)SQL 查詢的聚合函數(shù),利用Select 子句的列名和問(wèn)句進(jìn)行分類任務(wù),具體公式如下:

        4)Where Number:該任務(wù)是利用問(wèn)句的表達(dá)式預(yù)測(cè)Where 子句的個(gè)數(shù),具體公式如下:

        5)Where Relation。該子模型是預(yù)測(cè)Where 子句之間的關(guān)系。若Where 子句的數(shù)量為1 時(shí),默認(rèn)Where Relation 為空;當(dāng)Where 子句的數(shù)量大于1 時(shí),將問(wèn)句表達(dá)式作為輸入對(duì)Where 子句的關(guān)系進(jìn)行二分類(and,or),具體公式如下:

        6)Where Column。該任務(wù)是確定Where 子句的表列名,利用列名、基于表結(jié)構(gòu)和表內(nèi)容的問(wèn)句表達(dá)式進(jìn)行分類任務(wù)。根據(jù)SQL 語(yǔ)法,Select Column 與Where Column 不能同時(shí)對(duì)應(yīng)數(shù)據(jù)庫(kù)表的同一個(gè)列名,因此把Select 子句生成的列名也作為該任務(wù)的輸入,公式具體如下:

        7)Where op。該子任務(wù)是確定Where 子句的操作符,需要根據(jù)Where 子句的表列名與問(wèn)句表達(dá)式來(lái)進(jìn)行分類,具體公式如下:

        8)Where Value。該任務(wù)通過(guò)序列標(biāo)注從問(wèn)句中找到每一個(gè)Where Column 對(duì)應(yīng)的條件值。除了基于列名問(wèn)句表達(dá)式與Where Column 預(yù)測(cè)的Column表達(dá)式作為Where Value 任務(wù)的輸入外,基于Value attention 的問(wèn)句表達(dá)式也可以幫助模型預(yù)測(cè)Where Column,具體公式如下:

        若該任務(wù)生成的條件值與表內(nèi)容存在不匹配的問(wèn)題,模型結(jié)合表內(nèi)容利用字符串匹配的方法替換生成的條件值。

        2.5 訓(xùn)練階段

        在訓(xùn)練階段,由于模型被分成多個(gè)分類子任務(wù),因此目標(biāo)函數(shù)可以被看成多個(gè)子模型的交叉熵?fù)p失函數(shù)的和。針對(duì)表列名的預(yù)測(cè),模型通過(guò)交叉熵?fù)p失函數(shù)計(jì)算標(biāo)注數(shù)據(jù)出現(xiàn)的表列名與預(yù)測(cè)列名概率的損失;針對(duì)Where Value 子任務(wù)的預(yù)測(cè),通過(guò)預(yù)測(cè)問(wèn)句中的條件值的開始位置和結(jié)束位置與真值的損失。交叉熵?fù)p失函數(shù)的具體公式如下:

        其中,x表示訓(xùn)練數(shù)據(jù),y表示真值,N表示樣本的數(shù)量。本文通過(guò)最小化目標(biāo)函數(shù)的方式來(lái)更新模型參數(shù)。

        3 實(shí)驗(yàn)結(jié)果與分析

        3.1 數(shù)據(jù)集和評(píng)估方法

        本文分別在追一公司發(fā)布的中文數(shù)據(jù)集和WikiSQL 數(shù)據(jù)集進(jìn)行測(cè)試。WikiSQL 數(shù)據(jù)集是ZHONG 等人[1]發(fā)布的手工數(shù)據(jù)集,被廣泛應(yīng)用于NL2SQL 深度學(xué)習(xí)模型,該數(shù)據(jù)集擁有80 000 多條訓(xùn)練數(shù)據(jù)以及對(duì)應(yīng)的20 000 多張數(shù)據(jù)庫(kù)表。中文數(shù)據(jù)集共有50 000 多條數(shù)據(jù),與WikiSQL 不同的是,中文數(shù)據(jù)集的SQL 查詢中Select 子句的表列名可以是多個(gè),另外,Where 子句之間的關(guān)系不是默認(rèn)的“and”關(guān)系,其條件數(shù)量以多個(gè)為主。本文使用Logic Form Accuracy(Logic)和Execution Accuracy(Exe)兩個(gè)指標(biāo)評(píng)估模型性能,其中,Logic Form Accuracy 是指生成的SQL 查詢與數(shù)據(jù)集的SQL 真值比對(duì)的準(zhǔn)確率,Execution Accuracy 是指生成的SQL 語(yǔ)句與數(shù)據(jù)庫(kù)的SQL 語(yǔ)句在數(shù)據(jù)庫(kù)執(zhí)行完查詢結(jié)果后進(jìn)行比對(duì)的準(zhǔn)確率。

        3.2 實(shí)驗(yàn)設(shè)置

        在實(shí)驗(yàn)中,本文使用768 維的Bert 作為模型的編碼器,其最大長(zhǎng)度設(shè)置為222,在訓(xùn)練階段微調(diào)Bert 預(yù)訓(xùn)練模型的參數(shù);設(shè)置模型使用的Bi-LSTM隱藏層的維度是100,丟失率為0.3,不同子任務(wù)之間的Bi-LSTM 的參數(shù)不共享;設(shè)置迭代次數(shù)為100,批訓(xùn)練次數(shù)為8,每次迭代打亂訓(xùn)練數(shù)據(jù)的順序,學(xué)習(xí)率設(shè)置為0.003,使用Adam 方法優(yōu)化參數(shù)模型。

        3.3 實(shí)驗(yàn)結(jié)果

        表1 給出本文模型和不使用表內(nèi)容的模型在中文數(shù)據(jù)驗(yàn)證集上的實(shí)驗(yàn)結(jié)果,其中,“-表內(nèi)容”表示不使用表內(nèi)容的模型??梢杂^察到在S_col 任務(wù)上,原模型比不使用表內(nèi)容的模型準(zhǔn)確率高出0.021,在W_col 任務(wù)上,比不使用表內(nèi)容的模型高出0.007,結(jié)果表明,結(jié)合表內(nèi)容可以在一定程度上幫助模型預(yù)測(cè)與表內(nèi)容相關(guān)的表列名;原模型在W_val 上高出0.01,這是因?yàn)樵P涂梢酝ㄟ^(guò)表內(nèi)容更好地理解問(wèn)句中的SQL 查詢條件值。例如問(wèn)句“愛情的呼喚這部電影是哪家單位引進(jìn)的”,對(duì)應(yīng)正確的Where 子句是“Where 劇名=愛情呼叫轉(zhuǎn)移and 類別=電影”,結(jié)合表內(nèi)容可以幫助模型預(yù)測(cè)“電影”應(yīng)該作為SQL查詢的條件值,而不是表列名。不使用表內(nèi)容的模型比原模型在Execution 低0.19,在Logic Form 低1.8%,說(shuō)明模型利用Attention 層的Value Attention 注意力機(jī)制,獲得更加準(zhǔn)確的問(wèn)句表達(dá)式,可以更好地幫助下游任務(wù)分類。

        表1 不同模型在中文數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Table 1 Experimental results of different models on the Chinese dataset

        表2 給出不同模型在WikiSQL 驗(yàn)證集和測(cè)試集上的實(shí)驗(yàn)結(jié)果。從表2 可以看出,本文模型的準(zhǔn)確率明顯高于表中前5 個(gè)模型。針對(duì)SQLova 的模型,本文獲取到SQLova 源碼得到的模型由于不知道SQLova 具體的參數(shù),實(shí)驗(yàn)結(jié)果比原文給出的準(zhǔn)確率低。本文模型在驗(yàn)證集上的Logic Form 比SQLova高出0.18,在測(cè)試集高出0.15;在驗(yàn)證集上的Execution Accuracy 比SQLova 模型高出0.14,在測(cè)試集高出0.14。該結(jié)果表明結(jié)合表內(nèi)容和表結(jié)構(gòu)可以有效地提高SQL 生成的準(zhǔn)確率。

        表2 不同模型在WikiSQL 數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Table 2 Experimental results of different models on the WikiSQL dataset%

        4 結(jié)束語(yǔ)

        本文在SQLova 框架下,提出一個(gè)基于表結(jié)構(gòu)及其表內(nèi)容的NL2SQL 模型,利用Column Attention和Value Attention 來(lái)更好地理解用戶問(wèn)句的語(yǔ)義。將序列生成任務(wù)轉(zhuǎn)變成多個(gè)分類任務(wù),通過(guò)填充SQL 草圖生成SQL 查詢。實(shí)驗(yàn)結(jié)果表明,結(jié)合表結(jié)構(gòu)和內(nèi)容可以提升模型生成單表的SQL 語(yǔ)句的準(zhǔn)確率。但該模型暫不能處理結(jié)合生活常識(shí)解決的問(wèn)題,同時(shí)在實(shí)際情況中,用戶提出的問(wèn)題往往需要多張數(shù)據(jù)庫(kù)表來(lái)解決,而多表對(duì)應(yīng)的SQL 查詢會(huì)涉及表名、多張表的連接方式、嵌套查詢以及增加Group、Order 等SQL 關(guān)鍵字的情況。下一步研究方向是處理涉及多表查詢的Spider 數(shù)據(jù)集,利用人們的生活常識(shí)生成SQL 查詢,以更符合實(shí)際應(yīng)用場(chǎng)景。

        猜你喜歡
        子句表達(dá)式準(zhǔn)確率
        命題邏輯中一類擴(kuò)展子句消去方法
        乳腺超聲檢查診斷乳腺腫瘤的特異度及準(zhǔn)確率分析
        健康之家(2021年19期)2021-05-23 11:17:39
        不同序列磁共振成像診斷脊柱損傷的臨床準(zhǔn)確率比較探討
        2015—2017 年寧夏各天氣預(yù)報(bào)參考產(chǎn)品質(zhì)量檢驗(yàn)分析
        命題邏輯可滿足性問(wèn)題求解器的新型預(yù)處理子句消去方法
        一個(gè)混合核Hilbert型積分不等式及其算子范數(shù)表達(dá)式
        表達(dá)式轉(zhuǎn)換及求值探析
        淺析C語(yǔ)言運(yùn)算符及表達(dá)式的教學(xué)誤區(qū)
        高速公路車牌識(shí)別標(biāo)識(shí)站準(zhǔn)確率驗(yàn)證法
        西夏語(yǔ)的副詞子句
        西夏學(xué)(2018年2期)2018-05-15 11:24:42
        中文字幕精品一区二区2021年| 久久精品国产亚洲av麻豆| 五月婷婷开心五月激情| 狠狠色丁香婷婷久久综合2021| 国产成a人亚洲精v品无码性色 | 91极品尤物在线观看播放| 欧美一片二片午夜福利在线快| 四虎影视成人永久免费观看视频| 中文字幕在线看精品乱码 | 亚洲免费观看在线视频| 欧美人妻少妇精品久久黑人| 亚洲天堂二区三区三州| 亚洲国产精品久久性色av| 久久99精品波多结衣一区| 国产成人无码aⅴ片在线观看| 区二区三区玖玖玖| 四虎成人精品在永久免费| 亚洲中文字幕精品久久吃奶| 91大神蜜桃视频在线观看| 精品国偷自产在线不卡短视频 | 亚洲国产AV无码男人的天堂| 小宝极品内射国产在线| 国产69精品久久久久9999apgf| 国产传媒精品成人自拍| 亚洲女同恋中文一区二区| 狠狠色噜噜狠狠狠狠97俺也去| 一国产区在线观看| 国产色a在线观看| 午夜精品久久久久久99热| 日日摸夜夜添夜夜添高潮喷水| 偷拍一区二区三区四区视频| 天天综合色中文字幕在线视频| 欧美熟妇与小伙性欧美交| 亚洲两性视频一三区| 好爽…又高潮了毛片免费看| 在线亚洲午夜理论av大片| 亚洲精品无码av人在线播放| 国产亚洲精品久久久久久国模美 | 亚洲五月七月丁香缴情| 乱中年女人伦av三区| 亚洲精品第一页国产精品|