大语言模型之LlaMA系列-LlaMA 2及LlaMA_chat(下)

多转一致性的系统消息 - System Message for Multi-Turn Consistency

image.png

在对话设置中,某些指示应适用于所有对话轮次。 例如,简洁地响应,或"充当"某个公众人物。当我们向Llama 2-Chat提供此类指示时,后续应响应始终遵守约束。然而,我们最初的RLHF模型往往会在几轮对话后忘记最初的指令,如图9(左)所示。为了解决这个问题,我们提出了Ghost Attention(GAtt),这是一种受上下文蒸馏启发的非常简单的方法,它对微调数据进行破解(hacks),以帮助注意力集中在多阶段过程中。如图9(右)所示,GAtt能控制对多轮对话,如图(9)右所示。

GAtt方法 假设我们有一组两人之间的多轮对话的数据集(例如,一个用户一和个助理),其中用户信息为u开头,助理回应的消息为a开头, n代表轮次, 对话内容为[u1,ai,…,un,an]。 然后我们再定义一个作用于整个对话的指令(例如,指令可以是"act as"),并将该指令与对话集融合。

下一步,我们使用最新的RLHF模型从这个合成的对话集中进行采样。 我们现在就有一个上下文对话和样本,可采用类似于拒绝采样的过程对模型进行微调。 我们可以在除了第一回合之后移除了,而不是用指令来扩充所有的上下文对话,但这会导致系统消息(即最后一个回合之前的所有中间辅助消息)和我们的样本在训练时间上的不匹配。为了解决这个可能会影响到训练的问题,我们只需将前几回合的token的损失设置为0,这些token包括辅助消息。

为了这些训练的指令,我们创建一些合成约束条件来进行采样:爱好(比如"你喜欢网球"),语言(比如"讲法语"),或公众人物(比如“扮演拿破伦”)。 这些兴趣爱好与公众人物列表 我们要求Llama 2-Chat来生成,这样可以指令和模型知识间的不匹配(例如:要求模型去扮演在训练时不存在的人物或兴趣). 为了让指令更加的复杂和多样式,我们通过随机组合上述约束来构建最终指令。在为训练数据构建最终的系统统消息时,我们也会有一半的时间去修改原始指令,使期不要那么冗长,例如:”从现在开始总是充当拿破仑“将改为"身份:拿破仑."。这些步骤会生成一个SFT数据集,用于微调Llama-2-chat.

GAtt评估 我们RLHF V3之后开始使用Gatt。 我们的一份定量分析报告指明GAtt可以让多轮对话在达到最大上下文长度之前将对话持续20+轮,还能保证一致性。 图28我们展示了推理时Gatt训练时不使用约束的情况,从图中可以看出,模型一致性保持的不错。

image.png

为了描述GAtt在微调期间如何重塑注意力,图10展示了我们模型的最大注意力激动情况,其中图的左侧对应的系统消息(例如“扮演奥斯卡·王尔德”),左图为没用GAtt模型的情况,右图为使用GAtt模型的史。我们从图可以看到,与没有Gatt(左)的模型相比,配备了GAtt的模型(右)在对话的大部分时间里保持了对系统消息的最大注意力激活。尽管他很实用,但当前的GAtt实现是vanilla且该技术的更多开发和迭代可能对该模型更有益。例如,我们可以教模型去在对话期间过程中通过在微调过程中集成这些数据去改变系统消息。

image.png

RLHF结果

Model-Based Evaluation

评估LLMs是一个具有挑战性的开放研究问题。虽然人类评估是一个黄金标准,但也可能因为各种HCI因素而变的复杂,且并不总是可扩展的。为了在每 在从RLHF-V1到V5的每次迭代的几个消融中选择性能最好的模型, 我们首先从最新的奖励模型中观察到奖励的改进,以节省成本同时提高迭代速度。我们后来通过人工评估验证了主要模板的版本。

