文獻閱讀:AnnoLLM: Making Large Language Models to Be Better Crowdsourced Annotators

  • 文獻閱讀:AnnoLLM: Making Large Language Models to Be Better Crowdsourced Annotators
    • 1. 文章簡介
    • 2. 方法介紹
    • 3. 實驗考察
      • 1. 實驗結果
      • 2. 消解實驗
      • 3. Consistency & Stability
    • 4. 結論 & 思考
  • 文獻鏈接:https://arxiv.org/abs/2303.16854

1. 文章簡介

這一篇文章是我司的另一篇關于GPT模型的Prompt工程調優的文章,不過這篇文章的方法挺有啟發意義的,而且這篇文章的工作本身也和我最近在做的工作比較契合,因此打算在這里對這篇文章進行一下整理。

這篇文章的核心工作如前所述,是一個prompt調優的工作,用于使得GPT任務在分類任務的標注上獲取更好的效果。

而這篇文章的核心思路其實還是對齊,他在文章中引入了一個叫做explain-then-annotate的方法,算是一個few-shot的變體,不過不同于few-shot的直接給答案或者人工給一些答案,文中采用的方式是先給模型一些人工標注的ground-truth,然后要求模型對此生成explanation來作為few-shot的內容。

用這種方式,某種意義上可以強制LLM對齊任務的判斷標準與人的標準相同,從而使得模型在標注任務當中能夠收獲更好的效果。

2. 方法介紹

下面,我們來具體看一下文中的prompt的具體構造方法以及給出一個具體的prompt例子。

首先,我們來看一下AnnoLLM的整體的設計,這個可以用文中的圖表進行展示:

在這里插入圖片描述

其中,左側是人工標注的流程,而右側則是AnnoLLM的過程。

可以看到,其主要是包含了兩個步驟:

  1. 給出task description以及一些標注數據,讓模型來說明標注這些label的理由;
  2. 將上述task description,樣例數據以及模型回答的理由作為few-shot prompt輸入給模型,然后要求模型回答目標問題。

其具體的一個樣例如下表所示:

在這里插入圖片描述

其中,粗體的部分就是預先給到LLM答案之后由LLM自己生成的explanation,其具體的prompt如下:

在這里插入圖片描述

通過這種方式,我們就可以迫使模型去對齊ground truth當中人類的判斷標準,從而獲得一個更好的效果表達。

3. 實驗考察

下面,我們來看一下文中給出具體實驗結果。

1. 實驗結果

文中實驗主要使用了如下三個數據集:

在這里插入圖片描述

其中:

  1. QK數據集是一個query與keyword的relevance判斷問題;
  2. BoolQ數據集是一個針對doc以及question的是非判斷問題;
  3. WiC數據集則是判斷同一個詞在兩個sentence當中是否有相同的語義;

給出三個數據集下的實驗結果如下:

  1. QK

    在這里插入圖片描述

  2. BoolQ

    在這里插入圖片描述

  3. WiC

    在這里插入圖片描述

可以看到:

  • 在三個任務當中,模型都獲得了很好的效果。

2. 消解實驗

為了驗證這個CoT方法的有效性,文中還給出了消解實驗的實驗結果如下:

在這里插入圖片描述

我們首先來看一下各組實驗都是什么:

  1. baseline,先用label生成explanation,然后在explanation之后拼上label進行強調;
  2. 先用label生成explanation,然后刪掉句首的label內容,只保留explanation,但是在句尾拼上label的內容;
  3. 先用label生成explanation,然后只將explanation拼到label之后;
  4. 和1在格式上保持一致,但是在生成explanation時并不事先告訴模型ground truth,而是讓模型自由發揮,然后在模型自由生成的explanation之后拼上ground truth;
  5. 和4在格式和內容上保持一致,但是對explanation通過一些簡單的過濾規則進行一些后處理,去除掉那些和ground truth不一致的解釋。

可以看到:

  • 實驗2,3主要是在考察格式對結果的影響;
  • 實驗4,5主要是在考察explanation的生成方式對結果的影響;

