跨模型知识融合:大语言模型的知识融合

大语言模型(LLMs)在多个领域的应用日益广泛,但确保它们的行为与人类价值观和意图一致却充满挑战。传统对齐方法,例如基于人类反馈的强化学习(RLHF),虽取得一定进展,仍面临诸多难题:训练奖励模型需准确反映人类偏好,这本身难度很大;actor-critic架构的设计和优化过程复杂;RLHF通常需要直接访问LLM的参数,这在API基础模型中难以实现。获取高质量的、无偏见的反馈数据也是一大挑战,因为数据集可能受到个别标注者观点的影响,导致偏差。这些挑战共同构成了LLMs对齐工作的难点。本文介绍了一种新的对齐范式——Aligner,它通过学习对齐和未对齐答案之间的修正残差来绕过整个RLHF过程,提供了一种参数高效、资源节约的对齐解决方案。

 Aligner
Aligner模块的架构以及其在语义空间中的行为

图1展示了Aligner模块的架构以及它在语义空间中的行为。左侧展示了一个校正工作流程,其中Aligner作为一个即插即用模型,堆叠在上游的大型语言模型(LLM)之上,无论该上游模型是否已经对齐。Aligner的作用是将上游模型生成的初始答案重新分配,转化为更加有用和无害的答案,从而使组合后的LLM响应与人类意图保持一致。

右侧的图示说明了从查询到对齐答案的直接映射学习是具有挑战性的。然而,基于上游模型输出的答案进行校正,则是一个更可行的学习任务。这意味着,Aligner通过专注于校正已有答案,而不是试图直接生成完美对齐的答案,简化了学习过程。这种方法利用了seq2seq模型的优势,通过学习隐含的残差来实现更好的对齐,而不是从头开始学习复杂的映射。

Aligner的架构和功能类似于神经网络中的残差块,它采用“复制和校正”的方法,将改进叠加在原始答案上,而不改变其基本结构。这种设计不仅保留了初始响应,同时增强了它,使其更好地符合期望的结果。通过这种方式,Aligner能够在保持原有答案框架的基础上,对其进行必要的调整,以提高答案的质量和安全性。

Aligner模型的核心是一种自回归的序列到序列(seq2seq)学习方法,它通过监督学习的方式在查询-答案-修正(Q-A-C)数据集上进行训练。这种方法与传统的基于人类反馈的强化学习(RLHF)相比,具有显著的优势。在RLHF中,通常需要多个辅助模型,包括行为者(actor)、评论家(critic)、奖励(reward)和参考(reference)模型,这些模型的协调和训练过程相当复杂,需要大量的计算资源。

相比之下Aligner模型的设计更为简洁高效。它不需要依赖额外的辅助模型,因此减少了计算负担,使得对齐过程更加高效。Aligner模型的工作原理相对直观:它接收来自用户的查询以及由上游大型语言模型(LLM)生成的初始答案。基于这些输入,Aligner模型会生成一个修正后的答案,这个答案旨在更好地符合人类的价值观和意图。

Aligner模型的训练过程也相对简单。它通过学习如何从初始答案中识别并改进不符合人类价值观的部分,从而生成更加对齐的答案。这种方法的优势在于,它专注于修正已有答案,而不是从头开始生成答案,这大大降低了模型的复杂性和所需的计算资源。

Aligner模型的自回归特性意味着它在生成修正答案时,会考虑到整个查询和答案的上下文,从而生成更加连贯和相关的答案。这种方法不仅提高了答案的质量,还确保了答案与用户查询的紧密相关性。