基于模型的评估能走多远? 为了衡量我们奖励模型的鲁棒性,我们收集了一组安全性与有用性并存的提示测试性, 要求三位标注者根据7-point Likert方法值(越高越好)来判断答案的质量。由此,我们观察到我们的奖励模型总体上与人类偏好是对齐的,如下图(图29)。这证实了使用我们的奖励作为逐点指标的相关性,尽管我们接受了成对排名损失的训练。

image.png

尽管如此,正如Goodhart定律所指出的,当措施变成目标时,它就不再是一个好的措施。为了保证我们的措施与人类偏好没有偏离,我们还用了一种更通用的奖励,在不同的开源奖励模型集进行训练。我们还没观察到任何的偏离,因此我我们假设迭代模型更新可能有助于防止这种情况的发生。

最后一个验证步骤,是确保我们的新模型与前一个模型之间不存在回归, 我们在下一个标注迭代中使用这两个模型进行采样。这样我们可以在新提示上“免费"进行模型比较,还有助于增加采样的多样性。

模型进展。 下图(图11) 展示了我们针对SFT和RLHF不同版本版本的进展,该图示是由我们内部的安全性与有用性的奖励模型测量所得。在这些评估集中,RLHF-V3后我们在SFT和RLHF上都胜过了ChatGPT(无害性与有用性都超过了50%)。尽管前面提到了使用我们奖励作为逐点衡量标准(point-wise metric)的相关性,但可以说,它可能偏向于Llama 2-Chat。因此为了比较的公平性,我们使用GPT-4额外计算最终结果,用于评估模型优劣。ChatGPT和Llama 2-Chat的输出顺序 GPT-4的提示

为了避免任何偏差,ChatGPT和Llama 2-Chat输出在GPT-4提示下出现的顺序是随机且交替的,这样可以避免任何偏差。正如所预期的那样,尽管我们最新的Llama 2-Chat获得了超过60%的胜率,但支持Llama 2-Chat的胜率并不那么明显。 这个提示分别对应于1586和584个安全性和有用性验证集。

image.png

Human Evaluation

