STEP-BACK PROMPTING:退一步:通過抽象在大型語言模型中喚起推理能力

摘要

我們提出了 STEP-BACK PROMPTING,這是一種簡單的提示技術,可以讓LLM進行抽象,從包含具體細節的實例中推導出高層次概念和第一性原理。利用這些概念和原理來引導推理過程,LLM在朝向正確解答路徑上顯著提升了推理能力。我們在PaLM-2L、GPT-4 和 Llama2-70B 等模型上進行了 STEP-BACK PROMPTING 的實驗,并在多個具有挑戰性的推理密集型任務中觀察到顯著性能提升,包括 STEM、知識問答(Knowledge QA)和多跳推理(Multi-Hop Reasoning)。例如,STEP-BACK PROMPTING 將 PaLM-2L 在 MMLU(物理和化學)上的表現分別提升了 7% 和 11%,在 TimeQA 上提升了 27%,在 MuSiQue 上提升了 7%。

1 引言

自然語言處理(NLP)領域正經歷一場由基于Transformer(Vaswani 等,2017)的大型語言模型(LLMs)(Devlin 等,2018;Raffel 等,2020;Brown 等,2020;Anil 等,2023)所推動的突破性變革。隨著模型規模和預訓練語料的不斷擴展(Hoffmann 等,2022;Chowdhery 等,2022),模型能力和樣本效率得到了顯著提升,這得益于 scaling law(Kaplan 等,2020;Hoffmann 等,2022)的研究洞見,以及諸如多步推理(Wei 等,2022b;Zhou 等,2022)和指令遵循(Mishra 等,2022b;Wei 等,2021)等涌現能力(Wei 等,2022a)的出現。

在這里插入圖片描述

盡管已經取得了巨大進展,復雜的多步推理對即便是最先進的LLM來說仍然具有挑戰性。Lightman 等(2023)表明,采用逐步驗證的過程監督是一種有前景的方法,能夠提升中間推理步驟的正確性。諸如 Chain-of-Thought(Wei 等,2022b)等技術被提出,用于生成連貫的一系列中間推理步驟,從而提高遵循正確解碼路徑的成功率。受啟發于這樣一個事實:在人類面對具有挑戰性的任務時,往往會“退一步”進行抽象,以得到指導過程的高層次原理,我們提出了 STEP-BACK PROMPTING,通過將推理建立在抽象之上,來降低在中間推理步驟中出錯的可能性。

在這里插入圖片描述

在人類的眾多認知能力中,抽象(Lachmy 等,2022)是處理大量信息并提煉出一般性原理時不可或缺的能力。例如,Kepler 將數以千計的觀測數據濃縮為開普勒的三大行星運動定律,這些定律精確地描述了行星繞太陽運動的軌道(Russell,1964)。在人類面臨關鍵決策時,抽象尤其有幫助,因為它能提供對環境更廣闊的視角。

本研究探索了LLM如何通過抽象—推理的兩步過程來應對涉及大量細節的復雜任務。第一步是通過in-context learning讓LLM學會如何“退一步”——提示它們從具體實例中抽象出高層次的概念和原理。第二步則是利用LLM的推理能力,在這些高層概念和原理的基礎上進行推理。我們使用few-shot 示例演示來在LLM中實現 STEP-BACK PROMPTING。

我們在多個涉及特定領域推理的任務上進行了實驗,如物理和化學、需要事實性知識的知識密集型問答、多跳常識推理等任務。在 PaLM-2L(Anil 等,2023)上的實驗表明,STEP-BACK PROMPTING 在這些復雜任務中帶來了顯著的性能提升(最高可達27%),而這些任務在以往由于需要處理大量細節而極具挑戰性。圖1展示了本文中所有關鍵結果的總結。

