【大模型】LLaMA-2:Open Foundation and Fine-Tuned Chat Models, July. 2023.

news2025/2/27 14:17:01

论文:LLaMA-2:Open Foundation and Fine-Tuned Chat Models, July. 2023.
链接:https://arxiv.org/abs/2307.09288

Introduction

  1. 创新点
    7B - 70B
    预训练 + 微调
    开源Llama 2 和Llama 2-Chat,针对对话用例进行了优化
  2. Motivation
    AI assistants 擅长复杂的推理任务,通过直观的聊天界面与人类进行交互
    大模型人类对齐(加强可用性和安全性)需要大量的成本,并且通常是不透明或容易重现的,限制了社区的进步
  3. Details
  • Llama 2 在公开可用的新混合数据上进行了训练,预训练语料库增加40%,增加模型的上下文长度,采用分组查询注意力,7B、13B 和70B
  • Llama 2-Chat 同样包括7B、13B 和70B,训练数据不同(对话数据)

预训练

  1. 预训练数据
    更鲁棒的数据清洗,更新数据混合,增加了40%的token(2 trillion tokens),double上下文长度,上采样most factual sources增加知识和抑制幻觉。
  2. 训练细节
    结构上与lamma1一样,除了上下文长度和分组查询注意力grouped-query attention (GQA).
  • 超参数:warmup 2000,cosine learning rate schedule, decay final learning rate down to 10% of the peak learning rate;AdamW optimizer β1 = 0.9, β2 = 0.95, eps = 10−5.
  • Tokenizer:vocabulary size is 32k tokens,BPE + SentencePiece,数字成单个数字并使用字节来分解未知的 UTF-8 字符。

在这里插入图片描述
3. Llama 2 Pretrained Model Evaluation
在这里插入图片描述
闭源比较:
在这里插入图片描述

微调

  1. Supervised Fine-Tuning (SFT)
    (1)使用公开可用的指令调整数据开始 SFT 阶段
    (2)Quality Is All You Need:SFT数据来源多,多样性和质量不足——特别是对于将LLM与对话风格的指令对齐。几万SFT数据足以获得高质量的结果。
    (3)微调细节:learning rate of 2 × 10−5, a weight decay of 0.1, a batch size of 64, and a sequence length of 4096 tokens;拼接prompt和answer,加入一个特殊token分割它们;2 epoch
  2. Reinforcement Learning with Human Feedback (RLHF)
    进一步将模型行为与人类偏好和指令对齐; 采样人类偏好数据,人类注释者选择他们喜欢的两个模型输出中的哪一个用于训练奖励模型(学习人类注释者偏好的模式,然后自动化偏好决策)
  • 人类偏好数据收集:除了偏好选择,还会有等级label:significantly better, better,slightly better, or negligibly better/ unsure.

  • 奖励建模:奖励模型将模型响应及其对应的提示(包括来自先前回合的上下文)作为输入,并输出标量分数来指示模型生成的质量(例如,有用性和安全性);训练了两个独立的奖励模型,一个针对有用性(称为帮助 RM)进行了优化,另一个针对安全(安全 RM)【预训练模型初始化RM,确保两个模型都受益于预训练中获得的知识】;下一个token预测的分类头被替换为回归头以输出标量奖励

  • 训练目标:将收集到的成对人类偏好数据转换为binary ranking label format (i.e., chosen & rejected),并迫使选择的响应得分高于其对应的响应。
    在这里插入图片描述
    为了利用偏好level,引入margin,m® 是偏好评级的离散函数。越相似的回答margin越小。m®可以调节两个回复之间的差值,如果对比结果为「显著更好」,则会增加梯度值,加快更新速度。

  • 数据组合:首先使用开源数据集(已经收集偏好标注)训练奖励模型,开源数据没有任何负向作用,混合在训练数据中,提高奖励模型泛化性;有用性模型:all Meta Helpfulness data + 结合从 Meta Safety 和开源数据集中均匀采样的剩余数据的相等部分;安全模型:all Meta Safety and Anthropic Harmless data + Meta Helpfulness and open-source helpfulness data in a 90/10 proportion,有用性样本可以提高安全模型准确性。

  • 训练细节:one epoch,训练太久会导致过拟合;maximum learning rate is 5 × 10−6 for the 70B parameter Llama 2-Chat and 1 × 10−5 for the rest,decreased on a cosine learning rate schedule, down to 10% of the maximum learning rate,warm-up of 3% of the total number of steps, with a minimum of 5. The effective batch size is kept fixed at 512 pairs, or 1024 rows per batch.

  • 奖励模型结果:1000个样本的测试集,
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
Llama 2中的两个奖励模型分别侧重「有用性」(helpfulness)和「安全性」(safety),用于模型优化的最终奖励函数会将两个分数进行线性组合。
在这里插入图片描述

  1. Iterative Fine-Tuning
  • Proximal Policy Optimization (PPO):
  • Rejection Sampling fine-tuning: 模型在拒绝采样时会得到K个输出,在每次优化迭代时选择具有最高奖励的输出用于梯度更新,而PPO每次只基于单样本进行更新;仅使用最大的 70B Llama 2-Chat 执行拒绝采样,所有较小的模型都对来自较大模型的拒绝采样数据进行微调,从而将大模型能力提炼为较小的模型(蒸馏)。
    在这里插入图片描述
    拒绝采样的增益:
    在这里插入图片描述
    在迭代模型更新期间,最佳温度不是恒定的
    在这里插入图片描述
    PPO:
    在这里插入图片描述
    在这里插入图片描述
    最初的RLHF模型在几轮对话后忘记最初的指令,提出Ghost Attention方法(Gatt,其实是一个训练trick)来增强模型对指令的遵从。
    假设多轮对话数据为 [u1,a1,…,un,an],定义一条指令(inst),使得整个对话过程中都遵守该指令,然后将该指令综合连接到对话的所有用户消息,构造为 [inst+u1,a1,…,inst+un,an]。为了避免语句不匹配的问题,在训练过程中,保留第一轮的提示,并将中间轮数的损失置为0。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2261268.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Jmeter直连数据库,jar包下载

