【论文解读】:大模型免微调的上下文对齐方法

图片

本文通过对alignmenttuning的深入研究揭示了其“表面性质”,即通过监督微调和强化学习调整LLMs的方式可能仅仅影响模型的语言风格,而对模型解码性能的影响相对较小。具体来说,通过分析基础LLMs和alignment-tuned版本在令牌分布上的差异,作者发现在大多数情况下,它们在解码上表现几乎相同,主要的变化发生在文体方面,如话语标记和安全声明。

基于这一认识,研究提出了一个引人注目的问题:在不使用监督微调或强化学习的情况下,是否能够有效地对齐基础LLMs?为了回答这个问题,引入了一种名为URIAL的简单而无调整的alignment方法。URIAL通过上下文学习(ICL)与基础LLMs配合,仅需要极少的样本和一个系统提示即可实现有效的alignment。这一方法的成功应用在多样化的示例集上得到验证,结果显示,具有URIAL的基础LLMs在性能上可以与通过监督微调或监督微调和强化学习的LLMs相媲美,甚至超越

研究结果提示了alignmenttuning方法的局限性,强调了对alignment的深入理论理解的重要性。通过URIAL的成功应用,作者提出了一个引人深思的观点,即通过巧妙的提示和上下文学习,可以显著减小无调整和基于调整的alignment方法之间的差距。这为未来LLM研究提供了有趣的思路,要求更深入的分析和理论探讨。

该研究对于改进和理解AI大模型的预训练和微调过程提供了有益的见解,为未来的研究方向和方法提供了新的启示。

 

一、基础大型语言模型(LLMs)及其对齐挑战

仅在无监督文本语料库上进行预训练的基础大型语言模型(LLMs)通常无法直接充当开放领域的AI助手,如ChatGPT。为了克服这一挑战,最近的研究聚焦于对齐这些基础LLMs,使它们成为高效且安全的助手。对齐过程通常包括使用指导调整和偏好学习进行微调。

1、指导调整和监督微调(SFT):

指导调整是监督微调(SFT)的一种形式,对齐基础LLMs起着至关重要的作用。这一过程依赖于人类注释或从专有LLMs(如GPT-4)收集的数据。通过引入人类指导的指令,指导调整改进了模型的理解和行为,提升了其作为AI助手的适用性。

2、偏好学习和强化学习从人类反馈中(RLHF):

偏好学习通常通过强化学习从人类反馈中(RLHF)实现,是对齐过程的另一个关键组成部分。RLHF不断优化先前进行了SFT的LLM,使其更符合人类偏好。这种迭代的方法确保模型不仅遵循指令,还动态地适应用户反馈,使其成为更为高效的助手。

3、基于调整的对齐和印证的能力:

基于调整的对齐的成功表现在LLMs上取得的显著进展中。这种方法以广泛的微调为特征,似乎解锁了AI助手的引人注目的能力。研究人员注意到了显著的进步,强调了在构建满足用户需求的AI助手方面,广泛的微调是至关重要的。

对齐基础LLMs以担任开放领域AI助手的角色涉及指导调整、监督微调以及通过强化学习从人类反馈中进行的偏好学习的组合。这种全面的方法旨在增强模型的理解能力、响应性,并与用户偏好更紧密地对齐,最终实现强大而用户友好的AI助手的发展。



 

二、对比基础语言模型与调优后的版本来观察调优的效果

为了达到这个目的,研究者通过直接比较基础语言模型(LLMs)与它们的对齐版本(例如Llama-2和Llama-2-chat)之间的标记分布,调查了对齐调优的效果。

发现一:基础语言模型和对齐语言模型在解码过程中,在大多数位置上表现几乎相同,尤其是在标记排名方面。

发现二:对齐语言模型中排名最高的标记主要位于基础语言模型排名前五的标记中,而且在较早的标记位置,分布变化更为显著。

发现三:最显著的分布变化发生在风格标记(如‘Hello’、‘Thank’、‘However’、‘Remember’等)中,这些标记包括过渡短语、话语标记和安全免责声明,而不是直接提供有用知识解决用户查询的内容性词汇。

图片

通过对标记分布变化的分析,研究直接支持了“表面对齐假设”,即对齐调优主要关注语言风格的调整,而这在很大程度上依赖于基础语言模型已经获得的知识。

