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

        ?

        基于自然語言處理技術(shù)的政務(wù)智能搜索引擎應(yīng)用探索

        2023-02-12 11:56:34姚俊華湯代佳
        軟件工程 2023年2期
        關(guān)鍵詞:單元格搜索引擎語句

        姚俊華,湯代佳

        (1.深圳市南山區(qū)政務(wù)服務(wù)數(shù)據(jù)管理局,廣東 深圳 518000;2.深圳市聯(lián)合信息技術(shù)有限公司,廣東 深圳 518000)

        1 引言(Introduction)

        隨著“互聯(lián)網(wǎng)+”政務(wù)公開工作的不斷推進(jìn),各級(jí)政府網(wǎng)站的信息數(shù)量快速增加,對(duì)搜索結(jié)果的準(zhǔn)確度要求和搜索引擎的便利度要求進(jìn)一步提高。近年來,人工智能在機(jī)器視覺領(lǐng)域取得了突破進(jìn)展,人工智能與NLP(Natural Language Processing,自然語言處理)結(jié)合的NL2SQL將非專業(yè)用戶查詢數(shù)據(jù)庫的需求直接轉(zhuǎn)換為SQL查詢語句,無須人為構(gòu)造SQL語句再進(jìn)行查詢。

        NL2SQL技術(shù)能有效降低數(shù)據(jù)檢索難度,在國內(nèi)外得到廣泛研究。對(duì)于英文NL2SQL,研究人員先后提出了將輸入語句轉(zhuǎn)為SQL的算法[1-2],增加查詢系統(tǒng)的維度和數(shù)量[3-4],基于語義規(guī)則和動(dòng)名詞列表實(shí)現(xiàn)語句和數(shù)據(jù)庫的映射[5-6];并開發(fā)Analyza系統(tǒng)[7]為缺少SQL基礎(chǔ)的用戶提供自行訪問數(shù)據(jù)的途徑和NL2SQL的相關(guān)系統(tǒng)和算法[8],以此提高自然語言處理和SQL查詢的轉(zhuǎn)換便利度。對(duì)于中文NL2SQL,則有構(gòu)建語義依存樹作為自然語言處理和SQL查詢的中介[9];基于狀態(tài)轉(zhuǎn)換圖的詞法分析和語法分析方法[10],將問題轉(zhuǎn)為SQL語句;構(gòu)建基于Nivre算法的語義依存樹生成模型[11],提出了一種歧義語言的解決方法;提出改進(jìn)單詞提取技術(shù)[12]簡(jiǎn)化自然語言與SQL代碼的轉(zhuǎn)換方法。

        根據(jù)政務(wù)數(shù)據(jù)的應(yīng)用特點(diǎn),基于NL2SQL技術(shù)構(gòu)建了SQL Model(Structured Query Language Model,結(jié)構(gòu)化查詢語言模型),用于自動(dòng)生成SQL語句,并通過設(shè)計(jì)政務(wù)智能搜索引擎系統(tǒng),實(shí)現(xiàn)數(shù)據(jù)搜索并得到結(jié)果。為驗(yàn)證模型有效性,本文采用深圳市人口數(shù)據(jù)的多個(gè)維度信息進(jìn)行實(shí)驗(yàn)。

        2 SQL Model構(gòu)建(SQL model construction)

        此部分主要介紹在單表查詢的場(chǎng)景下完成自然語言處理數(shù)據(jù)庫任務(wù)的SQL Model,它是一種以BERT(Bidirectional Encoder Representations from Transformer,雙向轉(zhuǎn)換的編碼器)模型和GRU(Gate Recurrent Unit,門控循環(huán)單元)模型為基礎(chǔ),融合SQL語法和增強(qiáng)列關(guān)系的神經(jīng)網(wǎng)絡(luò)模型。

        2.1 SQL Model思路

        2.1.1 融合SQL語法

        目前,電子政務(wù)系統(tǒng)主要使用關(guān)系數(shù)據(jù)庫存儲(chǔ)數(shù)據(jù),需要采用SQL語句對(duì)關(guān)系數(shù)據(jù)庫進(jìn)行訪問和處理操作。根據(jù)SQL語法規(guī)則將SQL查詢語句分為查詢列、條件列、聚合符號(hào)、操作符、條件值,分別建立一個(gè)子模型完成預(yù)測(cè),在基于SQL語法規(guī)則建立模塊之間的關(guān)系依賴圖,如圖1所示。

        圖1 SQL語法規(guī)則關(guān)系依賴圖Fig.1 SQL syntax rule dependency graph

        圖1中,信息沿著箭頭的方向在子模型之間傳遞,子模型按照傳遞的順序執(zhí)行。這樣的設(shè)計(jì)既保證模型滿足語法約束,也符合SQL查詢語句編寫過程中的邏輯,模型在更新過程中會(huì)逐漸改進(jìn),使學(xué)習(xí)到的SQL查詢語句符合SQL語法規(guī)則。

        2.1.2 列單元關(guān)系的增強(qiáng)

        在實(shí)際場(chǎng)景中,用戶的表達(dá)同數(shù)據(jù)庫的列名及單元格相比并不總是一致的,這會(huì)導(dǎo)致列名和自然語言表述不一致的問題。列名能夠反映的信息是非常有限的,并且一個(gè)列名也會(huì)有不同的表述方式,這將會(huì)引起列信息不足的問題,即自然語言處理難以預(yù)測(cè)SQL語句需要操作的表列。

        單元格信息是表列的具體表示,表列名是對(duì)該列所有單元格信息的概括。由于表列信息不足,因此經(jīng)常出現(xiàn)僅通過列名不能獲悉正確且具體的列信息,導(dǎo)致提取的數(shù)據(jù)錯(cuò)誤,無法滿足用戶需求。針對(duì)以上問題,采用的解決方案是將單元格信息加入表列信息中。已有一些學(xué)者將單元格信息加入表列中,比如將單元格向量和表列向量拼接為新的表列表示,其中單元格向量由以單元格的共現(xiàn)次數(shù)作為權(quán)重得到[6]。這種加入單元格信息的方式對(duì)模型的性能有一定的提升,但存在引入噪聲單元格的可能性。

        通過注意力機(jī)制在表列信息中加入單元格信息,通過模型自動(dòng)學(xué)習(xí)得出信息增強(qiáng)的列,而不是簡(jiǎn)單的信息計(jì)算與拼接。由于BERT模型具有自我注意力機(jī)制的核心計(jì)算方式,故不需要額外搭建自我注意力機(jī)制模塊,從而降低了SQL Model的復(fù)雜度,提高了模型的優(yōu)化效率,加快了模型的優(yōu)化速度。

        2.2 SQL Model結(jié)構(gòu)

        在SQL Model中實(shí)現(xiàn)了融合SQL語法和增強(qiáng)列單元關(guān)系,整個(gè)模型分為共享層和子任務(wù)層,模型的結(jié)構(gòu)如圖2所示。自然語言問題、表列信息和共現(xiàn)單元格信息先傳入共享層,由BERT和BI-GRU(Bi-directional Gated Recurrent Unit,雙向門控循環(huán)單元)學(xué)習(xí)到語義信息,并增強(qiáng)列單元格信息。共享層學(xué)習(xí)到的語義信息再傳輸?shù)阶尤蝿?wù)層,融合SQL語法,本模型將按照關(guān)系依賴圖依順序執(zhí)行子模型,組合所有子模型的預(yù)測(cè)結(jié)果即為最終的SQL查詢語句,SQL Model框架如圖2所示。

        圖2 SQL Model框架Fig.2 SQL model framework

        2.2.1 共享層

        共享層主要是進(jìn)行信息融合和特征提取,由BERT和BIGRU構(gòu)成。首先將自然語言問題、表列和共現(xiàn)單元格輸入BERT完成信息融合和初步的特征提取,然后通過BI-GRU完成更深層次的特征提取工作。

        對(duì)于給定的一個(gè)表格和自然語言問題,希望生成問題對(duì)應(yīng)的SQL查詢語句。使用BERT編碼器對(duì)輸入進(jìn)行編碼,對(duì)于輸入的每個(gè)單詞的字典索引,編碼器都能產(chǎn)生相對(duì)應(yīng)的輸出向量,BERT的自注意力機(jī)制可以將單元格信息融合到表列信息中,實(shí)現(xiàn)對(duì)表列的增強(qiáng)。

        得到BERT模型的輸出之后,使用兩個(gè)BI-GRU分別完成自然語言問題和表列信息的提取,這兩個(gè)BI-GRU的工作方式不完全相同。如圖3所示,在自然語言問題上運(yùn)行BIGRU,能得到每個(gè)時(shí)間節(jié)點(diǎn)的輸出;對(duì)于表列,每一個(gè)列都運(yùn)行BI-GRU模型,并且只保留最后一個(gè)時(shí)刻的輸出。

        圖3 BI-GRU完成深層次的特征提取Fig.3 Completion of deep feature extraction by BI-GRU

        BERT和BI-GRU組合成為共享層,能夠進(jìn)行信息融合和特征提取,輸出自然語言問題及表列問題的特征向量,將這些特征向量輸入子任務(wù)層以完成SQL查詢語句的生成任務(wù)。

        2.2.2 子任務(wù)層

        SQL查詢語句的生成任務(wù)可以分成四個(gè)子模塊,分別為條件數(shù)子模型、條件列子模型、操作符子模型和查詢列子模型。每個(gè)模塊完成對(duì)應(yīng)的功能,將每個(gè)模塊的預(yù)測(cè)結(jié)果進(jìn)行合并得到最終的預(yù)測(cè)結(jié)果。

        整體的預(yù)測(cè)流程如下:首先,對(duì)條件數(shù)進(jìn)行預(yù)測(cè),即預(yù)測(cè)WHERE(SQL中用于規(guī)定選擇標(biāo)準(zhǔn)的語法)子句的條件數(shù)量。其次,模型開始預(yù)測(cè)WHERE子句中每個(gè)條件的條件列、操作符及列值。最后,執(zhí)行SELECT(SQL中用于從數(shù)據(jù)庫中選擇數(shù)據(jù)的子句)子句部分,并引入條件列的信息。執(zhí)行完所有的模塊之后,將預(yù)測(cè)結(jié)果進(jìn)行組合得到最終的SQL查詢語句。

        (1)條件數(shù)子模型

        確定查詢語句的第一步是要預(yù)測(cè)WHERE語句的條件數(shù),本文采用的條件數(shù)個(gè)數(shù)為0—4,將本問題看作一個(gè)五分類的問題。本任務(wù)需要預(yù)測(cè)與自然語言問題相關(guān)聯(lián)的表列,所以需要將自然語言問題與表列信息進(jìn)行深度融合。

        對(duì)條件數(shù)進(jìn)行預(yù)測(cè)具體包括以下步驟。

        步驟5:將表列向量Tw-num作為GRU的初始化向量,并將自然語言問題HQ輸入GRU中,得到融合率表列信息的自然語言問題向量序列。

        步驟6:在問題表示上應(yīng)用一個(gè)多層的感知器,得到SQL查詢語句中概率最大的條件數(shù)Kw-num,如式(2)所示。

        其中,W1、W2、W3都是模型的訓(xùn)練參數(shù)。

        (2)條件列子模型

        該子模塊的任務(wù)是對(duì)條件列進(jìn)行預(yù)測(cè),是整個(gè)WHERE子句中最重要的部分。關(guān)鍵在于預(yù)測(cè)表列是如何學(xué)習(xí)出自然語言問題與該列的相關(guān)信息,具體步驟如下。

        步驟1:計(jì)算自然語言問題中每個(gè)詞關(guān)于每個(gè)表列的注意力得分矩陣,如式(3)所示。

        步驟2:在矩陣Vw-col上,應(yīng)用softmax 函數(shù),如式(4)所示。

        步驟3:通過哈達(dá)馬計(jì)算進(jìn)行加權(quán),如式(5)所示。

        步驟4:對(duì)Mw-col在第二維度進(jìn)行求和得到自然語言問題關(guān)于表列信息,如式(6)所示。

        步驟5:將注意力信息表示和表列表示在最后一個(gè)維度進(jìn)行拼接,如式(7)所示。

        步驟6:通過relu 函數(shù)和softmax 函數(shù)獲取條件列的最終預(yù)測(cè)pw-col,如式(8)所示。

        公式中的W4、W5、W6、W7都是模型的訓(xùn)練參數(shù)。根據(jù)條件數(shù)的預(yù)測(cè)結(jié)果,選擇前K個(gè)概率最高的列作為條件列的最終預(yù)測(cè)結(jié)果。

        (3)操作符子模型

        該模塊是對(duì)條件列的操作符進(jìn)行預(yù)測(cè),本文的數(shù)據(jù)集的操作符只有(<,>,=),所以可以將該任務(wù)視為一個(gè)三分類問題。在自然語言問題和條件列已知的情況下,只需要計(jì)算它們之間的注意力信息。

        對(duì)于注意力信息的計(jì)算,首先從共享層學(xué)習(xí)到的表列矩陣HT中提取得到條件列的向量表示,組成一個(gè)新的表列矩陣,其中每一行表示為一個(gè)條件列的特征,當(dāng)預(yù)測(cè)的條件列個(gè)數(shù)少于4時(shí),把不足4的行用數(shù)字零進(jìn)行填充;并通過式(6)對(duì)這個(gè)新的表列矩陣進(jìn)行列注意力機(jī)制計(jì)算,然后參照式(7)進(jìn)行向量拼接,最終計(jì)算得到操作符,如式(9)所示。

        (4)查詢列子模型

        該查詢列子模型的任務(wù)是對(duì)查詢列進(jìn)行預(yù)測(cè),查詢列與條件列的任務(wù)相似,兩者的區(qū)別在于條件列查詢的結(jié)果只有一列,而查詢列子模型查詢的結(jié)果可以是多列,即將本任務(wù)看作一個(gè)N分類問題,N代表當(dāng)前表格的列數(shù),該子模型的關(guān)鍵是通過學(xué)習(xí)得出自然語言問題,并按照每個(gè)表列信息進(jìn)行表示。

        首先通過執(zhí)行式(3)—式(6)的列注意力機(jī)制得到注意力信息;其次將條件列的信息Ew-col引入這個(gè)查詢列子模型中,采用拼接的方式將條件列信息、表列信息和注意力信息在第二個(gè)維度進(jìn)行拼接,得到最后通過relu 函數(shù)和softmax 函數(shù)得到查詢列的最終預(yù)測(cè),如式(10)所示。

        3 政務(wù)智能搜索引擎系統(tǒng)(Intelligent search engine system design for government affairs)

        3.1 NL2SQL技術(shù)

        NL2SQL屬于語義分析的子領(lǐng)域,其本質(zhì)是將自然輸入語言問句轉(zhuǎn)換成計(jì)算機(jī)可讀懂、可執(zhí)行、符合計(jì)算機(jī)規(guī)則的語義表示,使計(jì)算機(jī)理解自然語言,并能夠準(zhǔn)確生成表達(dá)語句語義的可執(zhí)行程序式語言。NL2SQL具有廣闊的應(yīng)用場(chǎng)景,一方面可用于基于結(jié)構(gòu)化知識(shí)的智能交互(問答),通過提取用戶提問中的時(shí)點(diǎn)、地點(diǎn)、事件等多個(gè)維度的信息,完成檢索需求,解決復(fù)雜的多維度問題;另一方面可用于搜索引擎優(yōu)化,在搜索時(shí)區(qū)別對(duì)待常規(guī)文本和表格文本,提高搜索引擎的智能化程度。NL2SQL的應(yīng)用改善了用戶體驗(yàn),讓用戶使用感更好,能夠更方便快捷地獲得信息服務(wù)。此外,可以有效激活企業(yè)數(shù)據(jù)庫的知識(shí)價(jià)值,讓數(shù)據(jù)庫直接通過人工智能為用戶服務(wù),減少專業(yè)人員和中間流程引入的信息壁壘。

        3.2 政務(wù)智能搜索引擎系統(tǒng)設(shè)計(jì)

        政務(wù)智能搜索引擎系統(tǒng),以SQL Model算法為基礎(chǔ),整體可以分為前端服務(wù)、后端平臺(tái)、解析引擎及執(zhí)行引擎四個(gè)模塊。其中,解析引擎是NL2SQL系統(tǒng)的核心功能部件,包括信息抽取、表格篩選、模型編輯及指令編輯四個(gè)子模塊,通過將用戶搜索需求輸入解析引擎,解析引擎根據(jù)用戶搜索需求生成對(duì)應(yīng)的SQL指令,如圖4所示。

        圖4 智能搜索引擎系統(tǒng)流程圖Fig.4 Flow chart of intelligent search engine system

        在搜索需求輸入模型之前,系統(tǒng)先對(duì)其中的關(guān)鍵信息進(jìn)行抽取,該信息可以用于表格的篩選。雖然理論上SQL Model可以編碼多張表格,但是為了提高系統(tǒng)的性能,通常會(huì)對(duì)所有的表格先進(jìn)行一次預(yù)篩選。預(yù)篩選的方式是用問句中抽取出的信息對(duì)所有表的表名及表頭進(jìn)行檢索,召回頭部的表格再送入模型中。系統(tǒng)完成對(duì)數(shù)據(jù)檢索后,將數(shù)據(jù)應(yīng)用形態(tài)進(jìn)行呈現(xiàn)。例如,當(dāng)有關(guān)部門無法通過自行操作相關(guān)頁面獲得數(shù)據(jù)時(shí),就可以通過智能搜索引擎直接輸入“南山區(qū)人口數(shù)據(jù)”,此時(shí)后臺(tái)能自動(dòng)得出數(shù)據(jù),輸出數(shù)據(jù)結(jié)果如圖5所示。

        圖5 智能搜索引擎界面Fig.5 Interface of intelligent search engine

        例如,有關(guān)部門如需在征兵季了解南山轄區(qū)內(nèi)適齡男性的數(shù)量,就可以在系統(tǒng)中輸入“南山區(qū)人口年齡分布情況”和“南山區(qū)人口街道分布情況”進(jìn)行搜索。對(duì)于搜索方式,通常做法是開發(fā)公司在后臺(tái)數(shù)據(jù)庫中用SQL語句進(jìn)行處理和統(tǒng)計(jì)得到相關(guān)的數(shù)據(jù)。而通過政務(wù)智能搜索引擎系統(tǒng),用戶不僅可以基于搜索數(shù)據(jù)結(jié)果獲取相關(guān)信息,還可以向下鉆取詳細(xì)數(shù)據(jù),通過表格、圖形等方式直觀地展示數(shù)據(jù)結(jié)果,如圖6所示。

        圖6 政務(wù)智能搜索引擎系統(tǒng)搜索結(jié)果Fig.6 Search results of intelligent search engine system

        基于NL2SQL技術(shù)搭建了政務(wù)智能搜索引擎系統(tǒng),業(yè)務(wù)部門可以直接在搜索界面上輸入自然語言查詢語句,NL2SQL會(huì)自動(dòng)在后臺(tái)將輸入的自然語言查詢語句轉(zhuǎn)化為SQL語句后直接執(zhí)行SQL語句,最后獲得數(shù)據(jù)并顯示數(shù)據(jù),如圖7所示。

        圖7 NL2SQL總體流程圖Fig.7 NL2SQL overall flow chart

        利用NL2SQL技術(shù)搭建政務(wù)智能搜索引擎,可以提高政務(wù)數(shù)據(jù)搜索效率,降低數(shù)據(jù)應(yīng)用的復(fù)雜度。本文結(jié)合數(shù)據(jù)治理技術(shù)理論和政務(wù)大數(shù)據(jù)搜索實(shí)際場(chǎng)景,提出政務(wù)智能搜索引擎技術(shù)框架,探索智能搜索應(yīng)用新模式,可為開發(fā)和構(gòu)建政務(wù)智能搜索引擎提供新的思路和具體的實(shí)現(xiàn)途徑。

        4 結(jié)論(Conclusion)

        在人工智能和大數(shù)據(jù)技術(shù)高速發(fā)展的背景下,深度學(xué)習(xí)技術(shù)與各個(gè)領(lǐng)域的融合逐漸加深,自然語言處理領(lǐng)域中,傳統(tǒng)的方法需要在后臺(tái)數(shù)據(jù)庫中用SQL語句進(jìn)行處理統(tǒng)計(jì),效率低,不能滿足用戶需求,而使用深度學(xué)習(xí)技術(shù)與自然語言處理領(lǐng)域相結(jié)合的方法可以快速且直觀地將數(shù)據(jù)呈現(xiàn)給用戶,并且數(shù)據(jù)的呈現(xiàn)方式多樣化,符合用戶的不同需求。本文通過構(gòu)建SQL Model,將自然語言問題轉(zhuǎn)化為查詢語句應(yīng)用于政務(wù)智能搜索引擎系統(tǒng)。

        目前,NL2SQL還是一個(gè)比較新的技術(shù),尤其是將其應(yīng)用到電子政務(wù)領(lǐng)域,是一次創(chuàng)新性探索。通過將NL2SQL技術(shù)與實(shí)際業(yè)務(wù)需求相結(jié)合,能夠有效地提升相關(guān)部門的行政工作效率。本文在保證數(shù)據(jù)安全、數(shù)據(jù)權(quán)限可控的基礎(chǔ)上,圍繞NL2SQL技術(shù)應(yīng)用的關(guān)鍵難點(diǎn)和場(chǎng)景要求,開發(fā)了政務(wù)智能搜索引擎,采用用戶提出自然語言搜索需求,解析引擎將自然語言搜索需求轉(zhuǎn)換成SQL語言搜索需求的應(yīng)用方式,將用戶的自然語言輸入轉(zhuǎn)化為可用的SQL語句,然后自動(dòng)輸出用戶所需的數(shù)據(jù),在降低數(shù)據(jù)應(yīng)用復(fù)雜度的同時(shí),也實(shí)現(xiàn)了一切數(shù)據(jù)皆可查的目的,并且支持多維度復(fù)雜查詢,使得業(yè)務(wù)部門數(shù)據(jù)搜索應(yīng)用難度降低,極大地提高了政務(wù)數(shù)據(jù)搜索效率。

        猜你喜歡
        單元格搜索引擎語句
        重點(diǎn):語句銜接
        玩轉(zhuǎn)方格
        玩轉(zhuǎn)方格
        淺談Excel中常見統(tǒng)計(jì)個(gè)數(shù)函數(shù)的用法
        西部皮革(2018年6期)2018-05-07 06:41:07
        精彩語句
        網(wǎng)絡(luò)搜索引擎亟待規(guī)范
        基于Nutch的醫(yī)療搜索引擎的研究與開發(fā)
        廣告主與搜索引擎的雙向博弈分析
        如何搞定語句銜接題
        作文語句實(shí)錄
        日本午夜a级理论片在线播放| 精品一区二区三区在线观看视频| 人妻有码中文字幕| 中文字幕无码免费久久| 极品av在线播放| 一区二区日本影院在线观看| 久久久精品国产av麻豆樱花| 青青青免费在线视频亚洲视频| 精品人妻av一区二区三区| 亚洲av日韩av天堂一区二区三区| 亚洲伊人久久大香线蕉影院| 2021久久精品国产99国产| 国产精品亚洲一区二区三区正片| 成人自拍小视频在线看| √新版天堂资源在线资源| 国产精品一区二区暴白浆| 国产一级淫片免费播放电影| 亚洲视频在线播放免费视频| 青青草小视频在线观看| 色天使综合婷婷国产日韩av| 久久网视频中文字幕综合 | 中文字幕这里都是精品| 日韩熟女系列中文字幕| 国产成人精品无码免费看| av免费网址在线观看| 亚洲暴爽av天天爽日日碰| 国产精品国产午夜免费看福利| 日本系列有码字幕中文字幕| 精品无码国产一区二区三区av | 日本道免费精品一区二区| 色婷婷亚洲精品综合影院| 午夜精品射精入后重之免费观看| 久久婷婷色综合一区二区 | 国产真人无遮挡免费视频| 亚洲一级无码AV毛片久久 | 亚洲区1区3区4区中文字幕码| 丰满精品人妻一区二区| 无码国内精品久久人妻| 亚洲av无码第一区二区三区 | 亚洲视一区二区三区四区| 在线观看午夜视频国产|