七月論文審稿GPT第5版:拿我司七月的早期paper-7方面review數據集微調LLama 3

前言

llama 3出來后,為了通過paper-review的數據集微調3,有以下各種方式

  1. 不用任何框架 工具 技術,直接微調原生的llama 3,畢竟也有8k長度了
    效果不期望有多高,純作為baseline
  2. 通過PI,把llama 3的8K長度擴展到12k,但需要什么樣的機器資源,待查
    apple為主,不染為輔
  3. 阿里云百練大模型服務平臺、百度智能云千帆大模型平臺對llama 3的支持
    文弱zu
  4. 通過llama factory微調3,但等他們適配3(除非我們改factory),類似
    llama factory + pi
    llama factory + longlora/longqlora?
  5. 我們自行改造longqlora(longlora也行,但所需機器資源更大),以適配3
    類似之前的經典組合:longqlora(PI + s2-Attn + qlora) + flash attention + zero3
  6. 基于xtuner微調llama 3
    三太子則在與70b微調工作不沖突的前提下,試下這個xtuner

第一部分?拿我司的paper-review數據集通過PI微調LLama 3

1.1?使用PI微調llama3-8b

// 待更

1.2 通過百度智能云的千帆大模型平臺微調Llama 3

// 待更

第二部分 基于llama factory和paper-review數據集微調LLama3

LLaMA Factory 現已支持 Llama 3 模型,提供了在 Colab 免費 T4 算力上微調 Llama 3 模型的詳細實戰教程:https://colab.research.google.com/drive/1d5KQtbemerlSDSxZIfAaWXhKr30QypiK?usp=sharing

同時社區已經公開了兩款利用本框架微調的中文版 LLaMA3 模型,分別為:

  1. Llama3-8B-Chinese-Chat,首個使用 ORPO 算法微調的中文 Llama3 模型,文章介紹:https://zhuanlan.zhihu.com/p/693905042
  2. Llama3-Chinese,首個使用 DoRA 和 LoRA+ 算法微調的中文 Llama3 模型,倉庫地址:https://github.com/seanzhang-zhichen/llama3-chinese

// 待更

第三部分 不用PI和S2-attn,調通Llama-3-8B-Instruct-262k

3.1 基于15K的「情況1:晚4數據」微調Llama 3 8B Instruct 262k

3.1.1 基于1.5K的「情況1:晚4數據」微調Llama 3 8B Instruct 262k

24年5.25日,我司審稿項目組的青睞同學,通過我司的paper-review數據集(先只取了此文情況1中晚期paper-4方面review數據中的1.5K的規模,另,本3.1.1節和3.1.2節都統一用的情況1中的晚期paper-4方面review數據),把llama3調通了

至于llama3的版本具體用的Llama-3-8B-Instruct-262k,這個模型不是量化的版本,其他很多版本雖然擴展長度了,但基本都傳的量化后的,這個模型的精度是半精的(當然,還有比較重要的一點是這個模型的下載量比較高)

以下是關于本次微調的部分細節,如青睞所說

  1. 一開始用A40 + 1.5K數據微調時,用了可以節省所需顯存資源的s2atten(S2-attention?+ flash attention),且由于用了 26k 長度擴展的那個模型,便不用插值PI了
    但48g的A40在保存模型的時候顯存會超過48g(訓練過程中不會出現),而zero3模型保存時會報oom,后來經驗證發現原因是:per_eval_device_batch size設置太大導致了oom

    總之,用A40 訓練時其具有的48g顯存是可以訓練超過 12k上下文數據的,不一定非得用s2atten(畢竟上面也說了,過程中微調llama3出現oom是因為per_eval_device_batch size設置太大照成的,與訓練沒啥關系,一個很重要的原因是llama3的詞匯表比較大,從32K拓展到了128K,壓縮率比較高,導致論文的長度比llama2短,所以A40也放的下)
  2. 后來改成了用A100訓練(數據規模還是1.5K),由于用了A100,故關閉了s2atten,直接拿12K的長度開訓,且用上了flash atten v2,得到下圖這個結果

3.1.2 用5K-15K的「情況1:晚4數據」微調Llama-3

再后來用8卡A40對5K或15K數據微調時,便也都沒有用S2-attention(關閉了),使用12K長度 + flash attention v2 微調

代碼和上面跑1.5K的數據一樣,也還是用的「七月大模型線上營那套longqlora代碼」,但把單卡設置成多卡