在对Aligner模型与RLHF(基于人类反馈的强化学习)和DPO(直接偏好优化)等传统对齐方法进行比较时,可以发现Aligner在训练资源需求和模型可解释性方面具有明显的优势:

  1. 从训练资源的角度来看,Aligner模型由于其简化的架构,不需要像RLHF和DPO那样维护多个复杂的模型组件。RLHF方法涉及到训练奖励模型、actor、critic等组件,这不仅增加了模型训练的复杂性,也显著提高了所需的计算资源。而DPO作为一种强化学习方法,同样需要大量的计算资源来优化策略。相比之下,Aligner-7B作为一个自回归的seq2seq模型,即使在性能相似的情况下,也能以更少的资源消耗完成训练。
  2. 随着上游模型规模的增加,RLHF和DPO等方法所需的训练资源会急剧上升。这是因为这些方法通常需要与模型参数直接交互,参数量的增加自然导致计算负担的加重。然而,Aligner模型的训练资源需求并不随上游模型规模的变化而变化。这是因为Aligner作为一个附加模块,它的训练和运行不依赖于上游模型的具体参数,而是通过学习如何改进已有答案来实现对齐,因此它能够以相对恒定的资源消耗应对不同规模的上游模型。
  3. Aligner模型的可解释性也是其一大优势。在RLHF方法中,奖励信号往往是从人类反馈中学习得到的,这个过程可能不够透明,使得模型的决策过程难以解释。而Aligner模型作为一个seq2seq模型,其行为更易于理解和解释,因为它直接在文本空间内操作,通过修改和改进已有答案来生成对齐的答案,这个过程更加直观。

Aligner的训练策略采用了一种创新的方法,称为残差修正,这种方法的核心在于利用原始答案与修正后答案之间的语义差异。这个策略首先通过部分训练数据来初步训练一个Aligner模型,这个过程被称为“预热”阶段。预热的目的是让模型学习到一个基础的恒等映射,即模型在这个阶段学习如何保持输入和输出的一致性,这为后续的训练打下了基础。

在预热阶段之后,Aligner模型会使用完整的查询-答案-修正(Q-A-C)数据集来进行进一步的训练。此时,模型不再只是简单地学习恒等映射,而是开始学习如何根据已有的答案生成改进后的修正答案。这种方法允许模型专注于答案的改进部分,而不是从头开始生成整个答案,这提高了学习效率并减少了所需的模型容量。

残差修正策略的一个关键优势在于它允许模型在保持原有答案结构的同时,对答案进行精细化的调整。这意味着模型可以更加精确地对齐到人类价值观和意图,同时避免了对原始答案进行大规模的改动,这在很多情况下是有益的,因为它可以保留原始答案中仍然有效和准确的部分。

通过这种方式,Aligner模型能够更加高效地学习如何生成与人类价值观更加一致的答案。因为它专注于修正而不是重建,这使得模型可以更快地收敛,并且需要的训练数据量也相对较少。这种方法在训练大型语言模型时尤其有用,因为这些模型通常需要大量的数据和计算资源。

Aligner作为残差学习增强器在LLMs的架构和能力方面的作用

残差修正训练策略为Aligner模型提供了一种有效的学习机制,使其能够以一种计算效率高且可解释的方式来改进和对齐大型语言模型的答案。通过预热阶段的恒等映射学习和完整数据集上的残差修正,Aligner能够生成更加精确和有用的回答,同时保持了训练过程的简洁性和高效性。

通过Aligner实现的弱到强的泛化

弱到强的泛化这一概念在机器学习领域中指的是,使用一个能力较弱的模型来指导或监督一个更强模型的训练,以此提升后者的性能。本文中的方法基于Aligner模型来实现弱到强的泛化。

这个方法涉及使用一个较小的Aligner模型,即所谓的“弱”模型,来生成对齐标签。这些标签随后被用作训练数据,用于微调一个更大规模或更强大的上游模型,也就是“强”模型。这个过程的核心优势在于,即使是较小的模型也能够提供有价值的反馈,帮助提升大型模型的性能。

在实践中,弱Aligner模型首先接收到来自上游模型的输出,然后基于这些输出生成修正后的标签。这些修正后的标签捕捉到了原始输出与期望输出之间的差异,从而为强模型提供了改进的方向。通过这种方式,即使是较小的模型也能够对大型模型进行有效的指导。