运行报错信息:jmeter连接mysql异常:Cannot load JDBC driver class ‘com.mysql.jdbc.Driver‘ 1、下载地址: https://mvnrepository.com/artifact/mysql/mysql-connector-java/ 2、将下载好的jar包 (我的是:mysql-con…

安全攻击平台介绍

目录 XSS攻击平台 Attack API BeEF XSS-Proxy 漏洞平台 cnvd 阿里云漏洞库 攻防演练平台 XCTF 攻防平台 零日靶场(0ops) 安恒靶场(赛宁安全) XSS攻击平台 XSS Payload如此强大,为了使用方便,有安…

webpack处理图片资源

过去在Webpack4时,我们处理图片资源通过file-loader和url-loader进行处理。 现在Webpack5已经将两个Loader功能内置到Webpack里了,我们只需要简单配置即可处理图片资源。 1. 配置 //webpack.config.js const path require("path");module.…

QT数据库(四):QSqlRelationalTableModel 类

关系数据库概念 例如下列departments、majors、studInfo 这 3 个数据表之间存在关系。 主键与外键 标记“**”的是主键字段,标记“*”的是外键字段。主键字段是一个数据表中表示记录唯一性的字段,例如 studInfo 数据表中的 studID 字段。外键字段是与其…

深入C语言文件操作:从库函数到系统调用

引言 文件操作是编程中不可或缺的一部分,尤其在C语言中,文件操作不仅是处理数据的基本手段,也是连接程序与外部世界的重要桥梁。C语言提供了丰富的库函数来处理文件,如 fopen、fclose、fread、fwrite 等。然而,这些库…

【HarmonyOS NEXT】ArkTs数据类型解析与使用

1. 背景 为什么设计ArkTS? 1.1 其它语言有版权【Java?Kotlin?】以及历史问题【Java内存?】 1.2 生态,可复用前端生态的三方库,兼容JS/TS语言生态ArkTs解决了JS/TS中的哪些问题? 2.1 **程序健壮性…

H5 scss 移动端的样式适配

在移动端样式的scss文件中,出现了这些变量 env() 与 constant() 设置安全区域,是css里IOS11新增的属性,webkit的css函数,用于设定安全区域与边界的距离,有4个预定义变量: safe-area-inset-left: 安全区域距…

YOLOv5与ViT目标检测中的热力图应用教程

文章目录 前言一、热力图介绍1、热力图应用说明2、热力图代码整体思路3、实验效果二、heatmap类解读三、GradCAM、GradCAMPlusPlus, GradCAM, XGradCAM, EigenCAM, HiResCAM, LayerCAM等类源码解读1、GradCAM类源码2、BaseCAM类源码解读1、BaseCAM源码2、forward函数源码解读ou…

组织病理学图像的再识别|文献速递-生成式模型与transformer在医学影像中的应用