且直接租2臺「8卡的A40」,一臺5K的數據,一臺15K的數據,直接一塊跑

以下是15K數據(晚期paper-4方面review)微調后針對YaRN那篇論文得到的推理結果

接下來,青睞先推理下測試集中的晚期paper,輸出4方面review

最后,文弱測評一下,讓GPT4-1106、情況1的llama2(也是晚期paper-4方面review),都統一跟人工4方面review做下匹配

// 待更

3.2?基于15K的「情況3:早4數據」微調Llama 3 8B Instruct 262k

3.2.1?llama3版本的情況3 PK 上兩節llama3版本的情況1

上兩節用了晚期paper-4方面的review微調llama3-262k,類似于此文開頭總結的情況1:用晚期paper-4方面review微調llama2

本節咱們將基于15K的早期paper-4方面review類似于此文開頭總結的情況3:用早期paper-4方面review微調llama2

本節微調完之后,自然便可以與以下模型PK(針對哪個情況,則用那個情況的paper,所以評估llama3-262k版本的情況3時,則都統一早期paper)

llama3版本的情況3 當PK 上兩節的llama3版本的情況1,情況如下(當然,按理得勝,畢竟情況3的數據更強,相當于都是llama3,但數據質量不一樣,當然,無論是llama2 還是llama3,按道理情況3就得好過情況1,畢竟情況3 早4,情況1 晚4,情況3-早4的數據質量是更高的)

llama3版本的情況3?PK llama2版本的情況3,按理得勝,畢竟llama3更強


llama3版本的情況3?PK llama2版本的情況1(以阿荀微調的longqlora 7B做為情況1的基準),按理更得勝,畢竟llama3更強且情況3的數據更強,但目前得到的結果有些奇怪(如下圖所示),沒達預期,正在找原因中,待后續更新..

// 更多細節暫見我司的:大模型商用項目之審稿微調實戰營

3.2.2 llama3情況1 PK llama2情況1——評估微調llama3-8b-instruct-262k基座性能

之后,我們發現使用 15k 情況1樣本僅flash attention v2直接微調 llama3-8b-instruct-262k效果不佳,具體可以下面評估結果

  • 左圖:情況1樣本僅flash attention v2直接微調 llama3-8b-instruct-262k
  • 右圖:情況1樣本微調 llama2-7b-chat + PI 擴展長度

可以看到兩者性能相當,這個階段,并沒有得到微調llama3性能超過微調llama2的結論,推斷可能是llama3-8b-262k原始微調數據集與審稿12k數據集長度分布不太匹配,請看下文第四部分將使用llama-3-8B-Instruct-8k + PI 重新微調,最后獲得大幅度性能提升

第四部分 使用PI和flash atten v2 微調llama-3-8B-Instruct-8k

下面訓練的數據集皆為15k樣本(樣本長度普遍9k左右,最長不超過12k),評估方法為基于groud truth 命中數pk,模型取驗證集loss最低的模型

此階段將評估微調llama3-8b-8k與微調llama3-8b-262k&llama2性能差距

4.1 情況3早4數據下的:llama3-8b-instruct-8k + PI 與llama3-8b-instruct-262k 性能pk

經過評估發現,llama3-8b-8k + PI 性能較大幅度領先llama3-8b-262k的性能,如下所示

  • 左圖:情況3樣本僅flash attention v2微調 llama3-8b-8k + PI 擴展長度
  • 右圖:情況3樣本僅flash attention v2直接微調 llama3-8b-instruct-262k

4.2 llama3-8b-instruct-8k + PI 與 llama2-7b-chat 性能pk

4.2.1 llama3下的情況3 強于llama2下的情況3

且經過測試,llama3 在論文審稿場景下的性能確實領先 llama2

  • 左圖:情況3樣本僅flash attention v2微調 llama3-8b-8k + PI 擴展長度
  • 右圖:情況3樣本微調 llama2-7b-chat + PI 擴展長度

4.2.2 llama3下的情況3 更強于llama2下的情況1

此外,下面的這個實驗,也無疑再次證明llama3 性能領先 llama2

  • 左圖:情況3樣本僅flash attention v2微調 llama3-8b-8k + PI 擴展長度
  • 右圖:情況1樣本微調 llama2-7b-chat + PI 擴展長度

