用判断对齐大语言模型

1、写作动机:

目前的从反馈中学习方法仅仅使用判断来促使LLMs产生更好的响应,然后将其作为新的示范用于监督训练。这种对判断的间接利用受到无法从错误中学习的限制,这是从反馈中学习的核心精神,并受到LLMs的改进能力的制约。

2、主要贡献:

• 首次系统地探讨了将LLMs与判断对齐的方法。

• 引入了一个新颖的框架CUT(对比不可能性学习),通过直接和明确地从判断中学习,促进了LLMs的对齐。值得注意的是,CUT允许基于判断进行细粒度的不当内容检测和校正。 

3、背景知识-从反馈中学习:

从反馈中学习的现有方法可以分为两个不同的类别:提示和微调,它们通过LLMs的参数是否更新来区分。

提示: 提示不改变LLMs的参数。相反,它利用对先前响应的语言反馈,以促使生成更好的响应。

微调: 微调旨在直接训练一个更好的LLM。

4、将LLMs与判断对齐的预备知识:

假设有一组指令-响应-判断三元组(x,y,j),其中指令x = [x1,...,xM],响应y = [y1,...,yN],判断j = [j1,...,jQ]都是长度分别为M、N和Q的token序列。响应可能存在某些缺陷,或者被认为完全令人满意。判断提供了对响应的优点和缺点的分析。判断可以由人类标注员或AI评判模型起草。

将LLMs与判断对齐的目标是使LLM保留在优点中提到的适当行为,更重要的是解决弱点,以防止未来的错误行为。

一些先前的解决方案:

前向预测: 前向预测是指顺序预测响应及其判断的过程,具体来说,LLM在最大似然估计(MLE)目标下被训练,首先基于指令x生成响应y,然后基于组合序列[x,y]生成判断j。

从语言反馈中的模仿学习: 从语言反馈中的模仿学习(ILF)要求LLM在给定反馈j的情况下改进初始响应y。改进后的响应yˆ,与初始指令x配对,用于在MLE目标下微调LLM。

追溯法: 追溯法根据响应y收到的标量奖励重写指令x。例如,如果一个响应收到低于一定阈值的标量奖励,则在原始指令中添加短语“生成正确答案”;否则,添加“生成错误答案”。显然,这种方法可以自然地扩展到我们的问题设置中。具体来说,LLM被训练生成响应y,条件是序列[x,j]。

然而,在前向预测中,学习生成判断不一定会转化为增强的响应生成,因为响应生成先于判断生成。ILF只利用正面数据(即改进的响应),限制了模型识别和纠正在负面判断中强调的弱点或错误的能力。至于追溯法,使用不令人满意的响应作为MLE目标必然增加了生成不令人满意响应的风险。

5、CUT框架:

CUT的核心思想可以总结为从对比中学习。我们对不同条件下的响应生成进行对比,以阐明LLM应该保持的适当行为以及需要进行调整的具体内容。基于这些见解,对适当内容使用MLE训练,对不适当内容使用不可能性训练(UT)。

5.1将判断纳入对齐:

将指令-响应对称为“对齐”,如果响应忠实地遵循指令并满足人类期望 x −→ y。否则,判断描述了响应中存在的错误或缺陷。假设任务是生成一个有意满足判断的响应,可以推断出响应始终与组合输入 [x, j] −→ y 对齐。

Align-P:LLM对原始指令x生成满意的响应y。因此,授予积极的判断j以承认LLM的出色表现。很明显,响应y与指令x以及组合输入[x, j]都对齐。

Align-N:LLM在生成过程中出现了一些错误,导致响应y不满意。因此,负面判断j详细说明了相应的批评意见。对于Align-N,y在原始指令x方面不对齐。然而,考虑x和j作为整体,y确实与组合输入[x, j]对齐。

Misalign:在Align-N中的真实负面判断被替换为虚假的积极判断j。在这种情况下,响应y既不与原始指令x对齐,也不与组合指令和判断[x, j]对齐。

5.2 从对比中学习:

Align-N vs. Misalign:尽管Align-N和Misalign在x −→ y方面不对齐,但它们在任务[x, j] −→ y方面显示出相反的极性。由于LLMs具有强大的上下文学习能力,从Align-N到Misalign的对齐转换通常伴随着响应的生成概率下降,特别是对于与真实负面判断强相关的标记。

将Align-N和Misalign示例分别输入LLM以获取token生成概率pθ(yt|y<t, x, j −)和pθ(yt|y<t, x, j +)。将在条件为j −的情况下生成概率显著增加的与j +相比的token视为不适当的token(例如,图2中的“a”)。具体而言,采用以下标准:

其中λ≥1是一个超参数,用于权衡检测不适当token的精度和召回率。对识别的不适当token应用UT目标,以推动LLM探索替代生成。对于其他token,使用标准的MLE损失:

