綜述:基于LLM的數(shù)據(jù)查詢與可視化
這是一篇關(guān)于自然語言在表格數(shù)據(jù)查詢和可視化方面的綜述。該綜述全面概述如何通過自然語言實(shí)現(xiàn)表格數(shù)據(jù)查詢和可視化,使用戶能夠使用自然語言查詢與數(shù)據(jù)進(jìn)行交互。介紹了可視化背后的基本概念和技術(shù),特別強(qiáng)調(diào)了語義解析這一關(guān)鍵技術(shù),它有助于將自然語言轉(zhuǎn)換為 SQL 查詢并實(shí)現(xiàn)數(shù)據(jù)可視化。然后深入探討了 Text-to-SQL 和 Text-to-Vis 問題在數(shù)據(jù)集、方法、指標(biāo)和系統(tǒng)設(shè)計(jì)方面的最新進(jìn)展,包括深入研究大型語言模型的影響,突出其優(yōu)勢(shì)、局限性和未來改進(jìn)的潛力。通過該綜述,旨在為對(duì)在大型語言模型時(shí)代通過自然語言對(duì)數(shù)據(jù)查詢和可視化感興趣的研究人員和從業(yè)者提供路線圖。
1引言
1.1 研究背景與動(dòng)機(jī)
隨著信息技術(shù)的飛速發(fā)展,數(shù)據(jù)在現(xiàn)代社會(huì)中呈現(xiàn)出爆炸式增長(zhǎng),其在商業(yè)、醫(yī)療、科研等諸多領(lǐng)域的重要性日益凸顯。結(jié)構(gòu)化數(shù)據(jù),特別是表格數(shù)據(jù),因其簡(jiǎn)潔明了、易于組織和分析的特點(diǎn),成為了存儲(chǔ)和傳達(dá)信息的重要方式。然而,傳統(tǒng)的表格數(shù)據(jù)交互手段,如結(jié)構(gòu)化查詢語言(SQL)和手動(dòng)繪制可視化圖表,對(duì)用戶的技術(shù)能力要求較高。這使得許多非技術(shù)背景的人員在面對(duì)海量表格數(shù)據(jù)時(shí),難以從中獲取有價(jià)值的信息,從而限制了數(shù)據(jù)的廣泛應(yīng)用和價(jià)值挖掘。
自然語言處理技術(shù)的出現(xiàn)為解決這一困境提供了新的契機(jī)。通過自然語言接口,用戶可以使用日常語言與表格數(shù)據(jù)進(jìn)行交互,無需掌握復(fù)雜的查詢語法或?qū)I(yè)的可視化設(shè)計(jì)知識(shí)。這不僅極大地降低了數(shù)據(jù)交互的門檻,使更多人能夠受益于數(shù)據(jù)驅(qū)動(dòng)的決策過程,還為數(shù)據(jù)探索和分析帶來了更高的效率和靈活性。例如,企業(yè)決策者可以直接詢問“過去一年中銷售額最高的產(chǎn)品類別是什么”,而無需編寫繁瑣的 SQL 查詢語句;科研人員可以輕松獲取“特定實(shí)驗(yàn)條件下各項(xiàng)指標(biāo)的變化趨勢(shì)”,并以直觀的可視化圖表進(jìn)行展示。這種變革性的交互方式有望打破技術(shù)壁壘,釋放表格數(shù)據(jù)的巨大潛力,推動(dòng)各行業(yè)的創(chuàng)新與發(fā)展。
1.2 自然語言接口的關(guān)鍵技術(shù)
自然語言接口的核心在于實(shí)現(xiàn)自然語言與表格數(shù)據(jù)之間的有效轉(zhuǎn)換,而這一過程依賴于多種關(guān)鍵技術(shù),
其中語義解析技術(shù)尤為重要。語義解析是將自然語言查詢準(zhǔn)確轉(zhuǎn)換為可在結(jié)構(gòu)化數(shù)據(jù)庫上執(zhí)行的形式化表示的過程。在眾多形式語言和功能表示中,SQL和可視化規(guī)范在表格數(shù)據(jù)交互領(lǐng)域占據(jù)著主導(dǎo)地位。
SQL作為關(guān)系數(shù)據(jù)庫管理系統(tǒng)的標(biāo)準(zhǔn)查詢語言,具備強(qiáng)大的表達(dá)能力,能夠精確地描述數(shù)據(jù)檢索和操作的邏輯。它允許用戶從數(shù)據(jù)庫中選擇特定的列、篩選滿足條件的數(shù)據(jù)行、對(duì)數(shù)據(jù)進(jìn)行聚合計(jì)算等。例如,對(duì)于一個(gè)包含銷售數(shù)據(jù)的表格,用戶可以通過 SQL 查詢獲取特定時(shí)間段內(nèi)某類產(chǎn)品的銷售總額,如
SELECT SUM(sales) FROM table
WHERE product_category = 'electronics'
AND time_period BETWEEN '2023-01-01' AND '2023-12-31
可視化規(guī)范則專注于定義數(shù)據(jù)如何以直觀的圖表形式呈現(xiàn)給用戶。不同類型的圖表適用于展示不同類型的數(shù)據(jù)特征,如柱狀圖用于比較不同類別數(shù)據(jù)的大小,折線圖用于呈現(xiàn)數(shù)據(jù)隨時(shí)間的變化趨勢(shì),餅圖用于展示各部分?jǐn)?shù)據(jù)占總體的比例關(guān)系等。通過將自然語言查詢轉(zhuǎn)換為可視化規(guī)范,系統(tǒng)可以自動(dòng)生成符合用戶需求的圖表,幫助用戶更直觀地理解數(shù)據(jù)背后的信息。
在實(shí)際應(yīng)用中,數(shù)據(jù)查詢和可視化往往緊密結(jié)合。查詢是可視化的基礎(chǔ),只有獲取到準(zhǔn)確的數(shù)據(jù),才能進(jìn)行有效的可視化呈現(xiàn)。例如,在分析市場(chǎng)趨勢(shì)時(shí),首先需要查詢相關(guān)時(shí)間段內(nèi)的銷售數(shù)據(jù),然后根據(jù)數(shù)據(jù)特點(diǎn)選擇合適的圖表類型(如折線圖)進(jìn)行可視化展示,從而清晰地呈現(xiàn)出市場(chǎng)的變化趨勢(shì)。這種緊密的結(jié)合使得用戶能夠從多個(gè)角度探索和理解表格數(shù)據(jù),為決策提供有力支持。
1.3 研究問題與目標(biāo)
本研究旨在全面深入地探討自然語言接口在表格數(shù)據(jù)查詢和可視化方面的一系列關(guān)鍵問題,為該領(lǐng)域的進(jìn)一步發(fā)展提供清晰的路線圖。
首先,我們關(guān)注自然語言接口的演進(jìn)歷程,詳細(xì)研究其從早期的簡(jiǎn)單形式到如今基于先進(jìn)技術(shù)的復(fù)雜系統(tǒng)的發(fā)展過程,揭示推動(dòng)這一發(fā)展的技術(shù)變革和應(yīng)用需求。
其次,深入剖析數(shù)據(jù)查詢與可視化這兩項(xiàng)關(guān)鍵任務(wù)之間的內(nèi)在聯(lián)系,探索如何從語義解析的角度實(shí)現(xiàn)二者的無縫統(tǒng)一。這包括研究如何設(shè)計(jì)統(tǒng)一的語義表示,使得自然語言能夠同時(shí)驅(qū)動(dòng)數(shù)據(jù)查詢和可視化操作,以及如何優(yōu)化解析過程,提高轉(zhuǎn)換的準(zhǔn)確性和效率。
再者,全面評(píng)估現(xiàn)有自然語言接口方法的優(yōu)缺點(diǎn),尤其著重分析大語言模型( LLMs )對(duì)該領(lǐng)域的深遠(yuǎn)影響。我們將研究 LLMs 在處理自然語言查詢時(shí)的優(yōu)勢(shì),如強(qiáng)大的語言理解能力和廣泛的知識(shí)儲(chǔ)備,以及其面臨的挑戰(zhàn),如可解釋性差、對(duì)特定領(lǐng)域知識(shí)的理解有限等。同時(shí),探討如何充分發(fā)揮 LLMs 的潛力,克服其局限性,推動(dòng)自然語言接口性能的進(jìn)一步提升。
通過對(duì)這些問題的深入研究,我們希望為從事自然語言接口研究和開發(fā)的人員提供有價(jià)值的參考,幫助他們?cè)诖笳Z言模型時(shí)代更好地設(shè)計(jì)和應(yīng)用自然語言接口,促進(jìn)表格數(shù)據(jù)的高效利用和知識(shí)發(fā)現(xiàn),推動(dòng)相關(guān)領(lǐng)域的創(chuàng)新與發(fā)展。
2.背景與框架
2.1 工作流程
圖 1:用于表格數(shù)據(jù)查詢和可視化的自然語言接口的示意圖表示
自然語言接口的工作流程猶如一座精密的橋梁,連接著用戶與表格數(shù)據(jù),實(shí)現(xiàn)了從自然語言查詢到數(shù)據(jù)結(jié)果呈現(xiàn)的無縫轉(zhuǎn)換。
用戶首先以自然語言問題的形式輸入查詢請(qǐng)求,例如“查詢本季度電子產(chǎn)品的銷售數(shù)據(jù),并以柱狀圖展示銷售額最高的前三種產(chǎn)品”。接口接收到用戶輸入后,立即啟動(dòng)預(yù)處理步驟。在這個(gè)階段,系統(tǒng)會(huì)對(duì)輸入的自然語言進(jìn)行清洗,去除噪聲和無關(guān)信息,如多余的標(biāo)點(diǎn)符號(hào)、停用詞等。接著進(jìn)行分詞操作,將句子拆分成一個(gè)個(gè)單詞或詞語,以便后續(xù)處理。然后進(jìn)行詞性標(biāo)注,確定每個(gè)詞的詞性,如名詞、動(dòng)詞、形容詞等。這些預(yù)處理步驟有助于提取關(guān)鍵信息,為后續(xù)的語義解析提供更清晰的輸入。
語義解析器是整個(gè)流程的核心組件,它負(fù)責(zé)將預(yù)處理后的自然語言查詢轉(zhuǎn)換為相應(yīng)的功能表示。如果是數(shù)據(jù)查詢?nèi)蝿?wù),語義解析器會(huì)根據(jù)數(shù)據(jù)庫 schema 和語言理解生成 SQL 查詢語句,如
SELECT product_name, sales FROM sales_table
WHERE product_category = 'electronics'
AND quarter = 'Q4' ORDER BY sales DESC
LIMIT 3
如果是可視化任務(wù),它會(huì)生成可視化規(guī)范,包括圖表類型(柱狀圖)、數(shù)據(jù)字段(產(chǎn)品名稱、銷售額)、排序方式(按銷售額降序)等信息。
執(zhí)行引擎根據(jù)語義解析器生成的功能表示與數(shù)據(jù)庫進(jìn)行交互。對(duì)于 SQL 查詢,執(zhí)行引擎會(huì)在數(shù)據(jù)庫中執(zhí)行查詢操作,檢索出符合條件的數(shù)據(jù)。對(duì)于可視化規(guī)范,執(zhí)行引擎會(huì)調(diào)用相應(yīng)的可視化庫或工具,根據(jù)規(guī)范生成可視化圖表。
最后,接口將查詢結(jié)果或可視化圖表呈現(xiàn)給用戶。如果是數(shù)據(jù)查詢結(jié)果,可能以表格形式展示;如果是可視化圖表,則以直觀的圖形方式呈現(xiàn)。用戶可以根據(jù)呈現(xiàn)的結(jié)果進(jìn)一步提出問題或進(jìn)行深入分析,從而實(shí)現(xiàn)與表格數(shù)據(jù)的交互循環(huán)。
圖 2.將自然語言查詢轉(zhuǎn)換為 SQL 和銷售數(shù)據(jù)可視化規(guī)范的過程示例。有關(guān)季度銷售額的文本查詢被解析為 SQL 命令以獲取數(shù)字?jǐn)?shù)據(jù),而對(duì)銷售可視化的請(qǐng)求被轉(zhuǎn)換為相應(yīng)的條形圖規(guī)范。
2.2 問題定義
在自然語言接口中,功能表示形式多樣,每種形式都在特定的數(shù)據(jù)交互場(chǎng)景中發(fā)揮著不可或缺的作用。
SQL 作為關(guān)系數(shù)據(jù)庫查詢的核心語言,具有強(qiáng)大的功能和廣泛的應(yīng)用。它能夠精確地指定從數(shù)據(jù)庫中檢索數(shù)據(jù)的條件、要返回的列以及數(shù)據(jù)的排序方式等。通過SQL,用戶可以執(zhí)行各種復(fù)雜的數(shù)據(jù)查詢操作,如多表連接查詢,用于獲取來自多個(gè)相關(guān)表格的數(shù)據(jù);子查詢,用于在查詢中嵌套其他查詢以實(shí)現(xiàn)更精細(xì)的篩選;數(shù)據(jù)聚合操作,如計(jì)算總和、平均值、計(jì)數(shù)等。例如,在一個(gè)包含銷售數(shù)據(jù)、產(chǎn)品信息和客戶信息的數(shù)據(jù)庫中,用戶可以使用 SQL 查詢獲取特定地區(qū)、特定時(shí)間段內(nèi)購買了特定產(chǎn)品的客戶數(shù)量,以及這些客戶的平均消費(fèi)金額等信息。
可視化規(guī)范則專注于數(shù)據(jù)的可視化呈現(xiàn),將數(shù)據(jù)轉(zhuǎn)換為直觀易懂的圖表形式。常見的可視化圖表類型包括柱狀圖、折線圖、餅圖、散點(diǎn)圖等,每種類型都適用于展示不同類型的數(shù)據(jù)特征。柱狀圖適用于比較不同類別數(shù)據(jù)的大小,如比較不同產(chǎn)品類別的銷售額;折線圖用于展示數(shù)據(jù)隨時(shí)間或其他連續(xù)變量的變化趨勢(shì),如觀察某產(chǎn)品在過去幾個(gè)季度的銷售趨勢(shì);餅圖用于呈現(xiàn)各部分?jǐn)?shù)據(jù)占總體的比例關(guān)系,如展示各產(chǎn)品類別在總銷售額中的占比;散點(diǎn)圖則用于探索兩個(gè)變量之間的關(guān)系,如分析產(chǎn)品價(jià)格與銷售量之間的相關(guān)性??梢暬?guī)范不僅定義了圖表的類型,還包括數(shù)據(jù)的映射方式、坐標(biāo)軸的標(biāo)簽、顏色的選擇等細(xì)節(jié),以確保生成的圖表能夠準(zhǔn)確傳達(dá)數(shù)據(jù)的信息。
除了 SQL 和可視化規(guī)范,還有其他一些形式的功能表示也在自然語言接口中發(fā)揮著作用。例如,Prolog 和 Datalog 等邏輯編程語言可以用于定義數(shù)據(jù)之間的邏輯關(guān)系和規(guī)則,適用于一些需要進(jìn)行邏輯推理和知識(shí)表示的場(chǎng)景。FunQL 作為一種中間查詢語言,強(qiáng)調(diào)將自然語言構(gòu)造映射為結(jié)構(gòu)化查詢,注重實(shí)體之間的關(guān)系表達(dá),為自然語言到數(shù)據(jù)庫查詢的轉(zhuǎn)換提供了另一種思路。這些不同形式的功能表示相互補(bǔ)充,為自然語言接口提供了豐富的表達(dá)方式,以適應(yīng)不同類型的數(shù)據(jù)查詢和可視化需求。
2.3 框架
自然語言接口的框架由多個(gè)關(guān)鍵組件構(gòu)成,這些組件協(xié)同工作,共同實(shí)現(xiàn)了自然語言與表格數(shù)據(jù)之間的高效交互。
圖 3:表格數(shù)據(jù)查詢和可視化中的自然語言接口框架。該技術(shù)框架包括各種關(guān)鍵組件:功能表示、數(shù)據(jù)集、方法、評(píng)估指標(biāo)和系統(tǒng)設(shè)計(jì)。
2.3.1 數(shù)據(jù)集
數(shù)據(jù)集是自然語言接口的重要基礎(chǔ),它為模型的訓(xùn)練和評(píng)估提供了數(shù)據(jù)支持。數(shù)據(jù)集的質(zhì)量和多樣性直接影響著模型的性能。高質(zhì)量的數(shù)據(jù)集應(yīng)包含豐富多樣的自然語言查詢和對(duì)應(yīng)的正確功能表示,涵蓋不同領(lǐng)域、不同復(fù)雜度的查詢場(chǎng)景,以幫助模型學(xué)習(xí)到廣泛的語言表達(dá)和數(shù)據(jù)操作模式。例如,一個(gè)好的數(shù)據(jù)集可能包含來自商業(yè)、醫(yī)療、科研等多個(gè)領(lǐng)域的表格數(shù)據(jù)查詢,包括簡(jiǎn)單的單表查詢、復(fù)雜的多表連接查詢以及涉及數(shù)據(jù)聚合和篩選的查詢等。同時(shí),數(shù)據(jù)集還可以分為單輪數(shù)據(jù)集和多輪數(shù)據(jù)集,單輪數(shù)據(jù)集用于處理單個(gè)獨(dú)立的查詢,而多輪數(shù)據(jù)集則模擬用戶與系統(tǒng)之間的對(duì)話式交互,包含一系列相關(guān)的查詢序列,有助于模型理解上下文信息,提高處理連續(xù)查詢的能力。
2.3.2 方法
方法是實(shí)現(xiàn)自然語言接口的核心技術(shù)手段,涵蓋了從傳統(tǒng)方法到現(xiàn)代先進(jìn)技術(shù)的演進(jìn)。傳統(tǒng)方法主要包括基于規(guī)則的方法,如通過預(yù)定義的規(guī)則和模式將自然語言查詢轉(zhuǎn)換為功能表示。這種方法簡(jiǎn)單直接,在早期的自然語言接口中得到了廣泛應(yīng)用,但對(duì)于復(fù)雜多變的自然語言表達(dá),其靈活性和適應(yīng)性較差。隨著神經(jīng)網(wǎng)絡(luò)技術(shù)的發(fā)展,基于神經(jīng)網(wǎng)絡(luò)的方法逐漸興起。這些方法利用深度學(xué)習(xí)模型,如序列到序列模型,學(xué)習(xí)自然語言與功能表示之間的映射關(guān)系。神經(jīng)網(wǎng)絡(luò)方法具有強(qiáng)大的學(xué)習(xí)能力,能夠自動(dòng)捕捉數(shù)據(jù)中的復(fù)雜模式,但需要大量的訓(xùn)練數(shù)據(jù)和計(jì)算資源。近年來,大語言模型( LLMs )的出現(xiàn)為自然語言接口帶來了新的突破。LLMs 基于大規(guī)模的預(yù)訓(xùn)練,具備強(qiáng)大的語言理解和生成能力,通過巧妙的提示工程,可以在少樣本甚至零樣本的情況下處理自然語言查詢,為自然語言接口的性能提升提供了新的途徑。
2.3.3 評(píng)估指標(biāo)
評(píng)估指標(biāo)是衡量自然語言接口性能優(yōu)劣的重要依據(jù)。常見的評(píng)估指標(biāo)包括基于字符串匹配的指標(biāo),如精確字符串匹配和模糊匹配。精確字符串匹配要求生成的功能表示與真實(shí)的參考表示完全一致,這是一種嚴(yán)格的評(píng)估方式,但可能過于苛刻,因?yàn)樵趯?shí)際應(yīng)用中,語義等價(jià)的表示可能具有不同的字符串形式。模糊匹配則通過計(jì)算字符串之間的相似度來評(píng)估匹配程度,相對(duì)更加靈活,但也可能存在誤判的情況。除了字符串匹配指標(biāo),還有基于執(zhí)行結(jié)果的指標(biāo),如執(zhí)行匹配,它通過比較執(zhí)行生成的功能表示所得到的結(jié)果與預(yù)期結(jié)果是否一致來評(píng)估接口的準(zhǔn)確性。此外,人工評(píng)估也是一種重要的評(píng)估方式,它可以通過用戶調(diào)查、專家評(píng)審等方式,從用戶體驗(yàn)、實(shí)用性、可解釋性等多個(gè)角度對(duì)自然語言接口進(jìn)行全面評(píng)估,彌補(bǔ)自動(dòng)化指標(biāo)的不足。
2.3.4 系統(tǒng)設(shè)計(jì)
系統(tǒng)設(shè)計(jì)關(guān)注自然語言接口的整體架構(gòu)和實(shí)現(xiàn)細(xì)節(jié),包括系統(tǒng)的模塊化設(shè)計(jì)、組件之間的通信機(jī)制、用戶界面的設(shè)計(jì)等方面。良好的系統(tǒng)設(shè)計(jì)應(yīng)確保系統(tǒng)具有高度的可擴(kuò)展性,能夠方便地集成新的功能和算法;具備高效的性能,能夠快速響應(yīng)用戶查詢;提供友好的用戶界面,使用戶能夠輕松地與系統(tǒng)進(jìn)行交互。例如,采用模塊化設(shè)計(jì)可以將語義解析、執(zhí)行引擎、可視化生成等功能模塊獨(dú)立開發(fā)和維護(hù),便于系統(tǒng)的升級(jí)和擴(kuò)展。優(yōu)化查詢執(zhí)行計(jì)劃可以提高數(shù)據(jù)檢索的效率,減少響應(yīng)時(shí)間。設(shè)計(jì)簡(jiǎn)潔直觀的用戶界面可以提高用戶的使用體驗(yàn),降低學(xué)習(xí)成本。
3.數(shù)據(jù)集
3.1 Text-to-SQL 數(shù)據(jù)集
表 1 全面概述了各種 Text-to-SQL 和 Text-to-Vis 數(shù)據(jù)集。
3.2 Text-to-Vis 數(shù)據(jù)集
Text-to-Vis 數(shù)據(jù)集的發(fā)展在一定程度上與 Text-to-SQL 數(shù)據(jù)集相似。早期階段多為單域數(shù)據(jù)集,主要用于概念驗(yàn)證,如 Gao 等人開發(fā)的數(shù)據(jù)集通過讓測(cè)試對(duì)象根據(jù)人工生成的可視化提出自然語言問題來構(gòu)建,Kumar 等人則專注于犯罪數(shù)據(jù)相關(guān)的查詢與可視化研究。
跨域數(shù)據(jù)集方面,nvBench 是目前最大且常用的基準(zhǔn)之一,它從 Text-to-SQL 基準(zhǔn) Spider 合成而來,包含 25,750 對(duì)自然語言與可視化內(nèi)容,支持跨域 Text-to-Vis 任務(wù),為該領(lǐng)域的研究提供了豐富的數(shù)據(jù)資源1213。
多輪數(shù)據(jù)集的出現(xiàn)是為了滿足生成準(zhǔn)確可視化所需的大量信息需求。ChartDialogs 包含 3,284 個(gè)對(duì)話,專為使用 matplotlib 進(jìn)行繪圖而設(shè)計(jì);Dial-NVBench 基于跨域數(shù)據(jù)集 nvBench 創(chuàng)建,旨在處理對(duì)話輸入,通過多輪交互優(yōu)化可視化輸出,每個(gè)會(huì)話都包含足夠信息以生成合適的可視化1415。
多語言數(shù)據(jù)集方面,雖然多數(shù) Text-to-Vis 數(shù)據(jù)集以英語為主,但 CNvBench 的出現(xiàn)填補(bǔ)了中文資源在該領(lǐng)域的空白。它通過翻譯和本地化英語 nvBench 數(shù)據(jù)集構(gòu)建,確保自然語言查詢?cè)谥形恼Z境下的流暢性和地道性,有助于推動(dòng)中文等非英語語言環(huán)境下的 Text-to-Vis 研究
3.3 數(shù)據(jù)集選擇指南
在選擇數(shù)據(jù)集時(shí),需要綜合考慮研究的具體需求和目標(biāo)。對(duì)于跨域任務(wù),Spider 和 nvBench 是理想的選擇,它們豐富的跨域數(shù)據(jù)和多樣化的查詢類型能夠有效測(cè)試模型在不同領(lǐng)域間的遷移能力和適應(yīng)性。在多輪交互場(chǎng)景下,SParC、CoSQL、ChartDialogs 和 Dial-NVBench 則更為合適,這些數(shù)據(jù)集能夠模擬真實(shí)對(duì)話情境,有助于模型學(xué)習(xí)處理查詢之間的邏輯關(guān)系,從而更好地應(yīng)對(duì)復(fù)雜的用戶需求和交互場(chǎng)景。合理選擇數(shù)據(jù)集對(duì)于準(zhǔn)確評(píng)估模型性能、推動(dòng)相關(guān)領(lǐng)域研究進(jìn)展具有重要意義。
4.方法
圖 4. 文本到 SQL(上時(shí)間線)和文本到視覺(下時(shí)間線)方法隨時(shí)間的演變。彩色矩形代表方法的不同階段:傳統(tǒng)(藍(lán)色)、神經(jīng)網(wǎng)絡(luò)(綠色)和基礎(chǔ)語言模型(橙色)。請(qǐng)注意,文本到視覺方法的發(fā)展通常比類似的文本到 SQL 方法晚,因此上下時(shí)間線不對(duì)齊。
4.1 Text-to-SQL 解析
4.1.1 傳統(tǒng)階段
在早期的 Text-to-SQL 研究中,規(guī)則基方法占據(jù)主導(dǎo)地位。TEAM 和 CHAT-80 等方法率先采用中間邏輯表示,將自然語言查詢轉(zhuǎn)換為獨(dú)立于數(shù)據(jù)庫模式的邏輯查詢,再進(jìn)一步轉(zhuǎn)換為 SQL。然而,這類方法嚴(yán)重依賴手工制定的映射規(guī)則,靈活性較差。
在 2000 年代初期,更為先進(jìn)的規(guī)則基方法應(yīng)運(yùn)而生。PRECISE 利用現(xiàn)成的自然語言解析器進(jìn)行查詢翻譯,但由于其假設(shè)查詢中的單詞與數(shù)據(jù)庫元素一一對(duì)應(yīng),覆蓋范圍有限。NaLIR、ATHENA 和 SQLizer 等方法則采用基于排名的策略,通過尋找多個(gè)候選映射并根據(jù)分?jǐn)?shù)進(jìn)行排序,NaLIR 還通過用戶交互提高性能,ATHENA 借助領(lǐng)域特定本體獲取更豐富的語義信息,SQLizer 使用迭代過程優(yōu)化查詢邏輯形式。盡管這些方法有所改進(jìn),但仍受限于手動(dòng)定義規(guī)則,難以處理自然語言的多樣性和靈活性。
4.1.2 神經(jīng)網(wǎng)絡(luò)階段
神經(jīng)網(wǎng)絡(luò)和 Seq2Seq 模型的引入,為 Text-to-SQL 領(lǐng)域帶來了巨大變革。Seq2Seq 模型通過編碼器-解碼器架構(gòu),能夠?qū)W習(xí)自然語言與SQL之間的復(fù)雜映射關(guān)系。
在編碼器方面,基于序列的編碼器如 bi-LSTM 和 Transformer 發(fā)揮了重要作用。bi-LSTM 因其能捕捉序列雙向依賴關(guān)系,在早期 Text-to-SQL 系統(tǒng)中廣泛應(yīng)用,如 TypeSQL 通過為問題中的單詞分配類型并結(jié)合詞嵌入和類型嵌入,增強(qiáng)了對(duì)關(guān)鍵詞的編碼能力。隨著 Transformer 架構(gòu)的興起,其自注意力機(jī)制能夠有效處理長(zhǎng)距離依賴,被越來越多的模型采用。同時(shí),基于圖的編碼器如 GNN 也逐漸嶄露頭角,適用于編碼富含結(jié)構(gòu)信息的數(shù)據(jù)庫模式,Bogin 等人率先使用圖表示數(shù)據(jù)庫模式,后續(xù)研究不斷改進(jìn),如 RAT-SQL 結(jié)合全局推理、結(jié)構(gòu)化推理和關(guān)系感知自注意力,LGESQL 挖掘多跳關(guān)系屬性和重要元路徑等。
解碼器方面,主要分為四類。整體式解碼器受機(jī)器翻譯啟發(fā),利用 RNN 順序生成 SQL 命令,通過軟注意力機(jī)制關(guān)注輸入上下文,使用前一步解碼器隱藏狀態(tài)表示已生成的令牌。骨架式解碼器先生成 SQL 查詢模板,再填充具體細(xì)節(jié),如 SQLNet 通過填充 SQL 草圖中的槽位簡(jiǎn)化生成過程,HydraNet、IE-SQL 和 TypeSQL 等也采用類似的槽填充方法,COARSE2FINE 則通過兩步粗到細(xì)生成過程處理復(fù)雜查詢。語法式解碼器利用 SQL 語法規(guī)則生成查詢,如 Seq2Tree 采用自上而下解碼策略生成符合 SQL 語法層次結(jié)構(gòu)的邏輯形式,Seq2AST 和 SyntaxSQLNet 進(jìn)一步改進(jìn),通過抽象語法樹解碼,SmBoP 采用自下而上解碼機(jī)制確保生成語法有效的查詢,Bridge 使用 LSTM 指針生成器結(jié)合多頭注意力和復(fù)制機(jī)制靈活生成 SQL 查詢。執(zhí)行式解碼器利用 SQL 執(zhí)行器在解碼過程中驗(yàn)證查詢有效性,如 Wang 等人、Suhr 等人和 SQLova 等方法,通過檢查部分生成的查詢或候選查詢的可執(zhí)行性,確保最終生成的 SQL 查詢?cè)谡Z法和語義上均正確。
4.1.3 基礎(chǔ)語言模型階段
基礎(chǔ)語言模型(FMs)如BERT、T5 和 GPT 的發(fā)展顯著提升了 NLP 任務(wù)性能,也推動(dòng)了 Text-to-SQL 方法的進(jìn)步?;谶@些模型的方法分為 PLM-based 和 LLM-based 兩類。
PLM-based 方法中,早期直接微調(diào)預(yù)訓(xùn)練語言模型,包括僅編碼器模型(如BERT、RoBERTa)和編碼器-解碼器模型(如T5、BART)。僅編碼器模型如 IRNet、BRIDGE 和 X-SQL 等通過對(duì)輸入序列進(jìn)行編碼,將其轉(zhuǎn)化為上下文敏感的表示,用于 Text-to-SQL 任務(wù);編碼器-解碼器模型如 UnifiedSKG、Graphix-T5 和 RESDSQL 等則在Seq2Seq 任務(wù)中發(fā)揮優(yōu)勢(shì),通過對(duì)文本輸入生成文本輸出,結(jié)合模型強(qiáng)大的語言理解能力和特定的解碼策略,有效生成 SQL 查詢。此外,TaBERT、Grappa 和 GAP 等方法通過額外的預(yù)訓(xùn)練,利用表格數(shù)據(jù)或生成問題-SQL對(duì)進(jìn)行訓(xùn)練,增強(qiáng)了模型對(duì)表格數(shù)據(jù)的理解和生成SQL的能力。
LLM-based 方法是當(dāng)前的研究熱點(diǎn),通過提示工程引導(dǎo)大語言模型生成 SQL 查詢。零樣本提示方法如 C3 基于 ChatGPT ,通過精心設(shè)計(jì)的提示組件,在沒有額外訓(xùn)練示例的情況下實(shí)現(xiàn) Text-to-SQL 轉(zhuǎn)換;ZERoNL2SQL 結(jié)合PLM 和 LLM 的優(yōu)勢(shì),先生成 SQL 草圖再填充細(xì)節(jié)。少樣本提示方法如 DIN-SQL 通過分解 SQL 生成任務(wù)為多個(gè)子問題,利用 LLM 的上下文學(xué)習(xí)和思維鏈推理能力提升性能;Divide-and-Prompt范 式將主任務(wù)分解為簡(jiǎn)單子任務(wù),通過思維鏈方法增強(qiáng) LLM 推理能力;Gu 等人的方法引導(dǎo) LLM 生成結(jié)構(gòu)化 SQL 查詢并填充具體值;Nan 等人探索不同提示設(shè)計(jì)策略,Tai 等人研究增強(qiáng) LLM 推理能力的提示方法,SQL-PaLM 基于 PaLM-2 采用執(zhí)行式自一致性提示方法,Guo 等人提出檢索增強(qiáng)提示方法,通過迭代優(yōu)化生成準(zhǔn)確的 SQL 查詢。
4.2 Text-to-Vis 解析
4.2.1 傳統(tǒng)階段
早期 Text-to-Vis 方法主要致力于通過不同的解析方法、關(guān)鍵字和語法規(guī)則來提高準(zhǔn)確性。從2015年到2020年期間,諸多研究探索了各種語義解析技術(shù),如 DataTone、Eviza、Evizeon、VisFlow、FlowSense、Orko、Valletto 和 InChorus等。DataTone 通過管理自然語言接口中的歧義性,為后續(xù)研究提供了基礎(chǔ)。2020年至2021年,部分工作基于 DataTone的方法部署了更結(jié)構(gòu)化的 VQL 模板,ADVISor 開發(fā)了自動(dòng)生成帶注釋可視化的管道,NL4DV 提供了將自然語言查詢轉(zhuǎn)換為可視化推薦的 Python 包,這些工具和方法在一定程度上提高了 Text-to-Vis 的準(zhǔn)確性,但整體仍處于探索階段,主要關(guān)注如何更好地將自然語言轉(zhuǎn)換為可視化規(guī)范或提供可視化建議。
4.2.2 神經(jīng)網(wǎng)絡(luò)階段
深度學(xué)習(xí)的發(fā)展促使 Text-to-Vis 方法轉(zhuǎn)向基于編碼器 - 解碼器的模型。編碼器在處理輸入數(shù)據(jù)時(shí)發(fā)揮關(guān)鍵作用,序列編碼器(如LSTM和Transformer)擅長(zhǎng)處理長(zhǎng)距離依賴,而圖編碼器則能捕捉非線性關(guān)系,更好地表示復(fù)雜數(shù)據(jù)結(jié)構(gòu)。Seq2Vis 在 Data2Vis 基礎(chǔ)上改進(jìn),采用 seq2seq 模型結(jié)合預(yù)訓(xùn)練全局詞嵌入和 LSTM 編碼器、解碼器及注意力機(jī)制,實(shí)現(xiàn)自然語言到可視化的轉(zhuǎn)換;ncNet 則采用 Transformer 架構(gòu),通過多自注意力設(shè)計(jì)提高效率,將來自不同源的令牌化輸入進(jìn)行處理,生成可視化代碼。RGVisNet 結(jié)合序列和圖編碼,通過檢索生成方法,利用 LSTM 編碼器處理自然語言查詢,GNN 編碼器處理候選 VQL,再通過 Transformer 編碼器確定最終輸出,同時(shí)引入語法感知解碼器,根據(jù) VQL 嚴(yán)格語法結(jié)構(gòu)指導(dǎo)代碼生成,優(yōu)化了可視化查詢語言(VQL)的生成過程。
4.2.3 基礎(chǔ)語言模型階段
基礎(chǔ)語言模型(FMs),尤其是大語言模型( LLMs )如 CodeX 和 GPT-3 的出現(xiàn),為 Text-to-Vis 帶來了新的思路。零樣本提示方法允許直接使用未訓(xùn)練的提示引導(dǎo) LLMs 從文本查詢生成可視化代碼。Mitra等人通過提示CodeX開發(fā)了原型 Web應(yīng)用,Chat2VIS 選擇 CodeX 并加入代碼提示組件,直接輸出可視化規(guī)范代碼。少樣本提示方法則利用有限示例引導(dǎo) LLMs 生成期望輸出,NL2INTERFACE 通過準(zhǔn)備特定格式的示例,將自然語言查詢轉(zhuǎn)換為 VQL 格式,利用 CodeX 進(jìn)行上下文學(xué)習(xí)預(yù)測(cè) VQL,進(jìn)而生成交互式可視化界面,為用戶提供了更便捷的可視化生成方式,推動(dòng)了 Text-to-Vis 領(lǐng)域的發(fā)展。
4.3 方法選擇建議
在選擇 Text-to-SQL 和 Text-to-Vis 方法時(shí),需要綜合考量多個(gè)因素。傳統(tǒng)規(guī)則基方法具有可解釋性強(qiáng)的優(yōu)勢(shì),適用于對(duì)解釋性要求較高且數(shù)據(jù)和查詢相對(duì)簡(jiǎn)單的場(chǎng)景,如在一些小型、穩(wěn)定且查詢模式固定的數(shù)據(jù)庫應(yīng)用中,規(guī)則基方法能夠準(zhǔn)確地將預(yù)先定義的自然語言模式轉(zhuǎn)換為 SQL 查詢或可視化規(guī)范。但因其嚴(yán)重依賴手動(dòng)定義規(guī)則,面對(duì)復(fù)雜多變的自然語言和多樣化的查詢需求時(shí)適應(yīng)性較差。
神經(jīng)網(wǎng)絡(luò)方法在處理復(fù)雜數(shù)據(jù)和多樣化查詢方面表現(xiàn)出色,其強(qiáng)大的學(xué)習(xí)能力能夠捕捉數(shù)據(jù)中的復(fù)雜模式和關(guān)系。然而,神經(jīng)網(wǎng)絡(luò)模型通常需要大量的訓(xùn)練數(shù)據(jù)來學(xué)習(xí)有效的表示,并且計(jì)算成本較高。在數(shù)據(jù)資源豐富、計(jì)算資源充足且對(duì)模型性能有較高要求的場(chǎng)景下,如大規(guī)模數(shù)據(jù)分析和復(fù)雜可視化生成任務(wù),神經(jīng)網(wǎng)絡(luò)方法是較好的選擇。
基礎(chǔ)語言模型(PLM和LLM)方法在性能和泛化能力上展現(xiàn)出巨大潛力,能夠處理各種復(fù)雜任務(wù)且具有較強(qiáng)的語言理解能力。但 PLM 方法解釋性較差,LLM 方法則需要精心設(shè)計(jì)提示工程來引導(dǎo)模型生成準(zhǔn)確結(jié)果。在實(shí)際應(yīng)用中,如果追求高性能和良好的泛化能力,并且有能力進(jìn)行提示工程設(shè)計(jì)和調(diào)優(yōu),基礎(chǔ)語言模型方法是值得考慮的,但需要權(quán)衡其可解釋性和工程成本??傊?,應(yīng)根據(jù)具體任務(wù)需求、數(shù)據(jù)特點(diǎn)和資源限制,謹(jǐn)慎權(quán)衡不同方法的優(yōu)缺點(diǎn),選擇最適合的方法。
5.評(píng)估指標(biāo)
表 3 評(píng)估指標(biāo)的比較分析
5.1 Text-to-SQL 指標(biāo)
5.1.1 基于字符串的匹配
基于字符串的匹配指標(biāo)在評(píng)估 Text-to-SQL 性能中占據(jù)重要地位。精確字符串匹配是最為嚴(yán)格的評(píng)估方式,它要求生成的SQL 查詢與目標(biāo)查詢?cè)谧址麑用姹仨毻耆恢?。這種方法的優(yōu)勢(shì)在于其簡(jiǎn)單直接,易于實(shí)施,能夠清晰地判斷生成的查詢是否與預(yù)期的查詢完全相同,從而給出明確的評(píng)估結(jié)果。然而,其局限性也十分明顯,在實(shí)際應(yīng)用中,自然語言的表達(dá)方式豐富多樣,可能存在多種語義等價(jià)但語法略有差異的查詢方式。精確字符串匹配無法識(shí)別這些語義等價(jià)的變體,可能會(huì)將一些實(shí)際上正確但語法稍有不同的查詢判定為錯(cuò)誤,從而導(dǎo)致評(píng)估結(jié)果不夠全面和準(zhǔn)確,無法真實(shí)反映模型對(duì)自然語言的理解和轉(zhuǎn)換能力。
模糊匹配則提供了一種更為靈活的評(píng)估方式,它允許在一定程度上進(jìn)行近似匹配。通常通過計(jì)算字符串之間的相似度,如采用BLEU等算法來分配分?jǐn)?shù),以此衡量生成的查詢與目標(biāo)查詢之間的接近程度。這種方法的優(yōu)點(diǎn)在于能夠考慮到自然語言表達(dá)的多樣性,對(duì)于一些語法上稍有差異但語義相近的查詢能夠給予一定的分?jǐn)?shù),從而更全面地評(píng)估模型的性能。但是,模糊匹配也存在問題,由于其過于注重字符串的相似性,可能會(huì)對(duì)一些明顯的錯(cuò)誤過于寬容,將一些實(shí)際上存在嚴(yán)重邏輯錯(cuò)誤但在字符串上與目標(biāo)查詢有一定相似度的查詢誤判為正確,從而影響評(píng)估的準(zhǔn)確性。
組件匹配則從更細(xì)致的角度對(duì)預(yù)測(cè)的 SQL 查詢進(jìn)行評(píng)估,它聚焦于查詢的單個(gè)組件或片段,如關(guān)鍵詞、表名、列名、操作符等。通過逐一檢查這些組件的正確性,確保每個(gè)部分都準(zhǔn)確無誤,從而更全面地判斷整個(gè)查詢的質(zhì)量。這種評(píng)估方式能夠更精準(zhǔn)地定位查詢中存在的問題,避免因整體匹配而忽略局部錯(cuò)誤的情況。然而,組件匹配也需要耗費(fèi)更多的計(jì)算資源和時(shí)間,因?yàn)樾枰獙?duì)每個(gè)組件進(jìn)行詳細(xì)分析,并且在某些情況下,組件的正確性判斷可能會(huì)受到上下文和語義理解的影響,增加了評(píng)估的復(fù)雜性。
5.1.2 基于執(zhí)行的匹配
基于執(zhí)行的匹配指標(biāo)從查詢執(zhí)行結(jié)果的角度對(duì) SQL 查詢的正確性進(jìn)行評(píng)估,為評(píng)估提供了新的視角。執(zhí)行匹配的核心思想是,只要生成的查詢執(zhí)行結(jié)果與參考查詢的執(zhí)行結(jié)果一致,就認(rèn)為該查詢是正確的,而不考慮其語法形式是否完全相同。這種評(píng)估方式的優(yōu)勢(shì)在于,它能夠有效處理那些語法不同但語義等價(jià)的查詢,避免了因語法差異而導(dǎo)致的誤判。在實(shí)際應(yīng)用中,對(duì)于復(fù)雜的數(shù)據(jù)庫查詢,可能存在多種語法結(jié)構(gòu)都能得到相同結(jié)果的情況,執(zhí)行匹配能夠準(zhǔn)確識(shí)別這些情況,從而更真實(shí)地反映模型生成的查詢?cè)趯?shí)際數(shù)據(jù)操作中的有效性。然而,執(zhí)行匹配也并非完美無缺,它假設(shè)查詢執(zhí)行結(jié)果的一致性完全等同于查詢的正確性,但在某些情況下,即使結(jié)果相同,查詢的執(zhí)行效率、資源消耗等方面可能存在差異,而執(zhí)行匹配無法對(duì)這些差異進(jìn)行評(píng)估。
測(cè)試套件匹配進(jìn)一步提高了評(píng)估的嚴(yán)格性和可靠性。它通過創(chuàng)建多個(gè)知識(shí)庫變體,對(duì)預(yù)測(cè)查詢和參考查詢?cè)诓煌凅w中的執(zhí)行結(jié)果進(jìn)行比較。只有當(dāng)預(yù)測(cè)查詢?cè)谒凶凅w中的執(zhí)行結(jié)果都與參考查詢一致時(shí),才判定該查詢?yōu)檎_。這種方法能夠更深入地挖掘查詢可能存在的潛在問題,避免因單一知識(shí)庫環(huán)境下的巧合而導(dǎo)致的誤判。例如,在不同的數(shù)據(jù)分布或數(shù)據(jù)庫結(jié)構(gòu)變化的情況下,測(cè)試套件匹配能夠確保模型生成的查詢具有更強(qiáng)的魯棒性和適應(yīng)性。但是,測(cè)試套件匹配的實(shí)施難度較大,需要構(gòu)建和管理多個(gè)知識(shí)庫變體,計(jì)算成本較高,并且對(duì)于一些復(fù)雜的數(shù)據(jù)庫系統(tǒng),創(chuàng)建全面且有效的測(cè)試套件本身就是一項(xiàng)具有挑戰(zhàn)性的任務(wù)。
5.1.3 人工評(píng)估
在某些復(fù)雜情況下,自動(dòng)評(píng)估指標(biāo)可能無法完全準(zhǔn)確地判斷 SQL 查詢的正確性,此時(shí)人工評(píng)估就發(fā)揮著不可或缺的作用。在 Text-to-SQL 任務(wù)中,人工評(píng)估主要用于辨別那些執(zhí)行結(jié)果不同但在實(shí)際場(chǎng)景中均可能有效的查詢之間的語義等價(jià)性。例如,當(dāng)查詢結(jié)果落在一個(gè)合理的預(yù)定義區(qū)間內(nèi),但自動(dòng)評(píng)估指標(biāo)難以確定其是否真正符合用戶意圖時(shí),就需要人工判斷。這種評(píng)估方式的優(yōu)點(diǎn)在于能夠充分利用人類的語義理解和領(lǐng)域知識(shí),更準(zhǔn)確地判斷查詢?cè)趯?shí)際應(yīng)用中的有效性。然而,人工評(píng)估也存在一些局限性,它是主觀的且耗時(shí)費(fèi)力,需要專業(yè)人員進(jìn)行判斷,難以大規(guī)模應(yīng)用于模型的訓(xùn)練和評(píng)估過程。而且不同評(píng)估人員的判斷標(biāo)準(zhǔn)可能存在差異,導(dǎo)致評(píng)估結(jié)果的一致性和可靠性受到影響。
5.2 Text-to-Vis 指標(biāo)
5.2.1 基于字符串的匹配
在 Text-to-Vis 領(lǐng)域,基于字符串的匹配同樣是重要的評(píng)估手段之一。精確字符串匹配,在該領(lǐng)域常被稱為總體準(zhǔn)確性,它直接比較預(yù)測(cè)的可視化查詢與真實(shí)查詢之間的匹配程度。這種評(píng)估方式能夠直觀地反映模型在生成可視化查詢時(shí)的準(zhǔn)確性,通過精確對(duì)比兩個(gè)字符串是否一致,判斷模型是否準(zhǔn)確地將自然語言轉(zhuǎn)換為了正確的可視化規(guī)范。如果預(yù)測(cè)的可視化查詢與真實(shí)查詢完全相同,那么模型在該指標(biāo)上表現(xiàn)良好,說明其能夠準(zhǔn)確理解自然語言并生成相應(yīng)的可視化指令。然而,與 Text-to-SQL 中的精確字符串匹配類似,它也存在過于嚴(yán)格的問題,可能忽略了一些雖然語法不完全相同但在語義上能夠?qū)崿F(xiàn)相同可視化效果的查詢,從而對(duì)模型的評(píng)估不夠全面。
組件匹配在 Text-to-Vis 中也具有重要意義,它關(guān)注預(yù)測(cè)可視化規(guī)范的單個(gè)組件。例如,在生成圖表的可視化規(guī)范時(shí),組件匹配會(huì)檢查圖表類型、坐標(biāo)軸標(biāo)簽、數(shù)據(jù)系列等各個(gè)組成部分是否正確。通過確保每個(gè)組件的準(zhǔn)確性,能夠提高整個(gè)可視化的質(zhì)量和準(zhǔn)確性。這種評(píng)估方式有助于發(fā)現(xiàn)模型在生成可視化時(shí)可能出現(xiàn)的局部錯(cuò)誤,從而有針對(duì)性地進(jìn)行改進(jìn)。但是,同樣地,組件匹配可能會(huì)面臨組件之間相互依賴關(guān)系復(fù)雜的問題,某個(gè)組件的正確性可能需要結(jié)合其他組件以及上下文信息來綜合判斷,這增加了評(píng)估的復(fù)雜性。
5.2.2 人工評(píng)估
人工評(píng)估在 Text-to-Vis 中主要通過用戶研究來實(shí)現(xiàn),其目的是評(píng)估模型在實(shí)際應(yīng)用中的有效性、用戶友好性和效率。用戶研究收集用戶對(duì)系統(tǒng)生成可視化的反饋,包括系統(tǒng)速度、易用性、用戶對(duì)可視化效果的偏好以及改進(jìn)建議等方面。通過用戶的直接反饋,可以深入了解模型生成的可視化在實(shí)際使用場(chǎng)景中的表現(xiàn),是否能夠滿足用戶的需求和期望,以及是否易于用戶理解和操作。這種評(píng)估方式能夠從用戶體驗(yàn)的角度全面評(píng)估模型的性能,對(duì)于優(yōu)化模型以提高用戶滿意度具有重要指導(dǎo)意義。然而,人工評(píng)估受限于樣本數(shù)量和評(píng)估環(huán)境的多樣性,不同用戶的背景和需求差異可能導(dǎo)致評(píng)估結(jié)果存在一定的偏差,并且組織和實(shí)施用戶研究也需要耗費(fèi)大量的時(shí)間和資源。
5.3 評(píng)估指標(biāo)選擇指南
表4 Text-to-SQL 和Text-to-Vis 的比較
在選擇評(píng)估指標(biāo)時(shí),應(yīng)根據(jù)具體的需求和場(chǎng)景綜合考慮。對(duì)于評(píng)估 Text-to-SQL 和 Text-to-Vis 模型的語法正確性,基于字符串的指標(biāo)是一個(gè)重要的選擇。精確字符串匹配能夠提供最嚴(yán)格的語法檢查,確保生成的查詢或可視化規(guī)范在形式上與目標(biāo)一致;模糊匹配和組件匹配則可從不同角度補(bǔ)充對(duì)語法結(jié)構(gòu)的評(píng)估,捕捉可能存在的細(xì)微語法錯(cuò)誤或部分組件的不匹配情況。當(dāng)關(guān)注語義等價(jià)性時(shí),基于執(zhí)行的指標(biāo)在 Text-to-SQL 中尤為關(guān)鍵,它能夠通過比較查詢執(zhí)行結(jié)果判斷模型是否真正理解了自然語言的語義并生成了等價(jià)的查詢;在 Text-to-Vis 中,雖然執(zhí)行結(jié)果的概念相對(duì)較難直接定義,但可以通過檢查可視化效果是否符合預(yù)期語義來間接應(yīng)用類似的思想。而人工評(píng)估則可作為一種補(bǔ)充手段,用于捕捉自動(dòng)指標(biāo)可能遺漏的細(xì)微差別,尤其是在涉及語義理解、用戶體驗(yàn)等復(fù)雜方面,人工評(píng)估能夠提供更深入、全面的見解。綜合運(yùn)用多種評(píng)估指標(biāo),能夠更全面、準(zhǔn)確地評(píng)估自然語言接口在表格數(shù)據(jù)查詢與可視化方面的性能,為模型的改進(jìn)和優(yōu)化提供有力的依據(jù)。
6.未來研究方向
表5 Text-to-SQL 和Text-to-Vis 研究的比較
6.1 推進(jìn)神經(jīng)網(wǎng)絡(luò)模型與方法
盡管神經(jīng)網(wǎng)絡(luò)在 Text-to-SQL 領(lǐng)域已取得顯著進(jìn)展,但仍有很大的提升空間。當(dāng)前,多數(shù)模型在處理復(fù)雜查詢、多輪交互以及特定領(lǐng)域問題時(shí)存在不足。例如,面對(duì)涉及多個(gè)條件、嵌套結(jié)構(gòu)或領(lǐng)域?qū)I(yè)術(shù)語的復(fù)雜查詢時(shí),模型可能生成不準(zhǔn)確或不完整的SQL語句。未來需要持續(xù)優(yōu)化神經(jīng)網(wǎng)絡(luò)架構(gòu),如探索更深層次的網(wǎng)絡(luò)結(jié)構(gòu),增強(qiáng)模型對(duì)復(fù)雜語義和語法結(jié)構(gòu)的理解能力。先進(jìn)的注意力機(jī)制可進(jìn)一步提高模型對(duì)輸入文本不同部分的關(guān)注度,從而更精準(zhǔn)地捕捉關(guān)鍵信息。混合模型結(jié)合規(guī)則基邏輯與神經(jīng)網(wǎng)絡(luò)的優(yōu)勢(shì),有望在處理結(jié)構(gòu)化數(shù)據(jù)時(shí)兼具靈活性和準(zhǔn)確性。
在 Text-to-Vis 領(lǐng)域,神經(jīng)網(wǎng)絡(luò)模型的發(fā)展相對(duì)滯后,面臨著生成多樣化、準(zhǔn)確且美觀可視化的挑戰(zhàn)。模型需要根據(jù)用戶意圖生成不同類型、風(fēng)格和布局的可視化,同時(shí)確保數(shù)據(jù)的準(zhǔn)確呈現(xiàn)。例如,在生成數(shù)據(jù)圖表時(shí),能夠根據(jù)數(shù)據(jù)特點(diǎn)和用戶需求選擇最合適的圖表類型(如柱狀圖、折線圖、餅圖等),并優(yōu)化圖表的樣式和布局,使其更具可讀性和視覺吸引力。利用外部知識(shí)圖譜等知識(shí)庫可以為模型提供更多的背景信息和領(lǐng)域知識(shí),幫助模型更好地理解數(shù)據(jù)和用戶需求,從而生成更符合實(shí)際場(chǎng)景的可視化。遷移學(xué)習(xí)技術(shù)可使模型從已有的數(shù)據(jù)和任務(wù)中學(xué)習(xí)通用的知識(shí)和模式,快速適應(yīng)新的可視化任務(wù),減少對(duì)大量標(biāo)注數(shù)據(jù)的依賴。多模態(tài)策略則能整合文本、圖像等多種信息源,為用戶提供更豐富、直觀的可視化體驗(yàn),如通過圖像識(shí)別技術(shù)提取數(shù)據(jù)中的關(guān)鍵信息并與文本信息相結(jié)合,生成更全面、生動(dòng)的可視化結(jié)果。
6.2 挖掘大語言模型潛力
大語言模型( LLMs )如 ChatGPT 在自然語言處理領(lǐng)域展現(xiàn)出了強(qiáng)大的能力,但在數(shù)據(jù)庫自然語言接口中的應(yīng)用尚處于起步階段。目前,雖然已有研究嘗試將 LLMs 集成到 Text-to-SQL 和 Text-to-Vis 系統(tǒng)中,但仍未充分發(fā)揮其潛力。LLMs 在理解復(fù)雜用戶查詢、捕捉上下文信息和進(jìn)行泛化推理方面具有獨(dú)特優(yōu)勢(shì),能夠更好地處理模糊、隱含或具有多義性的自然語言表述。
未來研究應(yīng)致力于根據(jù)查詢和可視化任務(wù)的特定需求定制 LLMs 。一種途徑是在特定領(lǐng)域數(shù)據(jù)集上對(duì) LLMs 進(jìn)行微調(diào),使其熟悉特定領(lǐng)域的術(shù)語、數(shù)據(jù)結(jié)構(gòu)和查詢模式,從而提高在該領(lǐng)域的性能和準(zhǔn)確性。例如,在醫(yī)療領(lǐng)域,通過在大量醫(yī)療記錄和相關(guān)查詢數(shù)據(jù)集上訓(xùn)練 LLMs ,使其能夠準(zhǔn)確理解和處理醫(yī)療數(shù)據(jù)查詢,生成符合醫(yī)療專業(yè)需求的可視化報(bào)告。將 LLMs 與現(xiàn)有架構(gòu)有機(jī)結(jié)合,也是發(fā)揮其潛力的重要方向。例如,將 LLMs 與傳統(tǒng)的數(shù)據(jù)庫管理系統(tǒng)、可視化工具或神經(jīng)網(wǎng)絡(luò)模型相結(jié)合,實(shí)現(xiàn)優(yōu)勢(shì)互補(bǔ),構(gòu)建更強(qiáng)大、高效的自然語言接口。開發(fā)新穎的提示策略對(duì)于引導(dǎo) LLMs 生成高質(zhì)量的 SQL 查詢和可視化規(guī)范至關(guān)重要。通過精心設(shè)計(jì)提示模板、示例和引導(dǎo)語,幫助 LLMs 更好地理解任務(wù)要求,減少錯(cuò)誤生成,提高生成結(jié)果的可靠性和可用性。
6.3 探索先進(jìn)學(xué)習(xí)方法
傳統(tǒng)的監(jiān)督學(xué)習(xí)方法在自然語言接口領(lǐng)域面臨著對(duì)大量標(biāo)記數(shù)據(jù)的依賴問題,這限制了模型的發(fā)展和應(yīng)用。獲取高質(zhì)量的標(biāo)記數(shù)據(jù)往往需要耗費(fèi)大量的人力、物力和時(shí)間,尤其在復(fù)雜的表格數(shù)據(jù)查詢和可視化任務(wù)中,標(biāo)注工作更加繁瑣且容易出錯(cuò)。半監(jiān)督學(xué)習(xí)方法提供了一種有潛力的解決方案,它能夠利用未標(biāo)記數(shù)據(jù)中的信息來增強(qiáng)模型的學(xué)習(xí)能力。例如,通過在大量未標(biāo)記的表格數(shù)據(jù)上進(jìn)行預(yù)訓(xùn)練,模型可以學(xué)習(xí)到數(shù)據(jù)的一般結(jié)構(gòu)和模式,然后再結(jié)合少量標(biāo)記數(shù)據(jù)進(jìn)行微調(diào),從而提高模型在特定任務(wù)上的性能。弱監(jiān)督學(xué)習(xí)方法則利用弱監(jiān)督信號(hào),如部分標(biāo)記數(shù)據(jù)、啟發(fā)式規(guī)則或隱含的反饋信息,來指導(dǎo)模型學(xué)習(xí)。例如,利用用戶與系統(tǒng)的交互日志作為弱監(jiān)督信號(hào),盡管這些交互可能沒有明確的標(biāo)記,但可以從中挖掘出用戶的意圖和對(duì)結(jié)果的滿意度,從而為模型提供有價(jià)值的學(xué)習(xí)信息。
參數(shù)高效的訓(xùn)練方法,如 LoRA(Low-Rank Adaptation),在減少計(jì)算資源需求和提高訓(xùn)練效率方面顯示出優(yōu)勢(shì)。LoRA 通過引入低秩矩陣來近似模型參數(shù)的更新,在不改變?cè)寄P徒Y(jié)構(gòu)的情況下,顯著減少了可訓(xùn)練參數(shù)的數(shù)量,從而降低了計(jì)算成本和存儲(chǔ)需求。在資源有限的環(huán)境中,如移動(dòng)設(shè)備或邊緣計(jì)算場(chǎng)景下,這種方法能夠使模型更高效地進(jìn)行訓(xùn)練和部署,同時(shí)保持較好的性能。將大預(yù)訓(xùn)練模型與參數(shù)高效技術(shù)相結(jié)合,有望在數(shù)據(jù)效率和計(jì)算效率之間找到平衡,為語義解析任務(wù)提供更有效的解決方案。例如,先利用大規(guī)模語料庫訓(xùn)練一個(gè)通用的大語言模型,然后通過參數(shù)高效的微調(diào)方法使其適應(yīng)特定的表格數(shù)據(jù)查詢和可視化任務(wù),既能利用大模型的強(qiáng)大表示能力,又能快速適應(yīng)新任務(wù),減少對(duì)大量特定任務(wù)數(shù)據(jù)的需求。
6.4 構(gòu)建大規(guī)模多樣數(shù)據(jù)集
高質(zhì)量、多樣化的數(shù)據(jù)集是推動(dòng)自然語言接口發(fā)展的關(guān)鍵因素之一。目前的數(shù)據(jù)集雖然在一定程度上滿足了研究需求,但仍存在規(guī)模不足和多樣性欠缺的問題。更大規(guī)模的數(shù)據(jù)集能夠?yàn)槟P吞峁└S富的學(xué)習(xí)資源,有助于提高模型的泛化能力,使其能夠更好地處理各種不同類型的用戶查詢。例如,涵蓋更多領(lǐng)域、更多數(shù)據(jù)模式和更復(fù)雜查詢場(chǎng)景的數(shù)據(jù)集,可以讓模型學(xué)習(xí)到更廣泛的語言表達(dá)方式和數(shù)據(jù)處理策略。
多樣性方面,不僅要包括不同領(lǐng)域(如金融、醫(yī)療、教育等)的數(shù)據(jù),還應(yīng)涵蓋不同數(shù)據(jù)結(jié)構(gòu)(如不同列數(shù)、行數(shù)、數(shù)據(jù)類型的表格)和多樣化的查詢類型(如單表查詢、多表關(guān)聯(lián)查詢、聚合查詢、嵌套查詢等)。此外,多語言數(shù)據(jù)集的建設(shè)也至關(guān)重要,當(dāng)前數(shù)據(jù)集以英語為主,限制了自然語言接口在全球范圍內(nèi)的應(yīng)用。開發(fā)更多涵蓋不同語言的數(shù)據(jù)集,能夠促進(jìn)多語言環(huán)境下的研究和應(yīng)用,使自然語言接口能夠服務(wù)于更廣泛的用戶群體,打破語言障礙,實(shí)現(xiàn)真正的全球化數(shù)據(jù)交互。通過構(gòu)建大規(guī)模多樣數(shù)據(jù)集,可以為模型訓(xùn)練提供更全面、真實(shí)的模擬環(huán)境,從而推動(dòng)自然語言接口技術(shù)在實(shí)際應(yīng)用中的性能提升和普及。
6.5 增強(qiáng)魯棒性與泛化性
隨著自然語言接口在各種應(yīng)用中的廣泛應(yīng)用,其魯棒性和泛化性成為關(guān)鍵問題。在魯棒性方面,模型需要能夠抵御對(duì)抗攻擊和處理分布外(out-of-distribution)的擾動(dòng)。對(duì)抗攻擊可能通過故意構(gòu)造的惡意輸入來干擾模型的正常運(yùn)行,使其產(chǎn)生錯(cuò)誤的輸出。例如,在 Text-to-SQL 任務(wù)中,攻擊者可能對(duì)輸入的自然語言查詢進(jìn)行微小但有針對(duì)性的修改,導(dǎo)致模型生成錯(cuò)誤的SQL語句,從而影響數(shù)據(jù)的安全性和準(zhǔn)確性。分布外擾動(dòng)則涉及到模型在遇到與訓(xùn)練數(shù)據(jù)分布不同的輸入時(shí)的表現(xiàn)。實(shí)際應(yīng)用中,用戶的輸入可能具有很大的多樣性,模型必須能夠處理這些未曾見過的輸入情況,而不出現(xiàn)性能大幅下降或錯(cuò)誤輸出。
泛化性包括組合泛化和領(lǐng)域泛化能力。組合泛化要求模型能夠理解和組合已知概念,以處理從未見過的復(fù)合查詢。例如,當(dāng)模型學(xué)會(huì)了處理單個(gè)條件的查詢和數(shù)據(jù)聚合操作后,應(yīng)能夠處理將多個(gè)條件組合并進(jìn)行聚合操作的新查詢。領(lǐng)域泛化則確保模型在不同領(lǐng)域之間能夠有效遷移,即使面對(duì)新領(lǐng)域的數(shù)據(jù)和查詢,也能利用已有的知識(shí)和經(jīng)驗(yàn)進(jìn)行準(zhǔn)確處理。例如,一個(gè)在商業(yè)領(lǐng)域訓(xùn)練良好的模型,在應(yīng)用于醫(yī)療領(lǐng)域時(shí),應(yīng)能夠快速適應(yīng)醫(yī)療數(shù)據(jù)的特點(diǎn)和查詢需求,而無需大量重新訓(xùn)練。提高模型的魯棒性和泛化性,需要從模型架構(gòu)設(shè)計(jì)、訓(xùn)練方法優(yōu)化、數(shù)據(jù)集增強(qiáng)等多方面入手,確保自然語言接口在復(fù)雜多變的實(shí)際應(yīng)用場(chǎng)景中穩(wěn)定可靠地運(yùn)行。
6.6 開創(chuàng)大語言模型時(shí)代的先進(jìn)應(yīng)用
大語言模型時(shí)代為自然語言接口在數(shù)據(jù)庫應(yīng)用中的創(chuàng)新提供了新機(jī)遇。多模態(tài)系統(tǒng)是一個(gè)重要的發(fā)展方向,它將大語言模型與其他模態(tài)(如視覺、聽覺等)相結(jié)合,實(shí)現(xiàn)更豐富、自然的人機(jī)交互。例如,用戶可以通過語音輸入查詢指令,并結(jié)合圖像或手勢(shì)等方式提供額外信息,系統(tǒng)則能夠綜合理解這些多模態(tài)信息,生成更準(zhǔn)確、直觀的查詢結(jié)果或可視化展示。這種多模態(tài)交互方式能夠滿足不同用戶的需求和偏好,提供更便捷、高效的用戶體驗(yàn),尤其適用于移動(dòng)設(shè)備和智能終端等場(chǎng)景。
集成系統(tǒng)的發(fā)展趨勢(shì)是將自然語言接口與其他功能模塊集成,構(gòu)建綜合性的智能系統(tǒng)。例如,與文檔集成系統(tǒng)的發(fā)展趨勢(shì)是將自然語言接口與其他功能模塊集成,構(gòu)建綜合性的智能系統(tǒng)。例如,與文檔摘要功能相結(jié)合,用戶在查詢表格數(shù)據(jù)時(shí),系統(tǒng)不僅能返回準(zhǔn)確的數(shù)據(jù)結(jié)果,還能提供相關(guān)數(shù)據(jù)的簡(jiǎn)要概括和分析,幫助用戶快速理解數(shù)據(jù)的關(guān)鍵信息。與推薦系統(tǒng)集成,可根據(jù)用戶的查詢歷史和偏好,為用戶推薦相關(guān)的數(shù)據(jù)查詢或可視化方案,提升用戶獲取有價(jià)值信息的效率。與聊天機(jī)器人功能融合,用戶能夠以對(duì)話的方式進(jìn)行連續(xù)的查詢和探索,系統(tǒng)則可以在對(duì)話過程中不斷理解用戶意圖,提供更個(gè)性化、深入的服務(wù),形成一個(gè)連貫的、以自然語言為核心的交互流程,滿足用戶在復(fù)雜數(shù)據(jù)處理場(chǎng)景下的多樣化需求。
用戶中心設(shè)計(jì)在大語言模型時(shí)代尤為重要。未來的應(yīng)用應(yīng)聚焦于提升用戶體驗(yàn),提供直觀、易用的界面,使非技術(shù)用戶也能輕松與數(shù)據(jù)庫進(jìn)行交互。例如,設(shè)計(jì)簡(jiǎn)潔明了的交互界面,采用自然語言提示和引導(dǎo),讓用戶能夠直觀地表達(dá)自己的需求。提供交互式反饋機(jī)制,實(shí)時(shí)向用戶展示系統(tǒng)對(duì)其查詢的理解和處理進(jìn)度,讓用戶感受到系統(tǒng)的響應(yīng)和關(guān)注,增強(qiáng)用戶與系統(tǒng)之間的互動(dòng)性。個(gè)性化響應(yīng)也是關(guān)鍵,系統(tǒng)應(yīng)根據(jù)不同用戶的特點(diǎn)和使用習(xí)慣,提供定制化的查詢結(jié)果和可視化展示,滿足用戶的特定需求,提高用戶對(duì)系統(tǒng)的滿意度和信任度。通過注重用戶中心設(shè)計(jì),能夠使自然語言接口更好地融入人們的日常工作和生活,推動(dòng)數(shù)據(jù)交互方式的變革。
7.結(jié)論
在本次深入的研究中,我們對(duì)自然語言接口在表格數(shù)據(jù)查詢與可視化領(lǐng)域進(jìn)行了全面的剖析。從其發(fā)展的歷程來看,技術(shù)不斷演進(jìn),從早期的簡(jiǎn)單規(guī)則基方法逐漸發(fā)展到如今強(qiáng)大的神經(jīng)網(wǎng)絡(luò)和大語言模型驅(qū)動(dòng)的解決方案。數(shù)據(jù)集的豐富多樣為模型的訓(xùn)練和評(píng)估提供了堅(jiān)實(shí)的基礎(chǔ),不同類型的數(shù)據(jù)集在各個(gè)發(fā)展階段發(fā)揮著關(guān)鍵作用,推動(dòng)著模型不斷適應(yīng)更復(fù)雜的任務(wù)需求。方法的創(chuàng)新是該領(lǐng)域發(fā)展的核心動(dòng)力,從傳統(tǒng)的手工規(guī)則制定到自動(dòng)化的神經(jīng)網(wǎng)絡(luò)學(xué)習(xí),再到利用大語言模型的強(qiáng)大能力,每一步都顯著提升了自然語言與表格數(shù)據(jù)交互的效率和準(zhǔn)確性。評(píng)估指標(biāo)則為衡量這些方法的優(yōu)劣提供了客觀的標(biāo)準(zhǔn),幫助我們準(zhǔn)確把握模型的性能表現(xiàn)。系統(tǒng)架構(gòu)的多樣化則滿足了不同用戶群體在不同場(chǎng)景下的需求,從基礎(chǔ)用戶到專業(yè)用戶,都能找到適合自己的自然語言接口解決方案。
展望未來,該領(lǐng)域充滿了無限的可能性和潛力。推進(jìn)神經(jīng)網(wǎng)絡(luò)模型與方法將進(jìn)一步提高模型處理復(fù)雜任務(wù)的能力,挖掘大語言模型潛力有望開啟新的應(yīng)用模式,探索先進(jìn)學(xué)習(xí)方法將解決數(shù)據(jù)依賴和效率問題,構(gòu)建大規(guī)模多樣數(shù)據(jù)集將增強(qiáng)模型的泛化能力,提高魯棒性與泛化性可確保系統(tǒng)在實(shí)際應(yīng)用中的可靠性,而開創(chuàng)先進(jìn)應(yīng)用則將極大地提升用戶體驗(yàn),推動(dòng)自然語言接口在表格數(shù)據(jù)查詢與可視化領(lǐng)域發(fā)揮更大的價(jià)值,為各行業(yè)的數(shù)據(jù)驅(qū)動(dòng)決策提供更強(qiáng)大、便捷的工具。隨著技術(shù)的不斷進(jìn)步,我們期待自然語言接口能夠在更多領(lǐng)域得到廣泛應(yīng)用,真正實(shí)現(xiàn)人與數(shù)據(jù)的無縫交互,釋放數(shù)據(jù)的巨大潛力。
本文轉(zhuǎn)載自??AIGC前沿技術(shù)追蹤??,作者:AIGC前沿技術(shù)追蹤