其中一些任務難度極高:即使是 PaLM-2L 和 GPT-4,在 TimeQA 和 MuSiQue 上的準確率也僅為約40%。Chain-of-Thought 提示在少數任務上帶來輕微提升,而 STEP-BACK PROMPTING 在所有任務上都提升了 PaLM-2L 的性能:MMLU 的物理和化學子任務分別提升了7%和11%,TimeQA 提升了27%,MuSiQue 提升了7%。

我們進行了多種分析,發現 STEP-BACK PROMPTING 相較于 Chain-of-Thought(CoT)提示(Wei 等,2022b)和“take-a-deep-breath”(TDB)提示(Yang 等,2023),最多可帶來36%的性能提升。我們還進行了一項定性評估,發現 Step-Back 能修正基礎模型的大量錯誤(最多可達約40%),同時引入的新錯誤占比較小(最多約12%)。我們還進行了錯誤分析,發現 STEP-BACK PROMPTING 所犯的多數錯誤源于LLM在推理能力上的內在局限性,而抽象能力對于LLM來說相對容易掌握,這為類似 STEP-BACK PROMPTING 方法的未來改進指明了方向。

2 STEP-BACK PROMPTING

STEP-BACK PROMPTING 的動機來源于這樣一個觀察:許多任務包含大量細節,使得LLMs難以檢索出相關事實來解決問題。如圖2頂部所示的第一個例子中,對于一個物理問題——“如果溫度增加2倍、體積增加8倍,理想氣體的壓強P會發生什么變化?”,LLM在直接進行推理時可能會偏離理想氣體定律這一基本原理。同樣,“Estella Leopold 在1954年8月至1954年11月之間就讀于哪所學校?”這樣的問題由于其涉及特定時間范圍,也很難被直接解決。在這兩種情況下,引導模型思考一個“退一步”的問題有助于更有效地解決原始問題。

我們將step-back question(退一步的問題)定義為:從原始問題中抽象出來的更高層次的問題。例如,與其直接問“Estella Leopold 在特定時期就讀哪所學校?”,不如提出一個退一步的問題(如圖2底部所示):“Estella Leopold 的教育經歷是什么?”,這是一個涵蓋原始問題的高層概念。回答“Estella Leopold 的教育經歷”這一退一步的問題,將提供所有推理出“特定時期她在哪所學校就讀”所需的信息。其前提是,退一步的問題通常更容易回答。基于這類抽象事實進行推理,可以避免在中間步驟中出現推理錯誤,例如圖2左側 Chain-of-Thought 示例中出現的錯誤。

簡而言之,STEP-BACK PROMPTING 包含兩個簡單步驟

  • Abstraction(抽象):不是直接處理原始問題,而是首先提示LLM提出一個關于高層概念或原理的通用性 step-back 問題,并檢索與該高層概念或原理相關的事實。每個任務都有獨特的 step-back 問題,以檢索最相關的事實。
  • Reasoning(推理):在獲取的高層概念或原理相關事實的基礎上,LLM可以圍繞原始問題進行推理,我們將其稱為基于抽象的推理(Abstraction-grounded Reasoning)

在接下來的章節中,我們將展示 STEP-BACK PROMPTING 在一系列具有挑戰性的任務上的實證研究,這些任務涉及復雜推理,包括 STEM(科學、技術、工程和數學)、知識問答以及多跳推理。

3 實驗設置

在本節中,我們定義了所使用的任務和模型,并介紹了評估指標以及對比的基線方法。

3.1 任務

我們在以下多樣化任務上進行實驗:(a)STEM、(b)知識問答(Knowledge QA)、(c)多跳推理(Multi-Hop Reasoning)。所使用的數據集如下(詳見附錄 B):

  • STEM:我們在 MMLU 和 GSM8K 上評估 STEM 任務的表現。MMLU(Hendrycks et al., 2020)是一個跨多個領域的基準集,用于評估模型的語言理解能力。我們選擇其中高中物理和化學部分,因為這些題目需要深度推理。
  • 知識問答(Knowledge QA):我們使用 TimeQA(Chen et al., 2021),因為其中包含對時間敏感的復雜查詢問題。我們也使用 SituatedQA(Zhang & Choi, 2021),該數據集需要模型在給定時間或地理上下文的情況下回答開放檢索式問題。
  • 多跳推理(Multi-Hop Reasoning):我們選用 MuSiQue(Trivedi et al., 2022),這是一個通過組合單跳問題構造的多跳推理數據集;以及 StrategyQA(Geva et al., 2021),它包含需要策略性思考的開放域問題。