人类评估通常被视为评判自然语言生成模型(包括对话类模型)的黄金标准。 为了评估主要模型版本的质量,我们要求人类评估员对其安全性与有效性进行评分。我们采用超过4000个单轮或多轮的提示就Llama 2-Chat与其他开源的模型(Falcon, MPT MosaicML NLP Team et al. (2023), Vicuna Chiang et al. (2023), as well as closed-source models (ChatGPT (OpenAI, 2023) and PaLM Anil et al. (2023))做了比较,其中ChatGPT我们使用了gpt-3.5-turbo-0301型号的模板, PaLM我们使用了chat-bison-001型号的模型,每一个模板的人类评估所使用的提示数量见表Table 32. 更多的理论细节见附录的A.3.7章节。下面的章节,我们只展示有用性结果,而安全性相关的结构将在安全性的章节中阐述(Section 4.4).

image.png

结论。 从图12(上图)可以看出,Llama 2-Chat在单轮与多轮提示中都明显优于其他开源模型。特别是Llama 2-Chat 7B模型在提示上要超过MPT-7B-chat的60%。Llama 2-Chat 34B与同等尺寸的Vicuna-33B和Falcon 40B型号相比,总体胜率超过75%。最大参数的Llama 2-Chat模型与ChatGPT很具竞争力的。Llama 2-Chat 70B模型相对于ChatGPT的胜率36%,平局率为1.5%。 在我们的提示集中Lama 2-Chat 70B模型要PaLM bison Chat模型好很多。更多结果和分析见第A.3.7节。

Inter-Rater Reliability (内部评测方法的可靠性,简称IRR) 。在人类评估中,三个不同的标注为每一个模型生成比较提供独立的评估。从数据质量的角度来看,高IRR分值(接近1.0)常能被视为更好,然后,上下文很重要。高度主观的任务,比如评估LLM生成的总体有用性,通常比更客观的标记任务会有较低的IRR分值。针对这些任务的公共基准测试集相对要少,所以我们认为分享我们的分析结果有利于研究界。

我们使用Gwet的AC1/2统计方法来评测IRR,因为我们发现他是不同测量场景中最稳定的指标。在使用7-point Likert方法评估模型有用性任务时,根据不同的模型,Gwet的AC1/2统计得分在 0.37 到 0.55之间变化。 在获胜负相近的模型比较(比如Llama 2-Chat-70B-chat和ChatGPT比较)中其分值处于低分区。而在胜负相差较明显的两个模型(比如: Llama 2-Chat-34b-chat和Falcon-40b-instruct比较中,其分值处于高分区。

人类评估局限制。 尽管我们结果表示表明,Llama 2-Chat在人类评估方面与ChatGPT不相上下,但值得注意是事,人类评估有一些局限制:

  • 按学院和研究标准,我们的4k的提示词集已足够大了。然而,他并不覆盖查模型在真实使用的使用场景,后者需要更额外更多的用例。
  • 提示的多样性是影响结果的另外一个因素。例如,我们的提示集并不包含任何与编码或推理相关的提示。
  • 我们仅评估多轮对话的最后一轮的结果。 一个更有意思的评估是要求模型去完成一个任务,并对模型在整个多轮对话的整体体验进行评估。
  • 生成模型的人类评估本质上是主观的且有噪声的。因此,对不同提示词集合或不同指令的评估可能会导致不同的结果

安全性

安全预训练

重要的是要了解预训练数据中的内容,这不仅可以提高透明度,还可以阐明潜在问题(如潜在的偏见)的根本原因。这将能告知(如果有的话)下游需要考虑哪些缓解措施,同时帮助指导适当的模型使用。在本节中,我们分析了预训练数据的语言分布、人类学特征和和有害内容。我们还展示了在现有安全基准上测试预训练模型的结果

完成一次“负责任”的预训练需要采取哪些步骤。 对于训练中使用的每个数据集,我们遵循了Meta的标准隐私策略和法律审查流程。 在训练中,我们没有使用Meta用户的私有数据。我们排除来自某些已知包含大量个人信息的网站的数据。我们尽最大努力高效的训练模型,以减少预训练期间的碳足迹(第 2.2.1 节)。尽可能的共享Meta的模型以减少重复造轮子。也没有对数据集进行额外的过滤,这样可以使得Llama 2的适用于更多的任务(例如,它可以更好地用于仇恨言论分类),同时避免有时因过度清理而导致的意外统计数据擦除的可能。 更重要的是,这将使得Llama 2-Chat在安全微调时能用更少样本进行更有效地泛化。最后,在使用和后续开发Llama 2模型时应当非常谨慎,充分注意到安全性。

人类表征:代词. 模型生成中的偏差可能是从训练数据本身继承而来的。 例如,Bailey等人的研究表明,在大量文本语料库中,"people"在上下文中常常与代表"男性"的单词相似。Ganesh等人研究表明 就公平性指标而言,模型在公平性指示上的表现,可能高度的依赖于模型训练时如何对待小规模人口群体(representing underrepresented demographic groups). 在英语训练语料库中,我们对最常见的英语代词的频率做了计算,见表9a. 我们观察到,比’SHE’,'He’这个代词在文档中的比例通常更高(过高),与此相似,在描述大小的模型预训练数据集的代词中,也有类似的现象。这可能意味着模型在预训练过程中对提到She代词的上下文学习较少,因此可能会更倾向于生成He相关的内容。

人类表征:身份. 我们还通过 测量HolisticBias数据集中人口特征术语的使用率,分析了预训练数据中不同人口群体的身份指代词。我们对预训练语料库中每个术语的使用频率进行了计算。 当归纳总结为5维(宗教、性别、国籍、种族和民族以及性取向) ,见表9b中显示每个维度中排名前5的术语。在前5维术语中,我们删除了一些术语,例如"直"(注:性取向)、“白”和“黑”(注:肤色),因为这些术语在除了人类表征的其他领域也有着频繁的使用(例如,作为基本颜色术语)。我们还对列表进行重复数据删除,删除了和"性别"和"性与性取向"有关的术语。对于性别和性,虽然很少用到"她"这个代词,但是"女性"一词经常出现。这可能意味着,虽然有关"她"这个代词的上下文较少,但有关"女性"的评论更多,这可能反映了这些术语的语言标记性差异。对于性取向,排名前五的术语均与LGBTQ+ 的身份相关。对于国籍、种族和民族以及宗教,我们观察到这些数据更偏向于西方世界的文化。例如,69.4%的参考文献中提到了"美国"一词,"欧洲人"一词比其他种族和民族出现得更普遍,“基督教"是出现最多的宗教,其次是"天主教"和"犹太教”。

image.png

数据毒性(Toxicity) . 我们使用了在ToxiGen数据集上微调的使用HateBERT分类器构建语料库,测量预训练语料中英语部分的有害言论的出现概率。我们针对文档的每一行进行打分,平均后作为文档的分值。图13显示了从总体语料中随机抽样10%的条件下的打分分布情况,其中约0.2%文档得分>=0.5,这意味着预训练数据中存在少量有害内容。

image.png

语言识别. 虽然我们的预训练数据主要是英语,但也包括少量其他语言的内容。表10显示了我们语料库中语言的分布(统计抽样子集为总语料库的0.005%)。我们使用fastText语言识别工具,并设置了0.5阈值的语言检测。以英语为主的训练语料库意味着该模型可能不适合在其他语言中使用

image.png

预训练模型的安全基准评估。我们根据三个主流的自动化评估基准(Benchmarks) 评估离Llama 2 的安全能力,其中涉及大模型的预训练中的三个关键维度。

  1. Truthfulness, referring to whether a language model produces known falsehoods due to misconceptions or false beliefs. We employ TruthfulQA (Lin et al., 2021) to measure how well our LLMs can generate reliable outputs that agree with factuality and common sense.
  2. Toxicity, defined as the tendency of a language model to generate toxic, rude, adversarial, or implicitly hateful content. We choose ToxiGen (Hartvigsen et al., 2022) to measure the amount of generation of toxic language and hate speech across different groups.
  3. Bias, defined as how model generations reproduce existing stereotypical social biases. We use BOLD (Dhamala et al., 2021) to study how the sentiment in model generations may vary with demographic attributes.

在这项研究中,我们介绍了Llama 2系列模型的预训练和微调模型,其规模从70亿到700亿个参数不等。这些模型已经证明了它们与现有的开源语言模型相比的竞争力,并且在评估数据集上表现出了等同于某些专有模型(闭源模型)的能力,虽然Llama 2仍然落后于一些模型,如GPT-4。我们详细阐述了实现这些模型所应用的方法和技术,重点强调其同时具备有用性和安全性。为了更有意义地为社会做出贡献并促进研究,我们负有责任地开放了Llama 2和Llama 2-Chat的访问权限,作为持续致力于透明度和安全性的一部分,我们计划在未来的工作中进一步改进Llama 2-Chat。

以下是笔者添加的总结

Llama 2 总结

沿用了Llama 1的设计与架构:RoPE、RMSNorm、SwiGLU+AdamW

  • Llama 2采用了Llama 1中的大部分预训练设置和模型架构,包括标准Transformer架构、使用RMSNorm的预归一化、SwiGLU激活函数和旋转位置嵌入(RoPE)。
  • 采用AdamW 优化器进行训练,其中β1=0.9,β2=0.95,eps=10−5β_1= 0.9,β_2 = 0.95,eps = 10^{−5}β1​=0.9,β2​=0.95,eps=10−5。同时使用余弦(consin)学习率表, 预热2000 步,并最终将学习率衰减到了峰值学习率的10%。
  • Meta在其研究超级集群(Research Super Cluster, RSC)以及内部生产集群上都对模型进行了预训练。

Llama 2的预训练与微调

  • Llama 2的数据量比Llama 1多了40%,上下文长度增加了一倍(上下文长度高达 4096)。
  • Llama 2模型是在2万亿个标记上进行训练的,Llama-2-chat模型还额外训练了超过100万个新的人类标注。
  • 上下文长度高达4096(是 Llama 1的两倍)
  • 高质量SFT
  • RLHF对齐(PPO+Rejection Sampling fine-tuning 近邻策略和拒绝采样微调):Llama-2-chat使用从人类反馈中进行的强化学习来确保安全和有用。

Llama 2的安全性

  • 通过三个常用基准评估Llama 2的安全性:采用 TruthfulQA 基准评估真实性; 采用ToxiGen基准评估毒性,采用BOLD基准评估偏见。
  • Meta在安全微调中使用监督安全微调、安全RLHF、安全上下文蒸馏。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

十、Qt三维图表

一、Data Visualization模块概述 Data Visualization的三维显示功能主要有三种三维图形来实现,三各类的父类都是QAbstract3DGraph,从QWindow继承而来。这三类分别是:三维柱状图Q3DBar三维空间散点Q3DScatter三维曲面Q3DSurface 1、相关类的…

混乱字母排序——欧拉路数论

题目描述 小明接到一个神秘的任务:对于给定的 n 个没有顺序的字母对(无序代表这两个字母可以前后顺序颠倒,区分大小写)。请构造一个有 (n1) 个字母的混乱字符串使得每个字母对都在这个字符串中出现。 输入输出格式 输入格式 第…

蓝桥杯备战——10.超声波模块

1.分析原理图 蓝桥杯单片机板子的原理图做的简直是依托答辩,乱糟糟的不说还弄成黑白的,明明很简单的东西,弄成一大堆。 可以看到,J2跳线帽如果P10接N_A1,P11接N_B1就是用作超声波功能。N_A1用作发生超声波功能,而N_B1…

【blender插件】(1)快速开始

特性 blender的python API有如下特性: 编辑用户界面可以编辑的任意数据(场景,网格,粒子等)。修改用户首选项、键映射和主题。运行自己的配置运行工具。创建用户界面元素,如菜单、标题和面板。创建新的工具。场景交互式工具。创建与Blender集成的新渲染引擎。修改模型的数据…

pinctrl/gpio子系统(2)-gpio子系统介绍及驱动源码简单分析

文章目录 1.gpio子系统api2.gpio相关of函数3.gpio子系统驱动分析3.1设备树信息分析3.2驱动程序分析 4.最后 1.gpio子系统api 这里的api都是基于gpio的编号去进行操作 1)gpio_request,用于申请一个GPIO管脚 int gpio_request(unsigned gpio, const char …

前缀和 差分

差分和前缀和都是算法里边比较重要的知识点,不过学习的难度并不高,这篇文章会讲解相关的内容。 1. 前缀和怎么玩 1)一维前缀和 在该数之前,包括该数的所有数之和,有点类似高中学的数列的前n项和Sn。 2)二维…