第五部分 論文審稿GPT第5版:通過15K的早期paper-7方面review數據集(情況4)微調llama3

5.1 llama3-b-8b-8k微調情況4

5.1.1 情況4微調較情況3改動:微調參數、情況4的微調system prompt

一方面是微調參數(主要)

  1. 為了保證與情況1、情況3更公平的性能對比,選擇與前兩者相同的迭代次數,情況4推理選擇的checkpoint迭代次數為1800,大約1.95個epoch
  2. 情況3的多次參數組合實驗并沒有得到較好的效果提升,因此本次情況4的參數基本都是原來的默認值

參數

說明

batch size=16

梯度累計總batch size=16

lr=1e-4

學習率的大小

max_prompt_length=11138

paper 最長的大小,超過將被截取

max_response_length=1150

review 最長的大小,超過將被截取

save_steps=100

迭代100次保存一次模型

num_train_epoch=3

迭代3個epoch

二方面是情況4 微調system prompt

青睞微調的system prompt 采用與阿荀v4版prompt摘要出來的7方面review的大項對齊(詳見此文《七月論文審稿GPT第4.5版、第4.6版、第4.8版:提升大模型數據質量的三大要素》的1.2.5節通過7要點摘要prompt第4版重新摘要整理7方面review數據)

比如微調prompt中的Potential項,便與7review中的Potential項對齊,具體為

SYSTEM_PROMPT = """Below is an "Instruction" that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request.
Instruction:
You are a professional machine learning conference reviewer who reviews a given paper and considers 7 criteria: 
** How to evaluate the idea of the paper **
** Compared to previous similar works, what are the essential differences, such as any fundamental differences, improvements, innovations **
** How to evaluate the experimental results in the paper **
** Potential reasons for acceptance **
** Potential reasons for rejection **
** Other suggestions for further improving the quality of the paper **
** Other important review comments **
The given paper is as follows."""

5.1.2 情況4推理結果分析

  • a) 推理樣本的總數為285條
  • b) 推理結果中平均子項項數:10.3894
  • c) 推理結果中子項總數分布情況(下圖左側),可以看到12條子項的樣本占絕大數
  • d) 空項數分布情況(下圖右側),可以看到大多數樣本含有一個空項(“空項”代表著“拒答”的意思,也就是模型沒有給出大項相關的理由),約占50%
  • e) 各大項子項數分布情況(下圖)
    • 1. 可以看到上述d) 空項數分布中的“大多數樣本含有一個空項”數據主要集中于最后一項(第二排最后一個圖),這是由于訓練集存在較多最后大項為空項的數據
    • 2. 除了上述最后一大項外,“拒絕理由”(第二排第一個)的大項存在少量的空項,而其他大項中空項的數量較少

5.1.3 微調情況4性能評估

下面訓練的數據集皆為15k樣本(樣本長度普遍9k左右,最長不超過12k),評估方法為基于groud truth 命中數pk

5.1.3.1 情況4數據下:llama3-8b-8k vs llama2-7b-chat
  • 下圖左側:情況4 7review僅flash attention v2 微調llama3-8b-instruct-8k
  • 下圖右側:情況4 7review微調llama2-7b-chat

結論:同樣為情況4 7review數據下,llama3的效果較llama2有較大提升

5.1.3.2 情況4 摘要7方面review vs 情況3 摘要4review

為了保證評估的公平性,對于微調llama3-8b-instruct-8k來說情況3與情況4僅數據不同,微調的策略完全一致

  • 下圖左側:情況4 7review僅flash attention v2 微調llama3-8b-instruct-8k
  • 下圖右側:情況3 4review僅flash attention v2 微調llama3-8b-instruct-8k

結論:微調策略一致的前提下,摘要7review微調的性能相對于4review有大幅度提升

5.1.3.3 情況4 llama3-8b-8k vs gpt4-1106
  • 下圖左側:情況4 7review僅flash attention v2 微調llama3-8b-instruct-8k
  • 下圖右側:情況4 paper使用7大項提示工程gpt4-1106的結果

結論:gpt4-1106基于7 大項提示工程生成的觀點數相比于基于4 大項提示工程的觀點數要多很多,gpt4展現出了“話癆”的特點,雖說其觀點的精確率不高,但基于命中數的評估方式還是讓gpt4占盡了優勢,從1.3節“情況4推理結果分析”可知,llama3推理過程中有不少項存在著“拒答”的現象,這在pk中是處于劣勢的

