PANDA:免微调提升大型语言模型领域特定能力的新方法

news2024/12/23 14:10:31

人工智能咨询培训老师叶梓 转载标明出处

大模型虽然在广泛的任务上具有通用性,但在面对特定领域的任务时,它们的性能往往不如专门为这些领域训练的模型。传统的知识蒸馏(Knowledge Distillation, KD)方法通过资源密集型的微调过程来提升模型的领域特定能力,但这种方法并不适用于闭源的商业LLMs。为了解决这一问题,清华大学的刘安等人提出了一种名为PANDA(Preference Adaptation for Enhancing Domain-specific Abilities of LLMs)的新方法,旨在通过利用专家模型的响应偏好来增强LLMs的领域特定能力,而无需进行耗时耗资源的微调(fine-tuning),使LLMs能够学习专家模型的偏好,从而提升其在特定任务上的表现。

PANDA与传统知识蒸馏(KD)方法的不同

方法

PANDA方法包含两个主要阶段:学习阶段和推理阶段。在学习阶段,专家模型首先对训练数据进行推断,生成样本,这些样本代表了专家的偏好。然后PANDA根据特定的偏好启发式原则,为每个数据实例创建偏好对。例如,在分类任务中,可以根据专家模型对每个类别输出的logits分布来确定偏好排名,较高的logits值意味着专家模型更倾向于将查询归类于此类别。

接下来大模型(LLMs)被提示生成对专家偏好的解释,这些解释被称为"insights"。这些insights是通过训练数据派生出的,它们构成了"insight pool",即见解池。见解池的目的是存储和组织从专家模型中提取的知识,以便在推理阶段使用。

在推理阶段,PANDA利用见解池检索与当前查询最相关的见解,并使用这些见解通过上下文学习来调整LLMs的偏好,使其与专家模型的偏好一致。这种方法的目标是通过与专家模型的偏好对齐,来增强LLMs在特定任务上的领域特定能力。

尽管PANDA和传统的知识蒸馏(KD)在实现技术上有很大的不同,但它们在每个阶段都具有相似的本质。例如,在传统的KD中,学生模型通过梯度下降来最小化与教师模型输出分布之间的KL散度,而PANDA则通过直接从专家那里获取见解来实现类似的目标。

PANDA的两个主要阶段:学习阶段和推理阶段

从专家偏好中学习仅仅模仿专家模型的行为是不够的。更高级的方法是不仅要记忆专家模型的行为,还要理解其行为背后的逻辑和原因,以及专家模型避免的不良行为。这种深层次的学习可以帮助LLMs更好地理解和适应特定领域的任务。

PANDA的设计灵感来源于强化学习中的人类偏好反馈(RLHF),这是一种首先使用人类偏好数据训练奖励模型,然后利用该模型通过强化学习使LLMs与人类偏好对齐的方法。这种方法启发了PANDA,使其通过学习专家的偏好来提升性能。

PANDA利用LLMs强大的语言理解和生成能力,通过提示(prompting)让模型生成对专家偏好的解释。这个过程涉及到使用简化的提示模板,例如:"专家更倾向于选择A而不是B,请解释专家持有这种偏好的原因。" 这里的A和B代表专家模型对某个查询的两种可能响应,其中对A的置信度高于B。

通过上述过程生成的解释性见解被称为"专家见解"(Expert Insight),它们被用来构建"见解池"(insight pool)。见解池是存储从专家模型中提取的知识的集合,这些知识随后可以在推理阶段用来指导LLMs。

通过从专家模型的偏好中学习,PANDA能够使LLMs适应特定任务,从而提升性能。与直接依赖专家模型相比,PANDA更注重有效利用专家知识,目标是实现更高的性能上限。

PANDA学习提示

作者首先提出了一个观点,即解决相似问题时采用的策略往往能够相互受益。基于这个观点,PANDA在处理新的查询时,会首先从见解池中检索与当前查询上下文最相关的见解。

在推理阶段,PANDA使用当前查询的上下文作为检索键,从见解池中检索出相关的见解。这种方法与基于自我反思的方法不同,后者可能需要通过试错来提高性能。而PANDA则能够直接利用已有的专家知识,避免了试错过程,从而减少了潜在的交互成本。