【sentinel流量卫兵搭建与微服务整合】

sentinel流量卫兵搭建与微服务整合 搭建sentinel dashboard控制台微服务整合 搭建sentinel dashboard控制台 1、下载 官网链接 由于官网github网络原因,导致长时间下载失败。 网盘链接 网盘提取码:dwgj 2、运行 将下载jar包放在任意非中文、不包含特殊…

专有云 ABC Stack 联合银联商务打造金融级云平台,入选《2024 央国企上云用云典型案例》

2024 年 1 月,在中国信通院《2024 央国企上云用云典型案例》征集中,百度智能云携手银联商务提交的《银联商务金融级云平台》成功入选「上云用云解决方案典型案例」。 在国家「1 朵央企云统领,N 朵行业云共载,M 朵私有云共生」的央…

jenkins 下载插件sentry-cli失败 证书过期

现状 npm set ENTRYCLI_CDNURLhttps://cdn.npm.taobao.org/dist/sentry-cli npm set sentrycli_cdnurlhttps://cdn.npm.taobao.org/dist/sentry-cli 原因是npm原域名停止解析,在访问上面sentry-cli的cdn资源的时候 证书过期无法下载。 解决: 替换证书过期…

BL808 Linux支持WIFI

BL808芯片介绍 BL808是高度集成的AIoT芯片组,具有Wi-Fi/BT/BLE/Zigbee等无线互联单元,包含多个 CPU 以及音频编码译码器、视频编码译码器和 AI 硬件加速器,适用于各种高性能和低功耗应用领域。 外围接口包括 USB2.0、 Ethernet、 SD/MMC、 …

