模型融合创新性Max!5种模型融合方法刷新SOTA!发顶会必看!

news2024/9/23 18:57:07

近年来,关于模型融合的研究逐渐火热,出现了很多效果出众的成果。模型融合(Model Merging)技术,即利用现有模型的参数、架构和特性,巧妙结合成一个新的、功能更强大的模型,这不仅减少了从头训练大型模型所需的计算资源和时间,还能帮我们在模型研究大爆发的情况下抓住机会,实现快速创新。

随着大模型的不断更新与发展,简单的集成学习开始受到限制,因此针对大模型的集成学习需要仔细考量。

小编整理了五种基本的集成方法来帮助同学们有效融合模型,分别是模型整合、概率集成、嫁接学习、众包投票、MOE并精心整理了模型融合系列论文供大家学习。

需要的同学添加公众号【人工智能爱好者Hunt】 回复 模型融合 即可全部领取

模型整合

模型整合较为简单,即大模型在输出的文字层次进行融合,如简单的使用3个不同的LLama模型的输出结果,作为prompt输入到第四个模型中进行参考。

信息通过文字传递可以作为一种通信方法,其代表性的方法为EoT。

EoT提出了一个新的思想交流框架,即“交换思想”(Exchange-of-Thought),旨在促进模型之间的交叉通信,以提升问题解决过程中的集体理解。通过这一框架,模型可以吸收其他模型的推理,从而更好地协调和改进自身的解决方案。

文章:

《Exchange-of-Thought: Enhancing Large Language Model Capabilities through Cross-Model Communication》

概率集成

概率集成与传统的机器学习融合相似,比如将模型预测的logit结果进行平均,形式化的可以表示为:

图片

类似地,大模型的概率集成可以在transformer的词表输出概率层次进行融合。要注意的是,这样的操作需要其融合的多个原始模型的词表保持一致。

一个简单伪代码:

kv_cache = None
While True:

input_ids = torch.tensor([[new_token]], dtype=torch.long, device='cuda')

kv_cache1, kv_cache2 = kv_cache

output1 = models[0](input_ids=input_ids, past_key_values=kv_cache1, use_cache=True)

output2 = models[1](input_ids=input_ids, past_key_values=kv_cache2, use_cache=True)

kv_cache = [output1.past_key_values, output2.past_key_values]

prob = (output1.logits + output2.logits) 

new_token = torch.argmax(prob, 0).item()

需要的同学添加公众号【人工智能爱好者Hunt】 回复 模型融合 即可全部领取

嫁接学习

其本质上是一种迁移学习,一开始是用来描述将一个树模型的输出作为另一个树模型的输入的方法。此种方法与树的繁殖中的嫁接类似,故而得名。在大模型中,也有嫁接学习的应用,其模型名字为SOLAR。

与机器学习中的嫁接学习不同的是,大模型并不直接融合另外一个模型的概率结果,而是将其中的部分结构和权重嫁接到融合模型上,并经过一定的继续预训练过程,使其模型参数能够适应新的模型。

具体的操作为,复制包含n层的基础模型,以便后续修改。然后,从原始模型中移除最后的m层,并从其副本中移除最初的m层,从而形成两个不同的n-m层模型。最后将这两个模型连接起来,形成一个具有2*(n-m)层的缩放模型。

如图所示,需要构建一个48等的目标模型时候,可以分别从两个32层的模型取前24层和后24层连接到一起,组成一个全新的48层的模型,将组合后的模型进行继续预训练即可,通常继续预训练耗费的的数据量和计算资源要小于完全从头开始训练的消耗。

在继续预训练之后,还需要进行对齐操作,包含两个过程,分别是指令微调和DPO。指令微调采用开源instruct数据并改造出一个数学专用instruct数据,以增强模型的数学能力。DPO是传统的RLHF的替代,最终形成了SOLAR-chat版本。

文章:

《SOLAR 10.7B: Scaling Large Language Models with Simple yet Effective Depth Up-Scaling》

众包投票

其核心思想是:如果一个模型生成的句子,与所有模型的结果最像,那这个句子可以认为是所有模型的平均。这样就把概率意义上的平均,变成了生成token结果的上的平均。

众包投票在过往的国内生成比赛中也实践过,更是在WSDM CUP第一名方案里上有所应用。

2024年WSDM杯“对话式多文档QA”挑战赛中获胜的方法即利用大型语言模型(LLMs)的能力,通过任务适应、混合训练策略利用未标记数据、文本嵌入过滤不相关文档及模型集成,最终排名第一,远超竞争对手。

文章:

《The First Place Solution of WSDM Cup 2024: Leveraging Large Language Models for Conversational Multi-Doc QA》

需要的同学添加公众号【人工智能爱好者Hunt】 回复 模型融合 即可全部领取

MoE