这种方法的一个关键优势是它的可扩展性。随着模型规模的增长,直接训练和优化大型模型变得越来越困难,需要大量的计算资源和数据。而通过弱到强泛化,我们可以利用小型模型的灵活性和效率,来引导和优化大型模型的行为,使其更加符合人类的价值观和意图。

这种方法还有助于解决大型模型训练中的一些挑战,比如数据的标注成本和质量控制问题。通过使用小型模型来生成训练标签,可以减少对大量高质量标注数据的依赖,从而降低训练成本并提高训练过程的可操作性。

通过Aligner实现的弱到强泛化提供了一种创新的训练策略,它允许小型模型通过生成对齐标签来增强大型模型的性能。这种方法不仅提高了大型模型的对齐度,还通过减少对资源的依赖,提高了训练过程的效率和可扩展性。

使用Aligner进行弱到强泛化的结果,包括在不同模型上的性能提升
实验

研究者选择了两个不同的数据集来进行评估:BeaverTails和HarmfulQA。这两个数据集被用来检验Aligner在不同情境下的表现,以及它如何提升模型输出的有用性和无害性。

实验设置中,研究者特别关注了两类模型:基于API的模型和开源模型。对于API基础模型,他们选择了GPT-4和Claude 2,这两种模型都通过API提供服务,并且具备强大的语言处理能力。这些模型的表现将作为评估Aligner模块效果的一个重要参考。

同时,研究者也包括了一系列开源模型,包括不同规模的Llama2模型(7B, 13B, 70B)-Chat版本、Vicuna系列(7B, 13B, 33B)以及Alpaca7B和Beaver-7B。这些模型因其开放的架构和可访问性,为研究者提供了丰富的实验选项。通过将Aligner模块应用于这些模型,研究者可以观察到Aligner在不同类型的语言模型上的表现,以及它如何帮助这些模型更好地符合人类的价值观和意图。

在实验中,Aligner模块被集成到了上述模型中,以评估其对模型输出的影响。研究者特别关注了Aligner如何提升模型答案的有用性和无害性。有用性指的是模型输出对用户问题的正面帮助程度,而无害性则涉及模型输出是否避免了可能对用户或社会造成伤害的内容。

实验结果显示,Aligner模型作为一种有效的对齐工具,它能够跨不同类型和规模的语言模型工作,提升模型输出的质量和安全性。这些发现证明了Aligner模型在实际应用中的潜力,尤其是在需要提升语言模型对齐度的场景中。

Aligner模型在不同设置下的性能表现

表3显示Aligner在所有设置中都取得了显著的效果。研究者通过将各种模型与Aligner集成,并与原始模型进行比较,来量化有用性(helpfulness)和无害性(harmlessness)的百分比提升。表格中的背景颜色代表了目标语言模型的类型:绿色代表基于API的模型,橙色代表未进行安全对齐的开源模型,蓝色代表进行了安全对齐的开源模型。表格中使用了特定的图标来指示模型参数是否可访问,以及模型是否进行了安全对齐。

表3的评估结果是基于Aligner模型与不同上游模型的集成来进行的。这些上游模型包括了不同规模和类型的语言模型,如GPT-4、Claude 2、Llama2-7B-Chat、Vicuna-7B等。通过将Aligner模型集成到这些上游模型中,研究者能够观察到在有用性和无害性方面的显著提升。例如,Aligner-7B在提升GPT-4的有用性方面提高了17.5%,在无害性方面提高了26.9%。

表3还展示了Aligner模型在不同类型的模型上的应用效果,这包括了API基础模型和开源模型。对于API基础模型,即使模型参数不可访问,Aligner作为一个即插即用的模块,也能够显著提升模型的性能。而对于开源模型,无论是已经进行了安全对齐的模型,还是未进行安全对齐的模型,Aligner都能够提供性能上的增强。

在训练和评估集中有用性和无害性得分的分布

研究者还进行了消融实验。消融研究显示,与自我改进/自我批评方法相比,Aligner在有用性和无害性方面均表现优越。此外,与RLHF/DPO/SFT等基线方法相比,Aligner在减少计算资源的同时,提供了可比或更好的改进。