【python3.8 pre-commit报错】记录pre-commit install报错

一、问题 在执行pre-commit install --allow-missing-config命令时,报错 Traceback (most recent call last):File "C:\ProgramData\Anaconda3\envs\py38\lib\runpy.py", line 192, in _run_module_as_mainreturn _run_code(code, main_globals, None,F…

【Linux】 Linux编译器-gcc/g++使用

💗个人主页💗 ⭐个人专栏——Linux学习⭐ 💫点击关注🤩一起学习C语言💯💫 目录 导读1. Linux编译器-gcc/g使用1.1 引入1.2 初识gcc/g1.3 程序运行的四个阶段1.3.1 预处理1.3.2 编译1.3.3 汇编1.3.4 链接 1.…

Git―基本操作

Git ⛅认识 Git⛅安装 GitCentos(7.6)Ubuntu ⛅Git―基本操作创建本地仓库🍂配置本地仓库🍂工作区, 暂存区, 版本库🍂版本库工作区 添加文件🍂查看文件🍂修改文件🍂版本回退🍂☃️案例 撤销修改…

【Java 数据结构】二叉树

二叉树 1. 树型结构(了解)1.1 概念1.2 概念(重要)1.3 树的表示形式(了解)1.4 树的应用 2. 二叉树(重点)2.1 概念2.2 两种特殊的二叉树2.3 二叉树的性质2.4 二叉树的存储2.5 二叉树的…

Error: Projects must list all files or use an ‘include‘ pattern.

博主介绍:✌全网粉丝5W,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验…

汽车软件开发模式的5个特点

汽车软件开发属于较为复杂的系统工程,经常让来自不同知识背景的工程师在观点交锋时出现分歧。在解决复杂性和对齐讨论基准时,可以通过勾勒出讨论对象最关键的几个特征来树立典型概念。本文旨在通过5个典型特点的抽取,来勾勒出汽车软件开发模式…

023 for循环详解

什么是for循环 // 练习1 int odd 0; int even 0; for (int i 0; i < 100; i) {if (i % 2 0) {even i;} else {odd i;} } System.out.println("奇数和为:" odd ",偶数和为:" even);// 练习2 for (int i 1; i < 1000; i) {if (i % 5 0) {Sy…

使用STM32 DMA实现高效数据传输的设计与优化

使用STM32的DMA功能可以有效地实现高效的数据传输。在下面的解释中&#xff0c;我将介绍如何设计和优化使用STM32 DMA进行高效数据传输的方法。同时&#xff0c;我将提供一些示例代码来帮助您理解和实践。 ✅作者简介&#xff1a;热爱科研的嵌入式开发者&#xff0c;修心和技术…

决策树的相关知识点

&#x1f4d5;参考&#xff1a;ysu老师课件西瓜书 1.决策树的基本概念 【决策树】&#xff1a;决策树是一种描述对样本数据进行分类的树形结构模型&#xff0c;由节点和有向边组成。其中每个内部节点表示一个属性上的判断&#xff0c;每个分支代表一个判断结果的输出&#xff…

2017年苏州大学837复试机试C/C++

2017年苏州大学复试机试 要求 要求用C/C编程&#xff1b;对程序中必要的地方进行注释。上机规则 请在电脑桌面上新建一个文件夹文件夹名为考试姓名&#xff08;中文&#xff09;&#xff1b;考试完毕后&#xff0c;将所编写的文件放在上述文件中。 第一题&#xff08;20分&…