0

0

零障碍合并两个模型,大型ResNet模型线性连接只需几秒,神经网络启发性新研究

王林

王林

发布时间:2023-04-09 15:41:03

|

1695人浏览过

|

来源于51CTO.COM

转载

深度学习能够取得如此成就,得益于其能够相对轻松地解决大规模非凸优化问题。尽管非凸优化是 NP 困难的,但一些简单的算法,通常是随机梯度下降(SGD)的变体,它们在实际拟合大型神经网络时表现出惊人的有效性。

本文中,来自华盛顿大学的多位学者撰文《 Git Re-Basin: Merging Models modulo Permutation Symmetries 》,他们研究了在深度学习中,SGD 算法在高维非凸优化问题上的不合理有效性。他们受到三个问题的启发:

1. 为什么 SGD 在高维非凸深度学习损失 landscapes 的优化中表现良好,而在其他非凸优化设置中,如 policy 学习、轨迹优化和推荐系统的稳健性明显下降 ?

2. 局部极小值在哪里?在初始化权值和最终训练权值之间进行线性插值时,为什么损失会平滑、单调地减小?

3. 两个独立训练的模型,它们具有不同的随机初始化和数据批处理顺序,为何会实现几乎相同的性能?此外,为什么它们的训练损失曲线看起来一样

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

图片

论文地址:https://arxiv.org/pdf/2209.04836.pdf

Cutout老照片上色
Cutout老照片上色

Cutout.Pro推出的黑白图片上色

下载

本文认为:在模型训练中存在一些不变性,这样一来才会有不同的训练表现出几乎相同的性能。

为什么会这样呢?2019 年,Brea 等人注意到神经网络中的隐藏单元具有排列对称性。简单的说就是:我们可以交换网络中隐藏层的任意两个单元,而网络功能将保持不变。2021 年 Entezari 等人推测,这些排列对称可能允许我们在权值空间中线性连接点,而不损害损失。

下面我们以论文作者之一的举例来说明文章主旨,这样大家会更清楚。

假如说你训练了一个 A 模型,你的朋友训练了一个 B 模型,这两个模型训练数据可能不同。没关系,使用本文提出的 Git Re-Basin,你能在权值空间合并这两个模型 A+B,而不会损害损失。

图片

论文作者表示,Git Re-Basin 可适用于任何神经网络(NN),他们首次演示了在两个独立训练(没有预先训练)的模型(ResNets)之间,可以零障碍的线性连通。

他们发现,合并能力是 SGD 训练的一个属性,在初始化时合并是不能工作的,但是会发生相变,因此随着时间的推移合并将成为可能。

图片

他们还发现,模型宽度与可合并性密切相关,即越宽越好。

图片

此外,并非所有架构都能合并:VGG 似乎比 ResNets 更难合并。

这种合并方法还有其他优点,你可以在不相交和有偏差的数据集上训练模型,然后在权值空间中将它们合并在一起。例如,你有一些数据在美国,一些在欧盟。由于某些原因,不能混合数据。你可以先训练单独的模型,然后合并权重,最后泛化到合并的数据集。

图片

因此,在不需要预训练或微调的情况下可以混合训练过的模型。作者表示自己很想知道线性模式连接和模型修补的未来发展方向,可能会应用到联邦学习、分布式训练以及深度学习优化等领域。

最后还提到,章节 3.2 中的权重匹配算法只需 10 秒左右即可运行,所以节省了大量时间。论文第 3 章也介绍了 A 模型与 B 模型单元匹配的三种方法,对匹配算法还不清楚的小伙伴,可以查看原论文。

网友评论及作者解疑

这篇论文在推特上引发了热议,PyTorch 联合创始人 Soumith Chintala 表示如果这项研究可以迁移到更大的设置,则它可以实现的方向会更棒。合并两个模型(包括权重)可以扩展 ML 模型开发,并可能在开源的共同开发模型中发挥巨大作用。

图片

另有人认为如果排列不变性能够这样高效地捕捉大部分等价性,它将为神经网络的理论研究提供启发。

