色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          "); //-->

          博客專欄

          EEPW首頁 > 博客 > 關(guān)于Prompt Engineering你該了解啥?OpenAI應(yīng)用研究負(fù)責(zé)人幫你梳理了(2)

          關(guān)于Prompt Engineering你該了解啥?OpenAI應(yīng)用研究負(fù)責(zé)人幫你梳理了(2)

          發(fā)布人:機(jī)器之心 時(shí)間:2023-04-23 來源:工程師 發(fā)布文章
          自動 Prompt 設(shè)計(jì)

          Prompt 是一系列前綴 token,可增加在給定輸入的情況下獲得所需輸出的概率。因此,可以將它們視為可訓(xùn)練參數(shù),并通過梯度下降直接在嵌入空間上對其進(jìn)行優(yōu)化,例如 AutoPrompt [Shin et al., 2020, Prefix-Tuning (Li & Liang (2021)],P-tuning [Liu et al. . 2021)] 和 Prompt-Tuning [Lester et al. 2021]。從 AutoPrompt 到 Prompt-Tuning 的趨勢是設(shè)置逐漸簡化。APE [Automatic Prompt Engineer;Zhou et al. 2022] 是一種搜索模型生成的候選指令池,然后根據(jù)所選得分函數(shù)過濾候選集以最終選擇得分最高的最佳候選的方法。

          1、Prompt LLM 根據(jù) input-output 對形式的演示集合生成候選指令。例如。{{Given desired input-output pairs}}\n\nThe instruction is;

          2、給定 Dtrain={(x,y)} 的數(shù)據(jù)集,想要找到一條指令 ρ 使得 ρ?=arg?maxρE (x,y)∈Dtrain [f (ρ,x,y)],其中 f (.) 是每個(gè)樣本的得分函數(shù),比如如執(zhí)行精度 [LM (.|ρ, x)=y] 或?qū)?shù)概率:Plm (y|ρ,x);

          3、使用迭代蒙特卡洛搜索方法通過 prompt 提出語義相似的變體來改進(jìn)最佳候選,例如 Generate a variation of the following instruction while keeping the semantic meaning.\n\nInput: ...\n\nOutput:...


          為了自動構(gòu)建 CoT prompt [ Shum et al. (2023) ] 建議 augment-prune-select,包含三個(gè)步驟的過程:

          1.Augment:使用 few-shot 或 zero-shot CoT prompt 生成給定問題的多個(gè)偽 CoT;

          2.Prune:根據(jù)生成的答案是否與基本事實(shí)相匹配來修剪偽鏈;

          3.Select:應(yīng)用 variance-reduced 梯度策略來學(xué)習(xí)所選示例的概率分布,同時(shí)將示例的概率分布作為策略,將驗(yàn)證集的準(zhǔn)確性作為獎(jiǎng)勵(lì)。


          [Zhang et al. (2023) ] 采用聚類技術(shù)對問題進(jìn)行抽樣,然后生成鏈。他們觀察到 LLM 傾向于犯某些類型的錯(cuò)誤。一種類型的錯(cuò)誤在嵌入空間中可能相似,因此被組合在一起。通過只從頻繁錯(cuò)誤的集群中抽取一個(gè)或幾個(gè)樣本,可以防止對一種錯(cuò)誤類型的過多錯(cuò)誤演示,并收集一組不同的例子。

          1. 問題聚類:嵌入問題并運(yùn)行 k-means 聚類的方法;

          2. 示例選擇:從每個(gè)簇中選擇一組有代表性的問題;即來自一個(gè)簇的一個(gè)示例。每個(gè)簇中的樣本按到簇質(zhì)心的距離排序,最接近質(zhì)心的樣本首先被選擇;

          3. 生成推理鏈:使用 zero-shot CoT 為選定的問題生成推理鏈,并構(gòu)建 few-shot prompt 來運(yùn)行推理。


          增強(qiáng)語言模型[Mialon et al. (2023) ] 對增強(qiáng)語言模型進(jìn)行的一項(xiàng)調(diào)查。涵蓋了多類增強(qiáng)推理技能和使用外部工具能力的語言模型。推薦讀者可以讀一下。檢索通常,我們需要在模型預(yù)訓(xùn)練時(shí)間截止或內(nèi)部 / 私有知識庫之后,完成需要最新知識的任務(wù)。在這種情況下,如果不在 prompt 中顯式提供上下文,模型將不知道上下文。開放領(lǐng)域問答的許多方法都依賴于首先在知識庫上進(jìn)行檢索,然后將檢索到的內(nèi)容作為 prompt 的一部分。這個(gè)過程的準(zhǔn)確性取決于檢索和生成步驟的質(zhì)量。[Lazaridou et al. (2022) ] 研究了如何使用谷歌搜索進(jìn)行文檔檢索以增強(qiáng) LLM。給定一個(gè)問題 q,從谷歌返回的 20 個(gè) URL 中提取文本,得到一組文檔。由于這些文檔很長,因此每個(gè)文檔被拆分為 6 個(gè)句子的段落,{p}。段落是根據(jù)證據(jù)段落和查詢之間基于 TF-IDF 的余弦相似性進(jìn)行排序的。在 prompt 中只使用最相關(guān)的段落來產(chǎn)生答案 a.對于閉卷問答,每個(gè)演示的格式如下,以構(gòu)建 few-shot prompt。發(fā)現(xiàn)將問題與證據(jù)交換(問題和答案之間的距離更長)在所有數(shù)據(jù)集中始終產(chǎn)生較低的結(jié)果。




          Evidence: ...Question: ...Answer: ...


          答案的概率以三種方式計(jì)算:

          1.RAG 風(fēng)格,圖片,其中 圖片是 TF-IDF 段落和問題表示之間的歸一化余弦相似度。

          2. 噪聲信道推斷:圖片

          3.Product-of-Experts (PoE),結(jié)合上面使用的所有概率,但不包括圖片


          根據(jù)他們在生成和分類任務(wù)的實(shí)驗(yàn),在三個(gè)答案的重新排序得分中,PoE > 噪聲信道推斷 > RAG。在所有概率中,pLM (a|q,pi) 和 pLM (q|pi,a) 提供的信息最多。pLM (q|pi,a) 捕捉到 LM 在給定證據(jù)段落和答案的情況下對問題的解釋有多好,并且可以可靠地用于對候選答案進(jìn)行重新排序。針對基于不同日期的問題的 SituatedQA 數(shù)據(jù)集進(jìn)行的一項(xiàng)觀察是,盡管 LM(預(yù)訓(xùn)練截止日期為 2020 年)可以通過 Google 搜索訪問最新信息,但其在 2020 年后問題上的表現(xiàn)仍然比 2020 年前問題差很多。這表明上下文信息和模型內(nèi)部知識之間存在一些差異或參數(shù)沖突。 有趣的是,即使只有 “內(nèi)部檢索” 也是有益的,即在回答問題之前生成關(guān)于某個(gè)主題的知識 [Liu et al. 2022]。首先可以使用下面的模板來抽取知識:








          Generate some knowledge about the input. Examples:
          Input: What type of water formation is formed by clouds?Knowledge: Clouds are made of water vapor.
          Input: {question}Knowledge:


          然后用模型生成的知識,進(jìn)一步給 LM 進(jìn)行 prompt 得到答案。編程語言既有 PAL(程序輔助語言模型) [ Gao et al. 2022] 和 PoT (Program of Thoughts prompting [Chen et al. 2022] 要求 LLM 生成編程語言語句來解決自然語言推理問題,從而將解決方案步驟轉(zhuǎn)移到運(yùn)行時(shí),如 Python 解釋器。這樣的設(shè)置解耦了復(fù)雜的計(jì)算和推理。該方法依賴于具有足夠好的編程技能的 LM。圖片圖 2. 比較 CoT 和 PoT.(圖片源自: Chen et al. 2022)。外部 APITALM(Tool Augmented Language Models [ Parisi et al. 2022])是一種通過文本到文本 API 調(diào)用增強(qiáng)的語言模型。LM 被引導(dǎo)生成以任務(wù)輸入文本為條件的工具調(diào)用和工具輸入文本,以構(gòu)建 API 調(diào)用請求。當(dāng) result 出現(xiàn)時(shí),調(diào)用指定的工具 API,并將返回的結(jié)果附加到文本序列。最終輸出是在 output token 之后生成的。

          圖片

          圖 3. TALM 中調(diào)用 API 的格式 (圖片源自: Parisi et al. 2022)。TALM 采用 self-play 的方法來迭代引導(dǎo)工具使用示例的數(shù)據(jù)集,并用它來微調(diào) LM。這個(gè)迭代的 self-play 模仿了一個(gè) RL 過程,其中 LM 是策略網(wǎng)絡(luò),它由帶有二元獎(jiǎng)勵(lì)信號的策略梯度訓(xùn)練。

          圖片

          圖 4. Self-play 迭代提升模型的性能 (圖片源自: Parisi et al. 2022)。Toolformer [Schick et al. 2023] 是一種可以通過簡單的 API 使用外部工具的 LM,通過自我監(jiān)督的方式構(gòu)建,每個(gè) API 只需要少量的演示。Toolformer 的工具箱包括:

          • 計(jì)算系統(tǒng):幫助 LM 缺乏精確的數(shù)學(xué)技能;

          • 問答系統(tǒng):幫助解決無效內(nèi)容;

          • 搜索引擎:在預(yù)訓(xùn)練截止時(shí)間后提供最新信息;

          • 翻譯系統(tǒng):提高低資源語言性能;

          • 日歷系統(tǒng):使 LM 了解時(shí)間進(jìn)程。

           

          圖片圖 5. 如何構(gòu)建 Toolformer.(圖片源自: Schick et al. 2023)。Toolformer 的訓(xùn)練過程如下:1.Prompt 注釋下的 API 調(diào)用。要求預(yù)訓(xùn)練的 LM 通過帶有 API 調(diào)用使用示例的 few-shot 學(xué)習(xí)來注釋數(shù)據(jù)集。格式化示例:

          圖片

          圖 6. 數(shù)據(jù)集如何在調(diào)用 API 的時(shí)候注釋 (圖片源自: Schick et al. 2023)。每個(gè) API 調(diào)用都表示為一個(gè)元組(API 名稱,相應(yīng)的輸入),圖片其對應(yīng)的結(jié)果記為 r。有結(jié)果和無結(jié)果的 API 調(diào)用序列分別標(biāo)注如下:

          圖片

          基于概率圖片 的 API 調(diào)用,如果概率大于某個(gè)閾值,則選擇前 k 個(gè)候選在位置 i 進(jìn)行 API 調(diào)用;然后,從 LM 中采樣潛在的 API 調(diào)用,其中序列 [prompt (x),x1,…,xi?1,?API?] 作為前綴,?/API? 作為后綴。2. 根據(jù) API 調(diào)用是否有助于模型預(yù)測未來 token 來過濾注釋。使用自監(jiān)督損失來確定哪些 API 調(diào)用產(chǎn)生實(shí)際的幫助。執(zhí)行每個(gè) API 調(diào)用 c_i 得到對應(yīng)的結(jié)果 r_i; 計(jì)算 LM 在 token 序列 xi,...,xn 上的加權(quán)交叉熵?fù)p失,當(dāng)模型以 prompt 為前綴時(shí)。計(jì)算了兩個(gè)版本,一個(gè)帶有 API 結(jié)果,另一個(gè)帶有空序列 ε;

          圖片

          僅保留圖片大于閾值的 API 調(diào)用,這表示添加此 API 調(diào)用及其結(jié)果有助于模型預(yù)測未來的 token。3. 在注釋數(shù)據(jù)集上微調(diào) LM。新的訓(xùn)練序列構(gòu)造為圖片訓(xùn)練數(shù)據(jù)是原始數(shù)據(jù)集(例如論文中的 CCNet 子集)及其增強(qiáng)版。在推理時(shí),解碼會一直運(yùn)行,直到模型產(chǎn)生 “→”token,表明它期待接下來來自 API 調(diào)用的響應(yīng)。Toolformer 目前不支持在鏈中使用工具(即使用一個(gè)工具的輸出作為另一個(gè)工具的輸入)或以交互方式(即在人工選擇后采用 API 響應(yīng))。兩者都是未來擴(kuò)展模型的方向。原文鏈接:https://lilianweng.github.io/posts/2023-03-15-prompt-engineering/


          *博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。



          關(guān)鍵詞: AI

          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