北大:LLM在NL2SQL中任務分解

在這里插入圖片描述

📖標題:LearNAT: Learning NL2SQL with AST-guided Task Decomposition for Large Language Models
🌐來源:arXiv, 2504.02327

🌟摘要

🔸自然語言到SQL(NL2SQL)已成為實現與數據庫無縫交互的關鍵任務。大型語言模型(LLM)的最新進展在這一領域表現出了卓越的性能。然而,現有的NL2SQL方法主要依賴于利用快速工程的閉源LLM,而開源模型通常需要微調以獲取特定領域的知識。盡管做出了這些努力,但由于用戶查詢目標的間接表達以及用戶查詢和數據庫模式之間的語義差距,開源LLM在處理復雜的NL2SQL任務時遇到了困難。
🔸受強化學習在數學問題解決中的應用以鼓勵LLM中的逐步推理的啟發,我們提出了LearNAT(使用ST引導的T任務分解學習NL2SQL),這是一種新的框架,通過任務分解和強化學習來提高開源LLM在復雜NL2SQL任務上的性能。LearNAT引入了三個關鍵組件:(1)分解合成過程,利用抽象語法樹(AST)指導任務分解的高效搜索和修剪策略;(2)邊緣感知強化學習,通過具有AST邊緣的DPO進行細粒度的步驟級優化;(3)自適應演示推理,一種動態選擇相關示例以增強分解能力的機制。
🔸在Spider和BIRD兩個基準數據集上進行的廣泛實驗表明,LearNAT使7B參數開源LLM能夠實現與GPT-4相當的性能,同時提高了效率和可訪問性。我們的工作標志著NL2SQL功能民主化的重要一步,表明精心設計的任務分解策略可以縮小開源和閉源模型之間的性能差距。此外,所提出的方法不僅推進了NL2SQL的最新進展,而且為增強LLM對復雜結構化預測任務的推理能力提供了寶貴的見解。

🛎?文章簡介

🔸研究問題:在復雜的NL2SQL任務中,如何使大語言模型(LLM)有效地將自然語言查詢轉換為SQL語句?
🔸主要貢獻:論文提出了LearNAT框架,通過任務分解和強化學習提升LLM在NL2SQL任務上的性能。

📝重點思路

🔸引入了基于抽象語法樹(AST)的任務分解方法,通過蒙特卡洛樹搜索(MCTS)生成子任務,以提高搜索效率和有效性。
🔸采用邊際感知強化學習(Margin-Aware Reinforcement Learning),通過對不同分解步驟的細粒度偏好學習,增強LLM的分解能力。
🔸通過自適應演示推理(Adaptive Demonstration Reasoning)機制,動態選擇與當前任務最相關的示例,從而提升模型的表現。

🔎分析總結

🔸實驗結果表明,LearNAT在BIRD和Spider等NL2SQL基準數據集上顯著超越了現有方法,展示了其在處理復雜查詢時的有效性。
🔸通過與傳統方法的比較,LearNAT即便在參數較少的情況下(如7B參數模型)也能實現比大規模模型(如GPT-4)更優的性能。
🔸通過分析錯誤案例,發現模型在模式鏈接、浮點計算和錯誤答案等方面存在局限,這些錯誤影響了分解的成功率。
🔸邊際感知強化學習與監督微調結合使用,顯著提升了模型對不同樣本的偏好學習能力,優化了整體性能。
🔸自適應演示推理在初輪分解中表現出顯著的性能提升,但在后續輪次中效果逐漸減弱,提示了該方法的局限性。

💡個人觀點

論文的核心在于將AST引入NL2SQL任務的分解和優化過程,通過結合多種技術(如強化學習和自適應示范),有效提升了模型在復雜查詢處理中的準確性和效率。

🧩附錄

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/75496.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/75496.shtml
英文地址,請注明出處:http://en.pswp.cn/web/75496.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

STM32LL庫編程系列第八講——ADC模數轉換

系列文章目錄 往期文章 STM32LL庫編程系列第一講——Delay精準延時函數(詳細,適合新手) STM32LL庫編程系列第二講——藍牙USART串口通信(步驟詳細、原理清晰) STM32LL庫編程系列第三講——USARTDMA通信 STM32LL庫編程…

網絡5 TCP/IP 虛擬機橋接模式、NAT、僅主機模式

TCP/IP模型 用于局域網和廣域網;多個協議;每一層呼叫下一層;四層;通用標準 TCP/IP模型 OSI七層模型 應用層 應用層 表示層 會話層 傳輸層 傳輸層 網絡層 網絡層 鏈路層 數據鏈路層 物理層 鏈路層:傳數據幀&#xff0…

【C語言】預處理(下)(C語言完結篇)

一、#和## 1、#運算符 這里的#是一個運算符,整個運算符會將宏的參數轉換為字符串字面量,它僅可以出現在帶參數的宏的替換列表中,我們可以將其理解為字符串化。 我們先看下面的一段代碼: 第二個printf中是由兩個字符串組成的&am…

【高性能緩存Redis_中間件】一、快速上手redis緩存中間件

一、鋪墊 在當今的軟件開發領域,消息隊列扮演著至關重要的角色。它能夠幫助我們實現系統的異步處理、流量削峰以及系統解耦等功能,從而提升系統的性能和可維護性。Redis 作為一款高性能的鍵值對數據庫,不僅提供了豐富的數據結構,…

Java如何獲取文件的編碼格式?

Java獲取文件的編碼格式 在計算機中,文件編碼是指將文件內容轉換成二進制形式以便存儲和傳輸的過程。常見的文件編碼格式包括UTF-8、GBK等。不同的編碼使用不同的字符集和字節序列,因此在讀取文件時需要正確地確定文件的編碼格式 Java提供了多種方式以獲…