3.2 模型

我們使用以下當前最先進的大語言模型(LLMs):

  • PaLM-2L(指令微調版本)(Anil et al., 2023)
  • GPT-4(OpenAI, 2023)
  • Llama2-70B(Touvron et al., 2023)

3.3 評估

傳統的評估指標如準確率(accuracy)、F1分數,在評估最先進的LLMs生成內容時存在局限性,因為這些模型往往生成的是長文本答案,很難直接比較是否一致。因此,我們使用 PaLM-2L 模型進行評估,采用 few-shot prompt 的方式判斷模型預測結果與目標答案是否等價。具體的 few-shot 示例、提示語及評估細節可見附錄 C。

3.4 基線方法

我們對以下基線方法進行評估:

  • PaLM-2L / PaLM-2L 1-shot:直接對模型提問,或在提示中加入一個問題-答案的示例(1-shot)。
  • PaLM-2L + CoT / CoT 1-shot:使用零樣本 Chain-of-Thought 提示(CoT)(Kojima et al., 2022),在問題后附加“Let’s think step by step”。1-shot 情況下,在提示中加入一個按 CoT 格式寫出的示例問答對(Wei et al., 2022b)。
  • PaLM-2L + TDB:使用“Take a deep breath and work on this problem step-by-step.”(Yang et al., 2023)作為前綴進行零樣本提示。
  • PaLM-2L + RAG:在第5節和第6節的實驗中使用檢索增強生成(RAG)方法,將檢索到的文本作為上下文提供給LLM。
    ?? 對于 STEM 任務未使用 RAG,因為這類任務本質上依賴推理而非事實檢索。
  • GPT-4 和 Llama2-70B:我們在所有方法上對 MMLU 數據集使用 GPT-4 和 Llama2-70B。此外,GPT-4 還被用于所有任務的所有基線實驗。

所有推理均使用貪婪解碼(greedy decoding)進行。

4 STEM

我們在STEM任務(Hendrycks et al., 2020)上評估STEP-BACK PROMPTING,以衡量我們的方法在高度專業化領域推理方面的有效性。我們在下文中解釋了在MMLU高中物理與化學部分以及GSM8K基準上應用STEP-BACK PROMPTING的實驗設置、結果和分析。

4.1 STEP-BACK PROMPTING

MMLU基準中的問題需要更深層次的推理。此外,它們還要求理解和應用公式,這些公式通常是物理和化學中的原理和概念。在這種情況下,我們首先以概念和第一性原理的形式向模型展示抽象能力,例如牛頓第一運動定律、多普勒效應和吉布斯自由能等。

在這里插入圖片描述

這里隱含的后退一步問題是“解決該任務涉及了哪些物理或化學原理和概念?”。我們通過示例演示讓模型從自身知識中背誦解決該任務所需的相關原理(具體的少量示例見附錄D.1)。

4.2 結果

表1展示了三個模型家族(PaLM-2L、GPT-4和Llama2-70B)在不同設置下的模型表現。報告了5次評估運行的平均準確率及標準差(括號內)。PaLM-2L基線在物理和化學任務上的準確率分別為66.4%和70.9%。我們發現零-shot的Chain-of-Thought(CoT)和Take-a-Deep-Breath(TDB)提示法并未顯著提升模型表現,這可能是由于這些任務固有的難度和深度推理需求。PaLM-2L 1-shot及PaLM-2L + CoT 1-shot的表現也未對基線帶來明顯提升,凸顯了向模型演示推理步驟的挑戰。相比之下,STEP-BACK PROMPTING顯著提升了模型表現,分別比PaLM-2L提升了7%和11%。同樣,在GPT-4和Llama2-70B模型上,STEP-BACK PROMPTING在我們測試的所有基線方法中表現極具競爭力,表明STEP-BACK PROMPTING具有模型無關性。GSM8K的結果見附錄A.1。