因此,嘗試是否可以通過對空項序列也就是“<No related terms>”略加懲罰的方式,合理地降低其采樣的概率,減少模型拒答的概率,提升模型的推理性能呢,具體見下文

// 待更

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

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

相關文章

基于Linux的云端垃圾分類助手

項目簡介 本項目旨在開發一個基于嵌入式系統的智能垃圾分類裝置。該裝置能夠通過串口通信、語音播報、網絡通信等多種方式&#xff0c;實現垃圾的自動識別和分類投放。系統采用多線程設計&#xff0c;確保各功能模塊高效并行工作。 項目功能 垃圾分類識別 系統使用攝像頭拍攝…

解密tar文件解壓的Java實現技術

解密tar文件解壓的Java實現技術 大家好&#xff0c;我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編&#xff0c;也是冬天不穿秋褲&#xff0c;天冷也要風度的程序猿&#xff01; 引言 在日常的軟件開發和系統管理中&#xff0c;經常會遇到需要解壓縮文件的…

代碼隨想三刷動態規劃篇5

代碼隨想三刷動態規劃篇5 377. 組合總和 Ⅳ題目代碼 57. 爬樓梯&#xff08;第八期模擬筆試&#xff09;題目代碼 322. 零錢兌換題目代碼 279. 完全平方數題目代碼 377. 組合總和 Ⅳ 題目 鏈接 代碼 class Solution {public int combinationSum4(int[] nums, int target) {…

SM2的簽名值byte數組與ASN.1互轉

ASN.1抽象語言標記(Abstract Syntax Notation One) ASN.1是一種 ISO/ITU-T 標準,描述了一種對數據進行表示、編碼、傳輸和解碼的數據格式,它提供了一整套正規的格式用于描述對象的結構。 一、該結構的應用場景 例如在做待簽名的數字信封時,數字信封使用ASN.1封裝,這個時…

MySQL-行級鎖(行鎖、間隙鎖、臨鍵鎖)

文章目錄 1、介紹2、查看意向鎖及行鎖的加鎖情況3、行鎖的演示3.1、普通的select語句&#xff0c;執行時&#xff0c;不會加鎖3.2、select * from stu where id 1 lock in share mode;3.3、共享鎖與共享鎖之間兼容。3.4、共享鎖與排他鎖之間互斥。3.5、排它鎖與排他鎖之間互斥3…

論文調研_Awesome-Binary-Similarity

0. 概述 對 Awesome-Binary-Similarity 中列出的論文進行調研,重點總結這些論文的研究動機與未來研究方向。 1. 調研內容 論文名稱發表時間發表期刊期刊等級研究單位BinaryAI: Binary Software Composition Analysis via Intelligent Binary Source Code Matching2024年ICSE…

每日一題---OJ題:分隔鏈表

片頭 嗨&#xff01;小伙伴們&#xff0c;大家好&#xff01;今天我們一起來看看這道題----分隔鏈表 emmmm&#xff0c;這道題&#xff0c;看描述應該不算太難&#xff0c;我們一起來畫一畫圖唄&#xff01; 題目讀懂了&#xff0c;那么如何破解這道題呢&#xff1f; 思路&…

microApp vue3+vite+ts 子應用接入改造

公司做了一個平臺,使用的是microApp,需要把現有的一些系統作為子系統改造一下接入這個平臺,所以下面我說的都是子應用的改造,vue2的改造比較簡單,主要的vue3+vite+ts的改造。 參考官網 1、設置跨應用支持 vite默認開啟跨域支持,不需要額外配置。 2、注冊卸載函數 // …

nand flash spec

nand flash簡介 nand flash是一種非易失性存儲器。它具有高存儲密度、低成本和高耐用性的特點。 nand flash的特性是非易失性&#xff0c;即在電源關閉的情況下&#xff0c;數據仍然保留。 nand flash的存儲單元由浮動柵極晶體管組成&#xff0c;每個存儲單元可以存儲一位或多…

短視頻世界對我溫柔以待:成都柏煜文化傳媒有限公司

短視頻世界對我溫柔以待 在繁忙的都市生活中&#xff0c;每個人都在為生活奔波&#xff0c;為夢想努力。而在這個快節奏的時代里&#xff0c;短視頻如同一股清流&#xff0c;以其獨特的魅力&#xff0c;為我帶來了片刻的寧靜與溫柔。它像是一個無聲的朋友&#xff0c;在我疲憊…