Align-P vs. Align-N:尽管Align-P和Align-N在[x, j] −→ y方面都对齐,但只有Align-P在仅考虑指令(x −→ y)时对齐。基本上,它表明LLM应根据是否引入负面判断来输出不同的响应。

具体而言,使用以下MLE目标训练这个比较:

其中1(x −→ y)是一个指示函数,如果x和y对齐,则返回1,否则返回0。

最后,CUT的总体损失将这两个对比的损失函数结合在一起:LCUT​=L1​+L2​。


6、实验:

在两种对齐设置中对CUT进行实验:(1)离线对齐,其中使用现成的与模型无关的指令-响应-判断三元组。 (2)在线对齐,其中判断是基于当前目标模型生成的响应进行的。这个在线设置可以进行迭代实现,允许持续的细化和适应。

使用LoRA进行模型训练,超参数λ的权衡选择自{1.1, 1.2, 1.5},不可能性权重α选择自{0.25, 0.5, 0.75, 1}。

6.1离线对齐:

6.2在线对齐:

在线对齐过程可以迭代进行,类似于人类通过不断来自同行的反馈不断完善他们的行为。具体来说,我们重复应用以下三个步骤:

  • 步骤1:收集指令x,并从目标模型获取响应y。
  • 步骤2:为响应标注判断j。
  • 步骤3:应用CUT通过{x, y, j}对目标模型进行微调。

6.3判断vs奖励:

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

科学和统计分析软件GraphPad Prism mac介绍说明

GraphPad Prism for Mac是一款科学和统计分析软件&#xff0c;旨在帮助研究者、科学家和学生更轻松地处理和可视化数据。 GraphPad Prism for Mac是一款功能强大、易于使用的科学和统计分析软件&#xff0c;适用于各种类型的数据处理和可视化需求。无论您是进行基础研究、临床试…

给自己创建的GPTs添加Action(查天气)

前言 在这篇文章中&#xff0c;我将分享如何利用ChatGPT 4.0辅助论文写作的技巧&#xff0c;并根据网上的资料和最新的研究补充更多好用的咒语技巧。 GPT4的官方售价是每月20美元&#xff0c;很多人并不是天天用GPT&#xff0c;只是偶尔用一下。 如果调用官方的GPT4接口&…

Django的数据库模型的CharField字段的max_length参数与中文字符数的关系探索(参数max_length的单位是字符个数还是字节数?)