結論來說:

  1. 比較1和2,可以看到,句首的grouth truth對于模型的理解有很重要的作用,刪除會對模型效果有所影響,即使句末會給到真實的ground truth也一樣;
  2. 比較1和3,我們注意到句末的ground truth label的拼接對于模型效果的影響是比較微弱的;
  3. 比較1和4,我們發現,如果不使用label讓模型生成explanation,事實上并沒有起到標準對齊的效果,模型infer的效果下降會很明顯;
  4. 比較4和5,我們注意到即使通過一些規則過濾掉一些明顯與ground truth不一致的explanation的情況下,模型效果依然無法恢復到baseline的水平,這可能由于某些問題模型自身始終無法給到正確的explanation,因此無法通過簡單規則過濾得到ground truth對應的解釋。

3. Consistency & Stability

最后,文章中還考察了一下這一方法的一致性和穩定性,具體來說,就是以下兩個點:

  1. 一致性:生成的不同explanation作為prompt是否都能獲得較好的效果;
  2. 穩定性:不同的few-shot上面CoT是否都能穩定的獲得收益;

給出文中的具體實驗結果圖如下:

在這里插入圖片描述

可以看到:

  • CoT的提升效果是穩定且一致的。

4. 結論 & 思考

綜上,這篇文章依然還是一個prompt調優的工作,不過確實感覺很有啟發意義。

且核心的思路根據我的理解依然還是在于對齊,雖然文中稱之為CoT,不過我個人覺得不是特別合適,因為并沒有看出來Chain的效果,更多的感覺還是一個個單例來迫使模型對齊了標準,從而提升了模型判斷與人類判斷的一致性。

而另一個好的點在于這篇文章的方法論事實上是比較泛化的,基本上可以無縫銜接到所有的分類問題當中,而且實現上也非常簡單,倒是可以在我們自己的工作中也試試看,應該可以獲得比較好的效果。

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

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

相關文章

Golang設計模式