(必看圖文)Hadoop集群安裝及MapReduce應用(手把手詳解版)

前言 隨著大數據時代的到來&#xff0c;處理和分析海量數據已成為企業和科研機構不可或缺的能力。Hadoop&#xff0c;作為開源的分布式計算平臺&#xff0c;因其強大的數據處理能力和良好的可擴展性&#xff0c;成為大數據處理領域的佼佼者。本圖文教程旨在幫助讀者理解Hadoop集…

Mysql面試合集

概念 是一個開源的關系型數據庫。 數據庫事務及其特性 事務&#xff1a;是一系列的數據庫操作&#xff0c;是數據庫應用的基本邏輯單位。 事務特性&#xff1a; &#xff08;1&#xff09;原子性&#xff1a;即不可分割性&#xff0c;事務要么全部被執行&#xff0c;要么就…

代碼隨想錄1數組

1 二分查找 Leetcode704 1 [l,r]區間 l 0, r nums.length-1; while(l<r) 因為lr有意義 2 [l,r)區間 l 0, r nums.length; while(l<r) Leetcode35 class Solution {public int searchInsert(int[] nums, int target) {int l0,rnums.length;while(l<r){int m l(…

使用設計模式來增強你的 SpringBoot 開發

SpringBoot 是一個出色的框架&#xff0c;可以快速構建強大而高效的應用程序。但你是否知道設計模式可以將 SpringBoot 開發提升到一個新的水平&#xff1f; ? 設計模式的重要性&#xff1a;了解設計模式如何促進代碼的可重用性、可維護性和整體應用程序健康。 ? SpringBoot…

在Spring Data JPA中使用@Query注解

目錄 前言示例簡單示例只查詢部分字段&#xff0c;映射到一個實體類中只查詢部分字段時&#xff0c;也可以使用List<Object[]>接收返回值再復雜一些 前言 在以往寫過幾篇spring data jpa相關的文章&#xff0c;分別是 Spring Data JPA 使用JpaSpecificationExecutor實現…

python 筆試面試八股(自用版~)

1 解釋型和編譯型語言的區別 解釋是翻譯一句執行一句&#xff0c;更靈活&#xff0c;eg&#xff1a;python; 解釋成機器能理解的指令&#xff0c;而不是二進制碼 編譯是整個源程序編譯成機器可以直接執行的二進制可運行的程序&#xff0c;再運行這個程序 比如c 2 簡述下 Pyth…

運維鍋總詳解RocketMQ

本文嘗試從Apache RocketMQ的簡介、主要組件及其作用、3種部署模式、Controller集群模式工作流程、最佳實踐等方面對其進行詳細分析。希望對您有所幫助&#xff01; 一、Apache RocketMQ 簡介 Apache RocketMQ 是一個開源的分布式消息中間件&#xff0c;由阿里巴巴集團開發并…

祝賀《華為戰略管理法:DSTE實戰體系》被《中國企業家》雜志評為企業家枕邊書50本之一(宏觀戰略類書籍)

祝賀《華為戰略管理法&#xff1a;DSTE實戰體系》被《中國企業家》雜志評為企業家枕邊書50本之一 2024年4月23日&#xff08;周二&#xff09;下午13:00&#xff0c;《中國企業家》雜志如期舉辦“每天都是讀書日”線下活動。 《中國企業家》雜志攜手商界大咖共同推選50本枕邊書…

Vue.js中的計算屬性

Vue.js中的計算屬性&#xff08;computed properties&#xff09;是用于聲明響應式依賴的屬性。它們會根據它們的依賴進行緩存&#xff0c;并且只有在相關依賴發生改變時才會重新求值。這使得它們非常適合用來處理復雜邏輯和數據處理。 基本用法 在Vue實例中&#xff0c;可以…

鐳速實現AD域集成助力企業文件安全傳輸管控

在當今這個信息量爆炸擴張的年代&#xff0c;企業數據宛如一座蘊藏無限價值的寶庫&#xff0c;它不僅是企業核心競爭力的載體&#xff0c;也成為了各種潛在風險的聚焦點。隨著數字化轉型步伐的加快&#xff0c;安全文件傳輸的管理控制顯得尤為重要&#xff0c;它構成了保護企業…