在這里插入圖片描述
溫馨提示:
閱讀全文請訪問"AI深語解構" STEP-BACK PROMPTING:退一步:通過抽象在大型語言模型中喚起推理能力

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

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

相關文章

Paimon vs. HBase:全鏈路開銷對比

Paimon 在特定場景(如流式 Lookup Join)下,會為了極致的查詢性能而引入額外的存儲(本地磁盤 LookupFile)和計算(構建 LookupFile)開銷。但這是一種用一次性的、可控的開銷,換取后續持…

本地的包名導致的AttributeError: module ‘langchain‘ has no attribute ‘verbose‘

你遇到的 AttributeError: module langchain has no attribute verbose 問題,確實可能是因為你的本地文件或目錄名與 langchain 官方包沖突,導致 Python 在導入時優先加載了你的本地文件而非真正的 langchain 庫。 問題原因 Python 模塊加載機制&#xf…

玄機——某學校系統中挖礦病毒應急排查

本篇文章主要記錄某學校長期未運營維護的程序,被黑客發現了漏洞,但好在學校有全流量設備,抓取到了過程中的流量包 需要你進行上機以及結合流量分析,排查攻擊者利用的漏洞以及上傳利用成功的木馬 文章目錄 靶機介紹1.使用工具分析共…

如何解決wordpress批量刪除媒體庫中的圖片很慢甚至卡死問題

批量刪除WordPress媒體庫中的圖片速度很慢,如果批量刪除的圖片多會出現CPU100%甚至卡死,出現這個問題通常最主要的原因是服務器性能問題,如果換成性能好的服務器就不會了,比如換Siteground 家的服務器,就不會有這個問題…

深度學習入門day4--手寫數字識別初探