Golang設計模式 Golang設計模式簡介Golang工廠設計模式Golang單例設計模式Golang抽象工廠設計模式Golang建造者模式 (Builder Pattern)Golang 原型模式(Prototype Pattern)Golang適配器模式Golang 橋接模式(Bridge Pattern)Golang裝飾器模式(Decorator …

j東h5st參數多局部ob加密(js_security_v3_0.1.4.js)加密分析

j東h5st參數多局部多次ob加密(js_security_v3_0.1.4.js) 大家好呀,我是你們的好兄弟,【星云horseAK】,今天的主題真的是千呼萬喚始出來,某東東的h5st參數,這個加密的js文件使用了obfuscator進行…

《Java-SE-第三十六章》之枚舉

前言 在你立足處深挖下去,就會有泉水涌出!別管蒙昧者們叫嚷:“下邊永遠是地獄!” 博客主頁:KC老衲愛尼姑的博客主頁 博主的github,平常所寫代碼皆在于此 共勉:talk is cheap, show me the code 作者是爪哇島的新手,水平很有限&…

Linux 日志管理

Linux 日志管理 一.Linux 下的日志服務簡介 1.1 CentOS5 之前的版本 centos5 之前的版本使用系統和內核日志分離的格式記錄日志 syslogd:該服務專門用于記錄系統日志(system application logs) klogd: 該服務專門用于記錄內核日志(linux kernel logs) centos5 之前事件的記錄格…

Redis_Geospatial(基于位置信息的應用)

12.Geospatial 12.1 簡介 基于位置信息服務(Location-Based Service,LBS)的應用。Redis3.2版本后增加了對GEO類型的支持。主要來維護元素的經緯度。redis基于這種類型,提供了經緯度設置、查詢、范圍查詢、距離查詢、經緯度hash等一些相關操作 12.2 GEO底層結構 …

war和war exploded

war和war exploded的區別 war模式&#xff1a;將WEB工程以包的形式上傳到服務器 &#xff1b; war exploded模式&#xff1a;將WEB工程以當前文件夾的位置關系上傳到服務器&#xff1b;>> war包是自己打包生成的&#xff0c;如pom文件中<packaging>war</packag…

使用 Visual Studio Code 調試 CMake 腳本

之前被引入到 Visual Studio 中的 CMake 調試器&#xff0c;現已在 Visual Studio Code 中可用。 也就是說&#xff0c;現在你可以通過在 VS Code 中安裝 CMake 工具擴展&#xff0c;來調試你的 CMakeLists.txt 腳本了。是不是很棒? 背景知識 Visual C 開發團隊和 CMake 的維…

Flutter源碼分析筆記:Widget類源碼分析

Flutter源碼分析筆記 Widget類源碼分析 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at: https://jclee95.blog.csdn.netEmail: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_28550263/article/details/132259681 【介紹】&#x…

TestNG和Junit5測試框架梳理

一、testNG 1. testNG優勢 注解驅動&#xff1a; TestNG 使用注解來標識測試方法、測試類和配置方法&#xff0c;使得測試更具可讀性。 并行執行&#xff1a; TestNG 支持多線程并行執行測試&#xff0c;可以加速測試套件的執行。 豐富的配置&#xff1a; 可以通過 XML 配置文…

Qt下載安裝及配置教程

進入qt中文網站&#xff1a;https://www.qt.io/zh-cn/ 下載開源版 往下滑&#xff0c;下載Qt在線安裝程序 它已經檢測出我的是windows系統&#xff0c;直接點擊download就好。如果是其它的系統&#xff0c;需要找到對應自己系統的安裝包。 然后跟網速有關&#xff0c;等…

Gitlab CI/CD筆記-第三天-使用主機docker in docker 進行構建并push鏡像。

一、啥叫docker in docker 就是允許的鏡像里頭有一個docker,但這個docekr鏡像只有docker的cli和/var/lib/docker.sock的套接字&#xff0c;沒有允許build.然后里頭又運行了一個docker&#xff0c;這個docker有build的能力&#xff0c;此時構建時就是里頭的docker使用外部的dock…

登錄驗證碼實現

Hutool代碼改造 Hutool 有參考文檔&#xff1b;很多工具類&#xff1b;把一些功能都封裝好&#xff1b;都不用你自己去寫&#xff1b;直接調用它的工具類 它這里會詳細告訴你引入方式Hutool <dependency><groupId>cn.hutool</groupId><artifactId>hu…

STM32F429IGT6使用CubeMX配置SPI通信(W25Q256芯片)

1、硬件電路 需要系統性的看一下W25Q256芯片手冊 2、設置RCC&#xff0c;選擇高速外部時鐘HSE,時鐘設置為180MHz 3、配置SPI 4、生成工程配置 5、相關代碼 #define sFLASH_ID 0XEF4019 // W25Q256#define SPI_FLASH_PageSize 256 #define SPI_FLASH_PerWritePageSize 256#def…

《雷達像智能識別對抗研究進展》閱讀記錄

&#xff08;1&#xff09;引言 ? 神經網絡通常存在魯棒性缺陷&#xff0c;易受到對抗攻擊的威脅。攻擊者可以隱蔽的誘導雷達智能目標識別做出錯誤預測&#xff0c;如&#xff1a; ? a圖是自行車&#xff0c;加上對抗擾動后神經網絡就會將其識別為挖掘機。 &#xff08;2&a…

【Quarkus技術系列】打造基于Quarkus的云原生微服務框架實踐(1)

前提介紹 本系列文章主要講解如何基于Quarkus技術搭建和開發"專為Kubernetes而優化的Java微服務框架"的入門和實踐&#xff0c;你將會學習到如何搭建Quarkus微服務腳環境及腳手架&#xff0c;開發Quarkus的端點服務&#xff0c;系統和應用層級的配置介紹與Quarkus的…

單芯片3路CC管理的VR轉接器解決方案

VR眼鏡即VR頭顯&#xff0c;也稱虛擬現實頭戴式顯示設備&#xff0c;隨著元宇宙概念的傳播&#xff0c;VR眼鏡的熱度一直只增不減&#xff0c;但是頭戴設備的續航一直被人詬病&#xff0c;如果增大電池就會讓頭顯變得笨重影響體驗&#xff0c;所以目前最佳的解決方案還是使用VR…

C# BeginInvoke 加 EndInvoke實現異步操作

1、定義一個委托 delegate long MyDel(int first, int second); 2、 需異步操作的函數 static int sum(int x,int y) {Console.WriteLine("InSide Sum1");Thread.Sleep(1000);Console.WriteLine("InSide Sum2");return x y;} 3、回調方法…

[HDLBits] Exams/m2014 q3

Consider the function f shown in the Karnaugh map below. Implement this function. d is dont-care, which means you may choose to output whatever value is convenient. //empty

gitui 解決 git error:Bad credentials.

問題描述 cat .git/config """ [remote "origin"]url gitgitcode.net:xxx.gitfetch refs/heads/*:refs/remotes/origin/* """ls -lh ~/.ssh/ """ -rw------- 1 z z 2.6K 8月 12 15:04 id_rsa -rw-r--r-- 1 z z 56…