为了支持研究发现,进行了定量和定性分析,以展示对齐调优主要集中在采用负责任的人工智能助手的语言风格上。

这项研究深入剖析了对齐调优的影响,特别是在标记分布和语言风格方面,为深入理解语言模型的调优提供了有益的见解。

如果在没有任何调优的情况下,能够多有效地对齐基础LLMs呢?为此,研究者提出了一种名为URIAL(Untuned LLMs with Restyled In-context ALignment)的简单、无需调优的对齐方法。

URIAL方法利用上下文学习(ICL),通过采用少量精心策划的风格示例和精心设计的系统提示,实现了对基础LLMs的有效对齐,而无需调整其权重。在这个方法中,通过巧妙构建上下文示例,首先肯定用户查询并引入背景信息,然后详细列举项目或步骤,最终以引人入胜的摘要结束,其中包括安全相关的免责声明。

研究发现这样一个直接的基准方法能够显著减小基础LLMs和经过对齐的LLMs之间的性能差距。这表明,通过精心设计的上下文示例,我们可以在不进行调优的情况下实现对基础LLMs的有效对齐,为对齐研究提供了新的思路。

三、URIAL对齐方法研究评估

研究团队设计了一个多方面、可解释的评估协议。研究创建了一个名为"just-eval-instruct"的数据集,其中包含来自9个现有数据集的1,000个多样化指令,这些数据集包括AlpacaEval、MT-bench和LIMA等。分析涵盖了语言模型输出的六个维度,包括帮助程度、清晰度、事实性、深度、参与度和安全性。

研究发现,URIAL的对齐方法仅使用三个固定的上下文示例,就能够有效地对齐基础LLMs。令人瞩目的是,在强基础LLMs(如Mistral-7b和Llama-2-70b)上,URIAL的性能优于经过SFT或SFT+RLHF对齐的LLMs。

图片

这表明URIAL方法在对齐任务上取得了显著的成果,尤其是在强大的基础语言模型上,为对齐研究提供了新的有益信息。

URIAL方法的出乎意料的强大表现,不仅更进一步证实了表面对齐假设,而且促使对当前对齐研究的重新思考。为了深化对LLMs的理解,研究团队认为精准区分预训练带来的知识和推理能力与需要通过对齐调优获得的能力是至关重要的。

图片

在这一思路下的研究发现将为未来对基础LLMs进行分析和对齐的研究提供支持。此外,研究发现在某些情境下,开发更优越的无调优、推理时对齐方法可能成为SFT和RLHF的有希望的替代选择。这一发现为未来改进对齐方法提供了有益的方向。

URIAL在基础LLMs强大的情况下表现出色,甚至超过了SFT和RLHF。以Mistral-7B为基础模型时,URIAL在各个方面都优于官方的SFT-ed模型Mistral-7B-Instruct,成为7B级别LLMs中表现最佳的模型。同样,在Llama-2-70bq基础上,URIAL也明显超越了经过RLHF处理的版本Llama-2-70b-chatq,几乎达到了ChatGPT和GPT-4的性能水平。

进一步分析发现,Mistral-7B和Llama-2-70bq都比Llama-2-7b更好地进行了预训练,这通过各种基准测试和零样本性能支持。因此,研究得出结论,当基础LLMs经过良好预训练时,与之前认为的不同,SFT和RLHF可能对于对齐并不是那么关键。相反,无调优方法如URIAL在我们评估的场景中能够以最小努力取得卓越性能。此外,研究进行了人工评估,对成对比较进行了评估,结果进一步强化了这些结论。

图片

对齐的语言模型(LLMs)在微调过程中可能出现问题,导致遗忘知识、虚构信息和变得过于敏感。研究通过案例研究发现了这些问题。比如,使用URIAL的Mistral-7B能够正确回答“Facebook公司是否改名为Meta Platform Inc.?”的问题,但是经过SFT处理的版本却给出错误的回答。这暗示在SFT过程中,LLMs可能太过适应了微调的数据,导致参数过拟合,从而遗忘之前学到的知识

另一个例子是,经过RLHF处理的Llama-2-70b-chat在回答一些无害问题时拒绝回答,因为它试图避免生成任何可能有害的内容。相反,URIAL能够在帮助性和无害性之间保持灵活平衡。这些发现表明,在微调过程中,LLMs可能会出现一些问题,而一些方法如URIAL在这方面表现更为出色。



 