Aligner与CAI、Self-Refine和Self-Critique等方法的有效性评估

消融研究中使用了BeaverTails和HarmfulQA两个数据集来进行评估。在这些实验中,研究者将CAI提示仅在大型语言模型(LLMs)的推理时使用,以鼓励模型自我修正答案。这种不经过预先训练而直接使用CAI提示的方法,代表了一种独特的自我完善形式。而Self-Critique方法则是让模型自我批评,以发现并改进答案中的缺陷。

实验结果显示,使用CAI和Self-Critique方法时,GPT-4模型在有用性和无害性上的提升分别为+21.2%/+11.0%和+31.7%/+19.9%。然而,当使用Aligner-13B模型时,这些指标的提升更为显著,达到了+33.9%/+25.1%和+25.1%/+20.1%。这表明Aligner模型在提升模型输出的质量和安全性方面,具有明显的优势。

Aligner作为一种新兴的大型语言模型对齐范式,展示了在资源效率、训练简便性和模型泛化能力方面的重要优势。随着进一步的研究和开发,Aligner有望在确保AI系统与人类价值观和意图一致方面发挥关键作用。

论文地址:https://arxiv.org/abs/2402.02416

项目地址:https://aligner2024.github.io

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

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

相关文章

7-18 对象关系映射(orm_name)---PTA实验C++