最重要的大模型混合专家模型(Mixture of Experts,简称MoE),这是一种结合多个子模型(即“专家”)的模型架构方法,旨在通过多个专家的协同工作来提升整体的预测效果。

MoE结构能够显著增强模型的处理能力和运行效率。典型的大模型MoE体系结构包含了一个门控机制(Gating Mechanism)和一系列专家网络。门控机制负责依据输入数据动态调配各个专家的权重,以此来决定每个专家对最终输出的贡献程度;同时,专家选择机制会根据门控信号的指示,挑选出一部分专家来参与实际的预测计算。这种设计不仅降低了整体的运算需求,还使得模型能够根据不同的输入选择最适用的专家。

这种方法与集成学习有着相似之处,其核心是为由众多独立专家网络构成的集合体创立一个协调融合机制。在这样的架构下,每个独立的网络(即“专家”)负责处理数据集中的特定子集,并且专注于特定的输入数据区域。这个子集可能是偏向于某种话题,某种领域,某种问题分类等,并不是一个显示的概念。

面对不同的输入数据,一个关键的问题是系统如何决定由哪个专家来处理。门控网络(Gating Network)就是来解决这个问题的,它通过分配权重来确定各个专家的工作职责。在整个训练过程中,这些专家网络和门控网络会被同时训练,并不需要显示的手动操控。

2017年这一理念应用于一个137亿参数的LSTM模型。解决了条件计算中的挑战,实现了模型容量的大幅提升。通过引入稀疏门控混合专家层(MoE),利用数千个子网络组合,有效增加模型容量。设计的MoE架构,参数高达1370亿,展示了在不显著增加计算负担下,大幅提升模型能力的潜力。

文章:

《Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer》

需要的同学添加公众号【人工智能爱好者Hunt】 回复 模型融合 即可全部领取

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

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

相关文章

计算机毕业设计新闻资讯知识施肥技术网站推荐评论搜索猜你喜欢留言/springboot/javaWEB/J2EE/MYSQL数据库/vue前后分离小程序

摘要‌ 随着互联网的快速发展,新闻网站成为人们获取新闻资讯的重要途径。本文旨在介绍一款新闻网站毕业设计的开发与实现过程,该系统集新闻发布、用户互动、个性化推荐等功能于一体,采用Spring Boot、Vue等前后端分离技术,旨在提…

风力发电场集中监控解决方案

0引言 风力发电装机容量近年来快速增长。截至7月底,全国发电装机容量达27.4亿千瓦,同比增长11.5%。其中,太阳能和风力发电装机容量分别为4.9亿千瓦和3.9亿千瓦,同比增长42.9%和14.3%。风力发电场分陆上和海上风电,常位…

asp.net core grpc快速入门

环境 .net 8 vs2022 创建 gRPC 服务器 一定要勾选Https 安装Nuget包 <PackageReference Include"Google.Protobuf" Version"3.28.2" /> <PackageReference Include"Grpc.AspNetCore" Version"2.66.0" /> <PackageR…

C++ 异步编程中:future与promise、packaged_task、async

原文链接&#xff1a;C 异步编程之future与promise、async、packaged_task_std::promise和std::future异步发送-CSDN博客 1、std::future std::future类模板来关联线程运行的函数和函数的返回结果&#xff0c;这种获取结果的方式是异步的 std::future 通常由某个 Provider 创建…

BOE(京东方)携故宫博物院举办2024“照亮成长路”公益项目落地仪式以创新科技赋能教育可持续发展

2024年9月20日&#xff0c;BOE&#xff08;京东方&#xff09;“照亮成长路”智慧教室落成暨百堂故宫传统文化公益课山西活动落地仪式在山西省太原市娄烦县实验小学隆重举行。自“照亮成长路”教育公益项目正式设立以来&#xff0c;BOE&#xff08;京东方&#xff09;持续以创新…

食家巷苦豆粉,香得很哟

苦豆粉&#xff0c;它看似普通&#xff0c;却承载着西北的厚重历史与浓郁风情。那一抹淡淡的绿色粉末&#xff0c;蕴含着大自然的馈赠和西北人民的智慧。 苦豆&#xff0c;这种生长在西北土地上的植物&#xff0c;经过精心研磨&#xff0c;变成了细腻的苦豆粉。它的味道独特&am…

Kimi助你快速完成开题报告【超详细实操教程】

随着人工智能的飞速发展&#xff0c;AI技术已经渗透到我们生活的方方面面&#xff0c;包括学术研究。在接下来的文章中手把手教你如何利用AI工具来优化每一个部分&#xff0c;让你的开题报告不仅内容丰富&#xff0c;而且结构严谨&#xff0c;逻辑清晰&#xff0c;为你的毕业论…

01.前端面试题之ts:说说如何在Vue项目中应用TypeScript?