图片

论文一作、华盛顿大学博士 Samuel Ainsworth 也解答了网友提出的一些问题。

首先有人问,「论文中是否有关于在训练中针对独特 basin 的任何提示?如果有一种方法可以做到对排列进行抽象,那么训练速度可能会更快。」

Ainsworth 回复称,这点自己没有想到。他真的希望能够以某种方式实现更快地训练,但目前为止已被证明非常困难。问题在于 SGD 本质上是一种局部搜索,因此利用高阶几何并不是那么容易。也许分布式训练是一种可行的方法。

图片

还有人问是否适用于 RNN 和 Transformers?Ainsworth 表示原则上适用,但他还没有对此进行实验。时间会证明一切。

图片

最后有人提出,「这看起来对分布式训练『成真』非常重要?难道 DDPM(去噪扩散概率模型)不使用 ResNet 残差块吗?」

Ainsworth 回复称,虽然他自己对 DDPM 不是很熟悉,但直言不讳表示将它用于分布式训练将非常令人兴奋。

图片

相关专题

更多
什么是分布式
什么是分布式

分布式是一种计算和数据处理的方式,将计算任务或数据分散到多个计算机或节点中进行处理。本专题为大家提供分布式相关的文章、下载、课程内容,供大家免费下载体验。

318

2023.08.11

分布式和微服务的区别
分布式和微服务的区别

分布式和微服务的区别在定义和概念、设计思想、粒度和复杂性、服务边界和自治性、技术栈和部署方式等。本专题为大家提供分布式和微服务相关的文章、下载、课程内容,供大家免费下载体验。

225

2023.10.07

自建git服务器
自建git服务器

git服务器是目前流行的分布式版本控制系统之一,可以让多人协同开发同一个项目。本专题为大家提供自建git服务器相关的各种文章、以及下载和课程。

635

2023.07.05

git和svn的区别
git和svn的区别

git和svn的区别:1、定义不同;2、模型类型不同;3、存储单元不同;4、是否拥有全局版本号;5、内容完整性不同;6、版本库不同;7、克隆目录速度不同;8、分支不同。php中文网为大家带来了git和svn的相关知识、以及相关文章等内容。

523

2023.07.06

git撤销提交的commit
git撤销提交的commit

Git是一个强大的版本控制系统,它提供了很多功能帮助开发人员有效地管理和控制代码的变更,本专题为大家提供git 撤销提交的commit相关的各种文章内容,供大家免费下载体验。

262

2023.07.24

git提交错误怎么撤回
git提交错误怎么撤回

git提交错误撤回的方法:git reset head^:撤回最后一次提交,恢复到提交前状态。git revert head:创建新提交,内容与之前提交相反。git reset :使用提交的 sha-1 哈希撤回指定提交。交互式舞台区:标记要撤回的特定更改,然后提交,排除已撤回更改。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

537

2024.04.09

git怎么对比两个版本的文件内容
git怎么对比两个版本的文件内容

要对比两个版本的 git 文件,请使用 git diff 命令:git diff 比较工作树和暂存区之间的差异。git diff 比较两个提交或标签之间的差异。git diff 输出显示差异块,其中 + 表示添加的行,- 表示删除的行, 表示修改的行。可使用 gitkraken、meld、beyond compare 等可视化工具更直观地查看差异。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

510

2024.04.09

页面置换算法
页面置换算法

页面置换算法是操作系统中用来决定在内存中哪些页面应该被换出以便为新的页面提供空间的算法。本专题为大家提供页面置换算法的相关文章,大家可以免费体验。

378

2023.08.14

笔记本电脑卡反应很慢处理方法汇总
笔记本电脑卡反应很慢处理方法汇总

本专题整合了笔记本电脑卡反应慢解决方法,阅读专题下面的文章了解更多详细内容。

1

2025.12.25

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Django 教程
Django 教程

共28课时 | 2.4万人学习

Go 教程
Go 教程

共32课时 | 2.9万人学习

TypeScript 教程
TypeScript 教程

共19课时 | 1.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号