PANDA利用LLMs的上下文学习能力,将检索到的见解作为提示的一部分,与当前的查询上下文结合起来。这种结合旨在增强LLMs在完成特定任务时的偏好,使其更符合专家模型的偏好。

通过这种方式,PANDA不仅提高了LLMs在特定任务上的性能,还增强了其泛化能力。这是因为PANDA能够从专家模型的偏好中学到更深层次的知识,并将这些知识应用到新的上下文中,从而提升模型对未知情况的适应性。

PANDA在推理阶段的偏好适配过程,使得LLMs在处理特定领域的任务时,能够更好地对齐专家模型的偏好,从而实现性能上的提升。这种方法相比传统的基于梯度的方法,不需要对大模型进行微调,因此在资源和时间上更为高效。

PANDA推理提示

实验

为了确保实验的公平性和成本控制,作者随机抽取了任务样本,实验中使用的LLM模型是gpt-3.5-turbo-1106。在ScienceWorld中,作者设置了检索到的见解数量为1,在TweetEval中设置为6。这些实验结果表明PANDA能够显著提升LLMs在领域特定任务上的性能。

针对ScienceWorld基准测试所设计的推理阶段使用的提示模板

作者使用基准ScienceWorld评估了PANDA在交互式决策任务中的效果,这是一个模拟实验室环境的交互文本模拟平台。该平台具有丰富的动作集,为LLMs在推理、规划和环境适应性方面提供了挑战。ScienceWorld包含多个子房间,如温室、铸造厂和车间,每个房间都提供了不同的环境配置和任务目标。作者随机抽取了每个类别的2个任务,共20个任务进行评估。实验结果显示,PANDA在16个任务中的性能超过了ReAct基线,在10个任务中超过了SayCan基线,并且在9个任务中超过了Reflexion基线。特别是,使用PANDA的ReAct在4个任务中的性能超过了专家模型,显示了PANDA在无需微调的情况下实现从弱到强泛化潜力。

ANDA在ScienceWorld基准测试中的性能结果

作者使用基准TweetEval评估了PANDA在文本分类任务中的效果,它包含11个不同的Twitter特定分类任务。这些任务包括情感、表情符号、情绪、仇恨、讽刺、冒犯性和立场等分类。TweetEval的特点是样本分布可能不平衡,因此作者使用了宏观平均F1分数作为性能指标。作者主要关注了专家模型持续超越LLMs的任务,以展示PANDA在缩小LLMs和领域特定微调模型之间性能差距方面的潜力。实验结果表明,PANDA显著提高了GPT-3.5-turbo在几乎所有任务中的性能,包括zero-shot、few-shot、zero-shot Chain-of-Thought (ZS-CoT)和few-shot Chain-of-Thought (FS-CoT)四种不同设置。

TweetEval数据集相关的实验设置和提示模板
PANDA在TweetEval基准测试中的性能结果

消融研究的目的是评估该方法中不同组件的贡献和重要性。通过在ScienceWorld基准的10个任务上进行实验,作者发现PANDA在大多数情况下都优于仅考虑原始偏好的消融案例。这表明PANDA通过收集专家偏好的见解,而不是仅仅依赖于专家模型的原始行为,能够更有效地提升性能。消融实验包括了使用不同数量的专家响应作为学习数据,以及比较了PANDA与其他基线方法的性能差异。

在ScienceWorld基准测试中进行的消融研究结果

作者进一步探讨了PANDA在跨领域设置中的泛化能力。通过在ScienceWorld和TweetEval上进行跨任务迁移实验,作者发现PANDA能够在学习一个任务后,在另一个相关但不同的任务上实现正向迁移。例如,在ScienceWorld中,PANDA在一个任务上学到的知识能够在相似但不同的任务上提高性能。在TweetEval中,作者将情绪分类任务中学到的知识迁移到情感分类任务上,同样观察到了正向迁移的效果。

在ScienceWorld基准测试中PANDA的跨任务迁移性能
在TweetEval基准测试中PANDA的跨任务迁移性能