文章目录 一、前言二、使用Componentcomputed、data、methodspropswatchemit 三 、总结 一、前言 与link类似 在VUE项目中应用typescript&#xff0c;我们需要引入一个库vue-property-decorator&#xff0c; 其是基于vue-class-component库而来&#xff0c;这个库vue官方推出…

通过 Flink 的火焰图定位反压

在 Apache Flink 中&#xff0c;Web UI 提供了丰富的监控工具来帮助用户分析和解决作业性能问题&#xff0c;其中火焰图&#xff08;Flame Graph&#xff09;是用于分析反压问题的一个强有力的工具。反压可能是由于作业中某些算子处理速度过慢&#xff0c;或者资源耗尽导致的。…

深度学习模型之BERT的24个小模型源码与预训练紧凑模型的重要性

原始信息 论文&#xff1a; Well-Read Students Learn Better: On the Importance of Pre-training Compact Models作者&#xff1a;Iulia Turc, Ming-Wei Chang, Kenton Lee, Kristina Toutanova地址&#xff1a;arxiv.org/pdf/1908.08…中文&#xff1a;阅读良好的学生学得更…

人工智能时代的学与教

疫情逐渐散去之后&#xff0c;最最吸引全球目光的应该就是ChatGPT-3了。美国政治家亨利基辛格领衔出版的新书《AI世代与我们人类的未来》(The Age of AI and Our Human Future)中举了一个例子来说明ChatGPT-3的能力。首先让ChatGPT-3阅读关于它自身能力的哲学评论之后&#xff…

【Go】Go语言中深拷贝和浅拷贝

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

windows自定义路径docker安装

环境: win11(win10也是同样流程) docker:Docker version 27.1.1, build 6312585 目录 1.下载docker 2.自定义路径安装 3.修改镜像保存路径 非win系统的同学可以参考&#xff1a;官方说明文档 1.下载docker docker官网下载链接 进入官网后选择对应的系统版本下载即可。 …

IDEA明明模块和环境变量配置的是JDK8但是显示别的版本解决方案

IDEA明明模块和环境变量配置的是JDK8但是显示别的版本解决方案 我目前系统中存在JDK8&#xff0c;JDK11,JDK17等多个版本&#xff0c;方便开发使用&#xff0c;但是有些时候也是比较烦人的&#xff0c;因为不同版本的JDK包有所区别。 需要注意的几个地方。方便自己排查一下。

Vue3:具名插槽

目录 一.性质与作用 1.基本性质 2.使用方式 3.作用 4.应用场景 5.注意事项 二.使用 1.父组件 2.子组件 三.代码 1.父组件代码 2.子组件代码 四.效果 具名插槽在Vue3中用于为组件提供一种方式&#xff0c;允许父组件向子组件注入内容&#xff0c;并且可以指定这些内…

硬盘数据能否自己在家恢复?探索数据恢复的可行性与方法

随着数字化时代的到来&#xff0c;硬盘作为我们存储大量重要数据的设备&#xff0c;其重要性不言而喻。然而&#xff0c;当硬盘出现问题&#xff0c;如误删除、硬盘损坏、病毒感染等&#xff0c;导致数据丢失时&#xff0c;我们往往会感到十分焦虑。那么&#xff0c;硬盘数据能…

阿里巴巴新推出Java版AI 应用开发框架-Spring AI Alibaba

[Spring AI Alibaba 是一款 Java 语言实现的 AI 应用开发框架&#xff0c;旨在简化 Java AI 应用程序开发&#xff0c;让 Java 开发者像使用 Spring 开发普通应用一样开发 AI 应用。Spring AI Alibaba 基于 Spring AI 开源项目构建&#xff0c;默认提供阿里云基础模型服务、开源…

【BetterBench博士】2024年华为杯E题:高速公路应急车道紧急启用模型 Python代码实现

题目 【BetterBench博士】2024 “华为杯”第二十一届中国研究生数学建模竞赛 选题分析 【BetterBench博士】2024年中国研究生数学建模竞赛 E题&#xff1a;高速公路应急车道紧急启用模型 问题分析 【BetterBench博士】2024年中国研究生数学建模竞赛 C题&#xff1a;数据驱动…

杰发科技——Eclipse环境安装

文件已传到网盘&#xff1a; 1. 安装文件准备 2. 安装Make 默认路径&#xff1a;C:\Program Files (x86)\GnuWin32\bin\ 不复制的话会报错 Error: Program "make" not found in PATH 3. 安装工具链 默认路径&#xff1a;C:\Program Files (x86)\Arm GNU Toolchain…

阅读CVPR论文——mPLUG-Owl2:革命性的多模态大语言模型与模态协作

读后感悟&#xff1a; 1&#xff09;实验部分非常丰富&#xff0c;并且论文中的图制作的非常精美&#xff0c;论文开篇的图制作的别出心裁&#xff0c;将几种不同的方法表现出的性能差异不是以普通的表格形式展现&#xff0c;而是制作成了一副环状折线图&#xff0c;论文中其他…