客戶端負載均衡與服務器端負載均衡詳解

客戶端負載均衡與服務器端負載均衡詳解 1. 客戶端負載均衡(Client-Side Load Balancing) 核心概念 定義:負載均衡邏輯在客戶端實現,客戶端主動選擇目標服務實例。典型場景:微服務內部調用(如Spring Cloud…

Quartus II的IP核調用及仿真測試

目錄 第一章 什么是IP核?第二章 什么是LPM?第一節 設置LPM_COUNTER模塊參數第二節 仿真 第三章 什么是PLL?第一節 設置ALTPLL(嵌入式鎖相環)模塊參數第二節 仿真 第四章 什么是RAM?第一節 RAM_1PORT的調用第…

各地物價和生活成本 東歐篇

東歐地區的物價差異相對較大,一些國家的物價較高,而另一些國家則相對便宜。這些差異主要受當地經濟發展水平、工資水平、旅游業發展以及國際關系等因素影響。以下是一些典型的東歐國家,按物價高低進行分類: 🌍 物價較高…

改進神經風格遷移

改進神經風格遷移(Neural Style Transfer, NST)可以從多個方向入手,包括模型結構優化、損失函數設計、計算效率提升、應用場景擴展等。以下是一些關鍵的改進方向及具體方法: 1. 模型結構優化 (1)輕量化網絡…

1、從零搭建魔法工坊:React 19 新手村生存指南

一、開篇:新世界的入場券 "你好,年輕的魔法學徒!歡迎來到React魔法世界。我是你的向導赫敏韋斯萊,今天我們將用React 19這根全新魔杖,搭建屬于你的第一座魔法工坊。" ——以對話形式開場,消除技…

基于 Redis 實現一套動態配置中心 DCC 服務與反射基礎知識講解

目錄 動態配置中心核心價值 輕量級 Redis 方案與 ZooKeeper 的對比分析 為什么選擇自定義 Redis 方案? 1. 技術決策背景 一、活動降級攔截 1. 定義與作用 2. 實現原理 二、活動切量攔截 1. 定義與作用 2. 實現原理 三、兩者的核心區別 四、實際應用案例 1. 電商大促…

如何從項目目標到成功標準:構建可量化、可落地的項目評估體系

引言 在項目管理領域,"項目成功"的定義往往比表面看起來更復雜。根據PMI的行業報告,67%的項目失敗源于目標與成功標準的不匹配。當項目團隊僅關注"按時交付"或"預算達標"時,常會忽視真正的價值創造。本文將通…

深度學習基礎--CNN經典網絡之分組卷積與ResNext網絡實驗探究(pytorch復現)

🍨 本文為🔗365天深度學習訓練營 中的學習記錄博客🍖 原作者:K同學啊 前言 ResNext是分組卷積的開始之作,這里本文將學習ResNext網絡;本文復現了ResNext50神經網絡,并用其進行了猴痘病分類實驗…

SQL 全文檢索原理

全文檢索(Full-Text Search)是SQL中用于高效搜索文本數據的技術,與傳統的LIKE操作或簡單字符串比較相比,它能提供更強大、更靈活的文本搜索能力。 基本概念 全文檢索的核心思想是將文本內容分解為可索引的單元(通常是詞或詞組),然后建立倒排…

【Linux】Orin NX編譯 linux 內核及內核模塊

1、下載交叉編譯工具:gcc 1)下載地址:https://developer.nvidia.com/embedded/jetson-linux 選擇TOOLS中的交叉編譯工具:gcc 11.3 2)解壓 將gcc編譯器解壓到指定目錄中,如:/home/laoer/nvidia/gcc 3)配置環境變量 創建: ~/nvidia/gcc/env.sh添加: #!/bin/bash e…

Transformers 是工具箱,BERT 是工具。

Transformers 是工具箱,BERT 是工具。 🔍 詳細解釋: 名稱作用比喻理解舉例🤖 transformers(庫)一個框架,提供很多 NLP 模型的“使用方式”,包括文本分類、問答、摘要等相當于一個“…

k8s之Service類型詳解

1.ClusterIP 類型 2.NodePort 類型 3.LoadBalancer 類型 4.ExternalName 類型 類型為 ExternalName 的 Service 將 Service 映射到 DNS 名稱,而不是典型的選擇算符, 例如 my-service 或者 cassandra。你可以使用 spec.externalName 參數指定這些服務…

find指令中使用正則表達式

linux查找命令能結合正則表達式嗎 find命令要使用正則表達式需要結合-regex參數 另,-type參數可以指定查找類型(f為文件,d為文件夾) rootlocalhost:~/regular_expression# ls -alh 總計 8.0K drwxr-xr-x. 5 root root 66 4月 8日 16:26 . dr-xr-…

《穿透表象,洞察分布式軟總線“無形”之奧秘》

分布式系統已成為眾多領域的關鍵支撐技術,而分布式軟總線作為實現設備高效互聯的核心技術,正逐漸走入大眾視野。它常被描述為一條“無形”的總線,這一獨特屬性不僅是理解其技術內涵的關鍵,更是把握其在未來智能世界中重要作用的切…

Ubuntu虛擬機連不上網

橋接 虛擬機Ubuntu系統必須能連接到外網,不然不能更新軟件安裝包 配置虛擬機網絡(關機或者掛起狀態) 第一步1.重啟虛擬機網絡編輯器(還原配置) 第二步2.重啟虛擬機網絡適配器(移除再添加) 啟…