结语

关于大语言模型的知识是在预训练期间就已经学习到的,而非调优阶段,调优的过程只是在适应与用户之间的交互这个问题,在更早的一篇论文《LIMA: Less Is More for Alignment》中就已有介绍。

该论文指出通过训练LIMA,一个65B参数的LLaMa语言模型,仅使用1,000个精心策划的提示和响应进行标准监督损失微调,没有进行任何强化学习或人类偏好建模。LIMA展示了非常强大的性能,仅通过训练数据中少数示例学会遵循特定的响应格式,包括从规划旅行行程到推测关于另类历史的复杂查询。

此外,该模型往往能够很好地推广到在训练数据中未出现的未见任务。在一项受控人类研究中,LIMA的响应在43%的情况下要么与GPT-4等效,要么在严格意义上优于GPT-4;当与Bard(58%)和经过人类反馈训练的DaVinci003(65%)相比时,这一统计数据更高。综合这些结果,强烈表明大部分语言模型的知识是在预训练期间学到的,只有有限的指导调优数据是必要的,以教导模型生成高质量的输出。

总体来说,URIAL的出乎意料的强大性能不仅进一步证实了目前大模型对齐调整的表面对齐假设,还促使我们重新思考当前对齐研究。为了加深对LLMs的理解,我们认为准确区分源自预训练的知识和推理能力与必须通过对齐调整获得的知识是至关重要的。因此,本研究的贡献可以支持未来对基础LLMs进行分析和对齐的研究。此外,研究结果表明,在某些场景下,开发更好的无调整、推理时对齐方法可能是SFT和RLHF的有希望的替代方案。

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

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

相关文章

如何使用Docker本地搭建开源CMF Drupal并结合内网穿透公网访问

文章目录 前言1. Docker安装Drupal2. 本地局域网访问3 . Linux 安装cpolar4. 配置Drupal公网访问地址5. 公网远程访问Drupal6. 固定Drupal 公网地址 前言 Dupal是一个强大的CMS,适用于各种不同的网站项目,从小型个人博客到大型企业级门户网站。它的学习…

java--枚举

1.枚举 枚举是一种特殊类 2.枚举类的格式 注意: ①枚举类中的第一行,只能写一些合法的标识符(名称),多个名称用逗号隔开。 ②这些名称,本质是常量,每个常量都会记住枚举类的一个对象。 3.枚举类的特点 ①枚举类的…

Numpy数组的创建(第一讲)

Numpy数组的创建 (第1讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ&#x1f…

Modbus数据采集模块是什么?

随着工业自动化的快速发展,数据采集已成为现代工厂不可或缺的一环。在众多通信协议中,Modbus因其开放、简单、可靠的特点而广受青睐。那么,什么是Modbus数据采集模块,它又有哪些应用呢? 一、什么是Modbus数据采集模块…

打补丁,生成.diff文件

作者:爱塔居 文章目录 目录 前言 步骤 一、在根目录上,输入添加指令 二、输入修改内容指令 三、生成补丁 前言 自己的理解,仅供参考,欢迎指正。 补丁的话,在我看来就是方便评审,更方便看修改代码吧。 步骤…

2024年网络安全比赛--系统渗透测试(超详细)

一、竞赛时间 180分钟 共计3小时 二、竞赛阶段 竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值 1.在渗透机中对服务器主机进行信息收集,将服务器开启的端口号作为 Flag 值提交; 2.在渗透机中对服务器主机进行渗透,在服务器主机中获取服务器主机名称&#xff…

智能优化算法应用:基于社交网络算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于社交网络算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于社交网络算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.社交网络算法4.实验参数设定5.算法结果6.参考…

【C语言】程序设计加密解密

🚩write in front🚩 🔎 介绍:"謓泽"正在路上朝着"攻城狮"方向"前进四" 🔎🏅 荣誉:2021|2022年度博客之星物联网与嵌入式开发TOP5|TOP4、2021|2222年获评百大博…

三层交换机配置DHCP服务

第一步:进入二层交换机Switch 1)输入命令: Switch(config)#vlan 10 Switch(config)#vlan 20 2)修改F0/1 和F0/2为access口,F0/24为trunk口 第二步:进入三层交换机 1)输入命令 Switch(config)#…