魚書提供的代碼可以在github找到。源碼地址 環境配置部分可以看前面幾篇博客,還是用Anaconda,運行下面代碼,可以看哪個庫缺失。 import importlib import numpy as np deps {"torch": "torch","torchvision"…

STM32中定時器配置,HAL_Delay的原理,滴答定時器,微秒延時實現,PWM,呼吸燈

目錄 定時器基本定時功能實現 CubeMX設置 手動書寫代碼部分 定時器啟動 實現溢出回調函數 HAL_Delay介紹 HAL_Delay實現原理 HAL_Delay的優點 HAL_Delay的缺點 利用滴答定時器(SysTick)實現微秒級延時 PWM PWM介紹 通用定時器中的重要寄存器 PWM中的捕獲比較通道 …

飛牛NAS(fnOS)詳細安裝教程

以下是飛牛NAS(fnOS)的詳細安裝教程,結合官方指南和社區實踐整理而成: 一、準備工作 硬件需求 8GB或更大容量的U盤(用于制作啟動盤)待安裝設備(支持x86架構的物理機或迷你主機,如天鋇…

springboot 顯示打印加載bean耗時工具類

一 spring的原生接口說明 1.1 接口說明 Aware是Spring框架提供的一組特殊接口,可以讓Bean從Spring容器中拿到一些資源信息。 BeanFactoryAware:實現該接口,可以訪問BeanFactory對象,從而獲取Bean在容器中的相關信息。 Environm…

OpenGL空間站場景實現方案

OpenGL空間站場景實現方案 需求分析 根據任務要求,我需要完成一個基于Nehe OpenGL的空間站場景,實現以下功能: 完整的空間站場景建模(包含多個模型和紋理貼圖)Phong光照模型實現(包含多種光源和材質效果)攝像機鍵盤控制交互功能解決方案設計 技術棧 C++編程語言OpenG…

基于昇騰310B4的YOLOv8目標檢測推理

YOLOv8目標檢測 om 模型推理 本篇博客將手把手教你如何將 YOLOv8 目標檢測模型部署到華為昇騰 310B4 開發板上進行高效推理(其他昇騰開發版也可參考此流程)。 整個流程包括: 模型格式轉換(ONNX → OM)昇騰推理環境配…

前端跨域問題解決Access to XMLHttpRequest at xxx from has been blocked by CORS policy

在前端開發中,跨域資源共享(CORS)是一個常見的問題。它涉及到瀏覽器安全機制,防止網頁從一個域獲取資源時被另一個域阻止。錯誤信息如“Access to XMLHttpRequest at xxx from origin has been blocked by CORS policy”是典型的跨…

[ linux-系統 ] 軟硬鏈接與動靜態庫

軟硬鏈接 介紹 軟鏈接 通過下圖可以看出軟鏈接和原始文件是兩個獨立的文件,因為軟鏈接有著自己的inode編號: 具有獨立的 inode ,也有獨立的數據塊,它的數據塊里面保存的是指向的文件的路徑,公用 inode 硬鏈接 通過…

3D 商品展示與 AR 試戴能為珠寶行業帶來一些便利?

對于珠寶行業而言,長久以來,如何讓消費者在做出購買決策之前,便能真切且直觀地領略到珠寶獨一無二的魅力,始終是橫亙在行業發展道路上的一道棘手難題。而 3D 互動營銷的橫空出世,恰似一道曙光,完美且精準地…

電子電氣架構 --- SOVD功能簡單介紹

我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 簡單,單純,喜歡獨處,獨來獨往,不易合同頻過著接地氣的生活,除了生存溫飽問題之外,沒有什么過多的欲望,表面看起來很高冷,內心熱情,如果你身…

【Java編程動手學】 Java中的運算符全解析

文章目錄 一、引言二、算術運算符1、基本概念2、具體運算符及示例 三、關系運算符1、基本概念2、具體運算符及示例 四、自增減運算符1、基本概念2、具體運算符及示例 五、邏輯運算符1、基本概念2、具體運算符及示例 六、位運算符1、基本概念2、具體運算符及示例 七、移位運算符…

【前端】1 小時實現 React 簡歷項目

近期更新完畢。僅包括核心代碼 目錄結構 yarn.lock保證開發者每次能下載到同版本依賴,一般不需要特別留意 package.json 是 Node.js 項目、前端項目、npm/yarn的配置文件。 Dockerfile 是用來 定義 Docker 鏡像構建過程的文本文件。它是一份腳本,告訴 …

python中的pydantic是什么?

Pydantic 是 Python 中一個用于數據驗證和設置管理的庫,主要通過 Python 類型注解(Type Hints)來定義數據結構,并自動驗證輸入數據的合法性。它廣泛應用于 API 開發(如 FastAPI)、配置管理、數據序列化等場…

騰訊云市場目前飽和度

首先我需要理解市場飽和度的概念。市場飽和度通常指一個產品或服務在潛在市場中的滲透程度,高飽和度意味著市場增長空間有限,低飽和度則表明還有較大發展潛力。 從搜索結果看,騰訊云目前在中國云服務市場排名第三,市場份額約為15%…

EDR、NDR、XDR工作原理和架構及區別

大家讀完覺得有幫助記得關注和點贊!!! EDR、NDR、XDR是網絡安全中關鍵的檢測與響應技術,它們在覆蓋范圍、數據源和響應機制上有顯著差異。以下是它們的工作原理和架構詳解: --- ### 🔍 一、EDR&#xff0…

vue3 + luckysheet 實現在線編輯Excel

效果圖奉上: 引入的依賴: "dependencies": {"types/jquery": "^3.5.32","types/xlsx": "^0.0.36","jquery": "^3.7.1","xlsx": "^0.18.5",}在index.html中…