Title 题目 Re-identification from histopathology images 组织病理学图像的再识别 01 文献速递介绍 在光学显微镜下评估苏木精和伊红(H&E)染色切片是肿瘤病理诊断的标准程序。随着全切片扫描仪的出现,能够将玻璃切片数字化为所谓的…

如何用重构解锁高效 Vue 开发之路

文章目录 摘要引言什么是代码重构为什么要减少重复逻辑Vue 示例代码问题场景初始代码的痛点重构后的通用组件 TaskList.vue详细说明 重用通用组件详细说明 模拟数据与运行结果 QA环节总结参考资料 摘要 代码重构是改善代码质量的重要手段,特别是在减少重复逻辑方面…

用户发送请求后服务端i/o工作过程

华子目录 服务端i/o介绍磁盘i/o机械磁盘的寻道时间、旋转延迟和数据传输时间常见的机械磁盘平均寻道时间值常见磁盘的平均延迟时间每秒最大IOPS的计算方法 网络i/o网络I/O处理过程磁盘和网络i/o 一次完整的请求在内部的执行过程 服务端i/o介绍 i/o在计算机中指Input/Output&am…

QT c++ 测控系统 一套报警规则(上)

本文适用于pc based的测控系统的上位机,定义了一套报警规则。 由5个部分组成:自定义4布尔类、在全局文件定义工位错误结构体和结构体变量,其它地方给此变量的当前值成员赋值,报警线程类、数据库保存类、弹框类。 1.自定义4布尔类…

概率论得学习和整理24:EXCEL的各种图形,统计图形

目录 0 EXCEL的各种图形,统计图形 1 统计图形 / 直方图 / 其实叫 频度图 hist最合适(用原始数据直接作图) 1.1 什么是频度图 1.2 如何创建频度图,一般是只选中1列数据(1个数组) 1.3 如何修改频度图的宽度 1.4 hist图的一个特…

项目二十三:电阻测量(需要简单的外围检测电路,将电阻转换为电压)测量100,1k,4.7k,10k,20k的电阻阻值,由数码管显示。要求测试误差 <10%

资料查找: 01 方案选择 使用单片机测量电阻有多种方法,以下是一些常见的方法及其原理: 串联分压法(ADC) 原理:根据串联电路的分压原理,通过测量已知电阻和待测电阻上的电压,计算出…

Linux中 vim 常用命令大全详细讲解

文章目录 前言一、Vim 基本操作 🕹️1.1 打开或创建1.2 退出编辑1.3 模式切换 二、Vim 光标移动命令 ↕️2.1 基本移动2.2 行内移动2.3. 单词移动2.4. 页面移动2.5. 行跳转 三、Vim 文本编辑命令 📋3.1 插入和删除3.2 复制、剪切与粘贴3.3 替换与修改 四…

ARM架构服务器国产麒麟V10安装nginx

目前ARM架构服务器越来越多的出现在我们的工作中,尤其大数据时代的需要,服务器操作系统linux国产化进程的推进。本人已经编写了很多ARM架构下安装java环境,安装mysql,安装redis等等的文档。现在我们演示一下国产麒麟V10安装nginx-…

【SQL】语句练习

1. 更新 1.1单表更新 例1: 所有薪水低于30000的员工薪水增加10% SQL命令&#xff1a; update employee set salarysalary*1.1 where salary < 30000; 1.2多表更新 例1: 将下图两表张三的语文成绩从95修改为80 SQL命令&#xff1a; update exam set score80 where subjec…

【开源】使用环信UIKit for uniapp 做一个IM即时聊天应用

环信单群聊 UIKit 是基于环信即时通讯云 IM SDK 开发的一款即时通讯 UI 组件库&#xff0c;提供各种组件实现会话列表、聊天界面、联系人列表及后续界面等功能&#xff0c;帮助开发者根据实际业务需求快速搭建包含 UI 界面的即时通讯应用。 本文教大家使用环信 uniapp UIKit 快…

用 Python Turtle 绘制经典杰瑞鼠:捕捉卡通世界中的小聪明

用 Python Turtle 绘制经典杰瑞鼠&#xff1a;捕捉卡通世界中的小聪明 &#x1f438; 前言 &#x1f438;&#x1f41e;往期绘画>>点击进所有绘画&#x1f41e;&#x1f40b; 效果图 &#x1f40b;&#x1f409; 代码 &#x1f409; &#x1f438; 前言 &#x1f438; 杰…