Vulnhub项目:EMPIRE: LUPINONE

一、靶机地址 靶机地址:Empire: LupinOne ~ VulnHub 靶机描述: 来,看一看,同样的配方,不同的设计,难度为中等,迷路了就成困难了,不得不说,还真是! 几次陷入…

kafka windows版本的下载安装,并且本地使用(亲测有效)

目录 1 问题2 下载 1 问题 本地启动一个kafka ,然后可以实现生产者 消费者 2 下载 https://downloads.apache.org/kafka/ 选择一个版本下载 下载之后解压 修改配置 修改好之后,就保存,之后先启动zookper ,之后再启动 ka…

通过内网穿透模拟私服

通过内网穿透模拟私服nexus 1.问题引出 在学习黑马程序员2023新版JavaWeb开发教程的maven高级时,需要用到私服,黑马提供的资料中私服地址不能使用,需要自己搭建一个私服。 若使用传统的方式将私服部署到本地PC无法模拟真实的私服连接情况&…

VINS编译, opencv多版本的原因导致的问题

1. 通用问题 问题一 编译时报错 error: ‘CV_GRAY2RGB’ was not declared in this scope 等 解决方法 在报错文件上添加头文件 #include <opencv2/imgproc/imgproc_c.h> 单独遇到CV_AA的报错时&#xff0c;也可以将 CV_AA 改为 cv::LINE_AA 问题二 编译时报错 erro…

[python库] mistune库的基本使用

前言 mistune库是一个解析Markdown的利器&#xff0c;使用起来非常简单。当我们想要解析Markdown格式的文档时&#xff0c;只需两步就能将其转换成html格式。如下&#xff1a; import mistune mistune.html(YOUR_MARKDOWN_TEXT)安装方式也非常简单&#xff0c;dddd&#xff1…

如何在 PyQt 中实现异步数据库请求

需求 开发软件的时候不可避免要和数据库发生交互&#xff0c;但是有些 SQL 请求非常耗时&#xff0c;如果在主线程中发送请求&#xff0c;可能会造成界面卡顿。这篇博客将会介绍一种让数据库请求变得和前端的 ajax 请求一样简单&#xff0c;且不会阻塞界面的异步请求方法。 实…

如何使用phpStudy本地快速搭建网站并内网穿透远程访问

文章目录 使用工具1. 本地搭建web网站1.1 下载phpstudy后解压并安装1.2 打开默认站点&#xff0c;测试1.3 下载静态演示站点1.4 打开站点根目录1.5 复制演示站点到站网根目录1.6 在浏览器中&#xff0c;查看演示效果。 2. 将本地web网站发布到公网2.1 安装cpolar内网穿透2.2 映…

【webpack】初始化

webpack 旧项目的问题下一代构建工具 Vite 主角 &#xff1a;webpack安装webpack1&#xff0c;mode的选项2&#xff0c;使用source map 精准定位错误行数3&#xff0c;使用watch mode(观察模式)&#xff0c;自动运行4&#xff0c;使用webpack-dev-server工具&#xff0c;自动刷…

python flask Jinja2模板学习

分类很好的一篇文章 Jinja2模板语法 Jinja2里常见的三种定界符&#xff1a; (1) 语句 {% ... %}(2) 表达式 {{ ... }}(3) 注释 {# ... #} {%set adazhaung%} 语句设置变量{{a}} 表达式{% if 2>1 %}控制语句以{%endif%}结尾 Jinja2支持使用“.”获取变量的属…

ERP软件定制开发对企业的优势|app小程序搭建

ERP软件定制开发对企业的优势|app小程序搭建 随着科技的不断发展&#xff0c;企业管理也面临了更多的挑战。为了更好地适应市场需求和提高运营效率&#xff0c;越来越多的企业开始选择使用ERP软件进行管理。然而&#xff0c;市场上现成的ERP软件并不能完全满足企业的需求&#…

【移动端vant 地址选择滑动不了】

分析&#xff1a; H5页面直接在浏览器打开是没有任何问题的&#xff0c;但是内嵌到小程序中就会出现&#xff0c;目前已出现在抖音&#xff0c;快手&#xff0c;小程序中&#xff0c;其他的没有试 大致看了一下&#xff0c;滑动不了的原因&#xff0c;可能是页面禁止滑动或滚动…