作者还评估了PANDA在可以使用真实标签的情况下的性能。通过与消融方法进行比较,作者发现使用真实标签的消融方法虽然性能有所提升,但PANDA仍然保持了其优越性。这表明PANDA不仅能够有效地利用专家模型的偏好,还能够从真实标签中提取有价值的知识,即使在专家模型的预测不是完全准确的情况下。

在使用真实标签和专家模型预测标签时PANDA的性能对比

作者还探讨了PANDA在不同质量的训练数据上的性能,发现PANDA在训练数据质量较低时仍然能够实现改进,这显示了PANDA在提取泛化知识方面的鲁棒性。

在不同训练数据质量下PANDA的性能

实验结果表明,PANDA显著提升了LLMs在文本分类和交互式决策任务上的领域特定能力。特别是在ScienceWorld的16个任务和TweetEval的7个任务上,使用PANDA的LLMs甚至超越了在ScienceWorld的4个任务上训练的专家模型。这一发现突出了探索无需微调的方法来实现从弱到强的泛化潜力。

论文链接:https://arxiv.org/abs/2402.12835

PANDA的代码将在以下GitHub链接公开:GitHub - THUNLP-MT/PANDA

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

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

相关文章

怎么在电脑上查找打印机打印过的文件?告别翻箱倒柜!电脑查找已打印文件技巧公示!

在日常办公中,我们经常会使用打印机来输出各种文件,但有时候,我们可能需要回顾或查找之前打印过的文件。然而,这些文件一旦打印完成,往往就离开了我们的电脑屏幕,进入了纸质世界,而电子文件可能…

Tree-of-Traversals:结合知识图谱与大模型,通过树遍历和回溯寻找高置信度推理路径

Tree-of-Traversals:结合知识图谱与大模型,通过树遍历和回溯寻找高置信度推理路径 Tree-of-Traversals算法解析对比 MindMap1. 与知识图谱(KGs)的整合2. 推理方法3. 灵活性与可扩展性4. 在医学诊断中的应用 速度和准确1. 速度2. 推…

数据结构第九讲:二叉树

数据结构第九讲:二叉树 1.实现链式结构二叉树1.1二叉树的节点结构1.2创建二叉树节点1.3前中后序遍历1.3.1前序遍历1.3.2中序遍历1.3.3后序遍历1.3.4总结 1.4二叉树结点的个数1.4.1错误示范1.4.2实现方法 1.5二叉树叶子结点的个数1.6二叉树第k层结点的个数1.7二叉树的…

看门狗应用编程-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板

看门狗应用编程 看门狗应用编程介绍 看门狗定时器的基本概念 看门狗是一个可以在一定时间内被复位/重置的计数器 如果在规定时间内没有复位,看门狗计时器溢出会对CPU产生复位信号使系统重启 有些看门狗可以只产生中断信号而不会使系统复位 I.MX6UL/I.MX6ULL So…

如何减少内存碎片的产生——页

文章目录 1 页的设计目的2 进程块和主存块的对应关系3 页、页框、页表3.1 页(Page)3.2 页框(Page Frame)3.3 页表(Page Table) 4 逻辑地址到物理地址的转换4.1 转换过程4.2 具体示例4.3 图示 参考资料封面 …

C语言程序设计25

《C程序设计教程(第四版)——谭浩强》 习题2.2 分析下面程序的运行结果,然后上机验证。 代码: //《C程序设计教程(第四版)——谭浩强》 //习题2.2 分析下面程序的运行结果,然后上机验证。#inc…

【C语言篇】操作符详解(下篇)

文章目录 操作符详解(下篇)前言条件操作符移位操作符左移操作符右移操作符 位操作符下标引用操作符函数调用操作符 操作符的属性:优先级和结合性优先级结合性表达式求值整形提升算术转换 操作符详解(下篇) 前言 操作…

JavaScript基础——JavaScript常见语句(判断语句、循环语句、控制流语句)

JavaScript提供了丰富的语句来控制程序的执行流程,包括用于条件判断的if、switch和三元运算符,以及用于循环的for、while、do...while、for...in和for...of。此外,还有控制流语句如break、continue和return。 判断语句 if 语句 if 语句&…

C/C++开发,opencv轮廓提取实现