一、题目描述 一开始看到对象关系映射,其实我是拒绝的。这三个词凑一块,能是给C初学者的题吗? 再仔细读需求,才发现在课设项目已经用过这功能。Object Relational Mapping(ORM)就是面向对象(O…

大降分!重邮计算机专硕复试线大降50分!重庆邮电计算机考研考情分析!

重庆邮电大学(Chongqing University of Posts and Telecommunications)简称重邮,坐落于中国重庆市主城区南山风景区内,是中华人民共和国工业和信息化部与重庆市人民政府共建的教学研究型大学,入选国家“中西部高校基础…

【30天精通Prometheus:一站式监控实战指南】第13天:graphite_exporter从入门到实战:安装、配置详解与生产环境搭建指南,超详细

亲爱的读者们👋   欢迎加入【30天精通Prometheus】专栏!📚 在这里,我们将探索Prometheus的强大功能,并将其应用于实际监控中。这个专栏都将为你提供宝贵的实战经验。🚀   Prometheus是云原生和DevOps的…

企业im即时通讯WorkPlus私有化部署适配国产信创环境

在信息化时代,高效的沟通和协作对于企业的运营至关重要。企业IM即时通讯平台提供了一种便捷、实时的沟通工具,旨在改善企业的内部和外部沟通效率。然而,随着企业对数据安全性和隐私保护的要求不断提高,许多企业开始选择私有化部署…

【Qt知识】disconnect

在Qt框架中,disconnect函数用于断开信号与槽之间的连接。当不再需要某个信号触发特定槽函数时,或者为了防止内存泄漏和重复执行问题,你可以使用disconnect来取消这种关联。disconnect函数的基本用法可以根据不同的需求采用多种形式&#xff0…

【ORB_SLAM系列3】—— 如何在Ubuntu18.04中使用自己的单目摄像头运行ORB_SLAM3(亲测有效,踩坑记录)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、ORB_SLAM3源码编译二、ORB_SLAM3实时单目相机测试1. 查看摄像头的话题2. 运行测试 三. 运行测试可能的报错1. 报错一(1) 问题描述(2) 原因分析(3) 解决 2. …

Windows下如何把Oracle从C盘整体迁移到D盘?

(一)写这篇文章的起因 这篇文章适合刚接触的技术小白follow操作,整理文章不易,大家多多点赞转发 起因是昨天有会员在群里发问,客户要把Oracle整个目录从C盘挪到D盘怎么弄 客户那边的人把Oracle整个程序数据文件都安装…

使用 Kali Linux 实现 Smurf 攻击

一、介绍 Smurf攻击是一种分布式拒绝服务(DDoS)攻击,利用IP协议中的ICMP(Internet Control Message Protocol)请求和网络的广播特性,使目标系统被大量ICMP回复包淹没,从而导致系统无法正常提供…

ZDH-数据管理模块

目录 主题 项目源码 预览地址 安装包下载地址 数据管理服务 数据资源管理 数据资源权限 数据资源血缘 总结 感谢支持 主题 本篇文章主要介绍ZDH-数据管理服务及应用场景 项目源码 zdh_web: GitHub - zhaoyachao/zdh_web: 大数据采集,抽取平台 预览地址 后台管理…

【C++】类和对象——构造和析构函数

目录 前言类的六个默认构造函数构造函数1.构造函数的概念2.构造函数的特性 初始化列表1.构造函数整体赋值2.初始化列表 析构函数1.析构函数的概念2.析构函数的特性 前言 类和对象相关博客:【C】类和对象   我们前面一个内容已经讲了关于类好对象的初步的一些知识&…

绿联 安装MariaDB数据库用于Seatable服务

绿联 安装MariaDB数据库用于Seatable服务 1、镜像 mariadb:latest 2、安装 2.1、基础设置 重启策略:容器退出时总是重启容器。 2.2、网络 网络选择桥接(bridge)。 2.3、存储空间 装载路径/var/lib/mysql不可变更。 2.4、端口设置 容器端口3306,本…

7. MySQL 视图、索引

文章目录 【 1. 视图 View 】1.1 视图原理1.2 创建视图 CREATE VIEW1.2.1 创建基于单表的视图1.2.2 创建基于多表的视图 1.3 查看视图1.3.1 查看视图的内容1.3.2 查看视图的详细信息 1.4 修改视图 ALTER VIEW1.4.1 修改视图内容1.4.2 修改视图名称 1.5 删除视图 DORP VIEW 【 2…

Ansys Mechanical|组装 External Mechanical Model

Assembling Finite Element Models 上文中介绍了如何导入外部模型并将其组合到单个模型中的示例。 如果要将外部模型与Workbench环境中已有的一个或多个模型组合在一起,该如何操作?本文将介绍这个工作流程。 Ansys Mechanical支持Mechanical Model和Ex…

移动系统编程-安装和运行Ionic应用程序 (Installation and Running Ionic Apps)

安装 (Installation) 假设您已经安装了Node.js和Angular,您可以使用以下命令安装Ionic: npm install -g ionic/cli您也可以不使用CLI安装Ionic,但如果您使用的是最新版本的Cordova,这样做可能会导致版本不匹配,不推荐…

用幻灯片讲解C++中的C语言风格数组

用幻灯片讲解C中的C语言风格数组 1.栈内存中的C风格数组 糟糕的可用性,但你将在遗留代码中看到它们。相同类型的对象块。大小必须是常量表达式。第一个元素的索引为0,即数组索引从0开始。 注意一下数组的初始化,使用了C11标准之后的统一初始…

回溯算法 -- 77. 组合

目录 一.题目描述 二.解题思路 三.回溯三部曲 3.1确定递归函数的返回值以及参数 3.2回溯算法的终止条件 3.3确定单层循环搜索逻辑 四.具体的代码 一.题目描述 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案…

软件开发整体介绍

黑马程序员瑞吉外卖 文章目录 一、软件开发流程二、角色分工三、软件环境 一、软件开发流程 二、角色分工 三、软件环境

MySQL—函数—流程控制函数(基础)

一、引言 接下来,我们就进入函数的最后一个部分:流程函数。而流程控制函数在我们的日常开发过程是很有用的。 流程控制函数在我们 sql 语句当中,经常用来实现条件的筛选,从而提高语句的一个执行效率。 我们主要介绍以下4个流程控…

第十五课,海龟画图:抬笔与落笔函数、画曲线函数

一,turtle.penup()和turtle.pendown():抬起与落下画笔函数 当使用上节课学习的这个turtle.forward():画笔前进函数时,画笔会朝着当前方向在画布上留下一条指定(像素)长度的直线,但你可能发现&a…