01-清理干净之前的数据库迁移信息 02-根据setting.py中的信息删除掉之前建立的数据库 03-删除之后重新创建数据库 04-models.py中创建数据库模型 from django.db import modelsclass User(models.Model):username models.CharField(max_length4)email models.EmailField(uni…

接口测试管理续集

今天应大家需要&#xff0c;接着谈app端数据返回层面的用例设计方法。第二部分给大家安利一个“接口管理平台”&#xff0c;以帮助大家解决接口文档维护、接口测试数据Mock、接口自动化测试等问题。希望对小伙伴们有用。 言归正传&#xff0c;进入今天的话题。 一、用例设计 …

深度学习算法应用实战 | 利用 CLIP 模型进行“零样本图像分类”

文章目录 1. 零样本图像分类简介1.1 什么是零样本图像分类?1.2 通俗一点的解释 2. 模型原理图3. 环境配置4. 代码实战5. Gradio前端页面5.1 什么是 Gradio ? 6 进阶操作7. 总结 1. 零样本图像分类简介 1.1 什么是零样本图像分类? “零样本图像分类”&#xff08;Zero-shot …

自学Python,需要注意哪些?

为什么要学习Python&#xff1f; 在学习Python之前&#xff0c;你不要担心自己没基础或“脑子笨”&#xff0c;我始终认为&#xff0c;只要你想学并为之努力&#xff0c;就能学好&#xff0c;就能用Python去做很多事情。在这个喧嚣的时代&#xff0c;很多技术或概念会不断兴起…

配置安装nginx

目录 一、yum安装 1.进入nginx官网 nginx.org 2、进入下载列表 以主线版为例 3、服务器安装工具包集合 4、设置 yum 存储库 5、配置成功后&#xff0c;默认情况下&#xff0c;使用稳定的 nginx 包的存储库。如果要使用主线 nginx 包&#xff0c;需要运行以下命令&#xf…

Asp .Net Web应用程序(.Net Framework4.8)网站发布到IIS

开启IIS 如果已开启跳过这步 打开控制面板-程序 打开IIS 发布Web程序&#xff08;.Net Framework 4.8 web网页&#xff09; 进入IIS管理器新建一个应用池 新建一个网站 网站创建完毕 为文件夹添加访问权限 如果不添加访问权限&#xff0c;运行时将会得到如下错误 设置权限 勾…

PHP开发日志 ━━ 不同方法判断某个数组中是否存在指定的键名,测试哪种方法效率高

我们可以用isset($arr[a]) 或者 array_key_exists(a, $arr) 来判断a键名是否存在与$arr数组。 那么这两种方式哪个运行速度快呢&#xff1f; 不多废话了&#xff0c;现在我们写一段代码来测试一下&#xff1a; $array [a > 1, b > 2, c > 3];$start microtime(tru…

YOLOv8优化策略:轻量化改进 | 华为Ghostnet,超越谷歌MobileNet | CVPR2020

🚀🚀🚀本文改进:Ghost bottleneck为堆叠Ghost模块 ,与YOLOV8建立轻量C2f_GhostBottleneck 🚀🚀🚀YOLOv8改进专栏:http://t.csdnimg.cn/hGhVK 学姐带你学习YOLOv8,从入门到创新,轻轻松松搞定科研; 1.Ghostnet介绍 论文: https://arxiv.org/pdf/1911.11907.…

Logstash:迁移数据到 Elasticsearch

在生产环境中&#xff0c;不使用 Apache Kafka 等流平台进行数据迁移并不是一个好的做法。 在这篇文章中&#xff0c;我们将详细探讨 Apache Kafka 和 Logstash 的关系。 但首先让我们简单了解一下 Apache Kafka 的含义。 Apache Kafka 是分布式流平台&#xff0c;擅长实时数据…

机器学习笔记一之入门概念

目录 一 基本分类二 按模型分类概率模型&#xff08;Probabilistic Models&#xff09;非概率模型&#xff08;Non-Probabilistic Models&#xff09;对比结论线性模型 (Linear Models)非线性模型 (Non-linear Models)对比 三 按算法分类1.批量学习&#xff08;Batch Learning&…

前端开发Docker了解

1&#xff0c;docker简介 docker主要解决了最初软件开发环境配置的困难&#xff0c;完善了虚拟机部署的资源占用多&#xff0c;启动慢等缺点&#xff0c;保证了一致的运行环境&#xff0c;可以更轻松的维护和扩展。docker在linux容器的基础上进行了进一步的封装&#xff0c;提…

电脑USB接口不同颜色的含义

当你看到笔记本电脑或台式机的USB端口时&#xff0c;你会发现USB端口的颜色很多&#xff1b;这些颜色可不只是为了好看&#xff0c;实际上不同颜色代表着不同的性能&#xff0c;那么这些带颜色的USB端口都是什么含义呢&#xff0c;下面就具体介绍下不同颜色代表的含义。-----吴…

僵尸毁灭工程手动存档工具

介绍 这是一个可以对僵毁游戏存档进行备份的小工具&#xff0c;其基本原理是对僵毁存档中数以万计的小文件做哈希值计算并保存下来&#xff0c;下一次备份时再对存档文件进行哈希值计算&#xff0c;每次备份只对两次计算结果中存在差异的文件进行复制与替换从而忽略掉大部分未…

1.10 Unity中的数据存储 JSON

一、介绍 Json是最常用也是目前用的比较多的一种&#xff0c;超轻量级&#xff0c;可便捷性使用&#xff0c;平时用到比较多的都是解析Json和往Json中添加数据、修改数据等等JSON(JavaScript Object Notation,JS对象标记)是一种轻量级的数据交换格式&#xff0c;它基于ECMAScr…

Spark---RDD序列化

文章目录 1 什么是序列化2.RDD中的闭包检查3.Kryo 序列化框架 1 什么是序列化 序列化是指 将对象的状态信息转换为可以存储或传输的形式的过程。 在序列化期间&#xff0c;对象将其当前状态写入到临时或持久性存储区。以后&#xff0c;可以通过从存储区中读取或反序列化对象的…

[算法与数据结构][c++]:Static关键字和全局变量

Static关键字和全局变量 1. 生命周期、作用域和初始化时机2. 全局变量3. Static 关键字3.1 面向过程3.1.1 静态全局变量3.1.2 静态局部变量&#xff08;单例中会使用&#xff09;3.1.3 静态函数 3.2 面向对象3.2.1 类内静态成员变量3.2.2 类内静态成员函数 Reference 写在前面&…

详细讲解MybatisPlus实现逻辑删除

目录 前言1. 基本知识2. 实战Demo3. 拓展 前言 对于MybatisPlus的相关知识可在我的博客进行搜索 对应的CRUD相关知识也可看我这篇文章&#xff1a;【Java项目】实战CRUD的功能整理&#xff08;持续更新&#xff09; 在讲述逻辑删除这个概念时&#xff0c;先引入另外一个概念&…

09.简单工厂模式与工厂方法模式

道生一&#xff0c;一生二&#xff0c;二生三&#xff0c;三生万物。——《道德经》 最近小米新车亮相的消息可以说引起了不小的轰动&#xff0c;我们在感慨SU7充满土豪气息的保时捷设计的同时&#xff0c;也深深的被本土品牌的野心和干劲所鼓舞。 今天我们就接着这个背景&…