一、cv::findContours轮廓提取函数 1.1 cv::findContours函数简介 cv::findContours 函数是用于从二值图像(灰度图)中检索轮廓。这个函数在OpenCV的不同版本中参数可能有所不同,但基本概念保持一致。特别是在OpenCV 3.x和4.x版本中&#xff…

贪吃蛇(使用QT)

贪吃蛇小游戏 一.项目介绍**[贪吃蛇项目地址](https://gitee.com/strandingzy/QT/tree/zyy/snake)**界面一:游戏大厅界面二:关卡选择界面界面三:游戏界面 二.项目实现2.1 游戏大厅2.2关卡选择界面2.3 游戏房间2.3.1 封装贪吃蛇数据结构2.3.2 …

如何通过谷歌外链快速增加网站流量?

利用谷歌外链提升流量的方法非常直接,但实际上,外链影响的是关键词排名,关键词排名提升了,自然就会有流量,所以谷歌外链不是直接能提升网站流量,而是间接的,下面,我会详细介绍几种有…

验收测试:确保软件符合业务需求和合同要求

目录 前言1. 验收测试的概念1.1 用户验收测试(UAT)1.2 操作验收测试(OAT) 2. 验收测试的主要作用2.1 确认业务需求的满足2.2 验证合同要求的实现2.3 提升用户信心 3. 验收测试在整个测试中的地位3.1 测试的最后一道关卡3.2 用户与…

niushop逻辑漏洞

niushop逻辑漏洞 安装环境 这里控制不了 抓包在数据包中可以改数据

非线性系统稳定控制器设及案例仿真(s-function函数)

目录 前沿一、案例11. 系统模型 二、案例21. 系统模型2. 稳定性分析3. 仿真(包含代码)1. 仿真效果2. 仿真结果3. 仿真剖析4. 仿真图与代码 前沿 定义一个系统 x ˙ f ( x , u ) \dot{x} f(x,u) x˙f(x,u), 其中 x x x 为状态变量, u u u 为系统输入&#xff0c…

跨平台终端工具Tabby安装配置与远程ssh连接Linux_ubuntu详细教程

文章目录 前言1. Tabby下载安装2. Tabby相关配置3. Tabby简单操作4. ssh连接Linux4.1 ubuntu系统安装ssh4.2 Tabby远程ssh连接ubuntu 5. 安装内网穿透工具5.1 创建公网地址5.2 使用公网地址远程ssh连接 6. 配置固定公网地址 前言 今天和大家分享一下如何在Windows系统使用Tabb…

构建LVS负载均衡群集

构建LVS负载均衡群集 实验环境实验环境 201:客户端 101:调度器 (需要用到2个网卡) 102:web 103:web 104:NFS存储 101:(添加一个网卡) 2 [root@localhost ~]# cd /etc/sysconfig/network-scripts/ 3 4 //查看另一个网卡的名字ens36 5 [root@localhost network-scrip…

人工智能深度学习系列—深度学习中的相似性追求:Triplet Loss 全解析

文章目录 1. 背景介绍2. Loss计算公式3. 使用场景4. 代码样例5. 总结 1. 背景介绍 在机器学习和模式识别领域,相似性度量是核心问题之一。Triplet Loss,作为一种特殊的损失函数,被设计用来学习数据的相对距离,从而使得相似样本更…

5.C_Demo_排序

冒泡排序法 原理: 依次比较相邻的两个元素,如果顺序错误就交换。 思路: 这种方法,显然需要很多轮才能完成,每一轮只能排序一个最大值或最小值(第一层for),将全部的数据排序完成,需要很多轮(第…

第三期书生大模型实战营之书生大模型全链路开源开放体系

一. Introduction 大模型是发展通用人工智能的重要途经 二. 开源历程以及InternLM2 2024年1月17日 InternLM2 2开源 三. 书生浦语2.0的主要亮点 3.1 超长上下文 3.2 综合性能全面提升 3.3 优秀的对话和创作体验 3.4 工具调用能力整体升级 3.5 突出的数理能力和实用的…

Among Us 私服的制作之路

文章目录 Among Us 私服的制作之路这游戏通常包括以下核心元素:角色设定:游戏机制:游戏界面: 第四步:添加社交特性第五:测试与优化方面 十分基础的框架(Web)注意事项 Among Us 私服的制作之路 作者正在准备…