打乱/跳过Transformer层会怎样?最新研究揭开其信息流动机制,一口气解答8大问题

深度学习之Encoder-Only原理与实战 【代码】深度学习之Encoder-Only原理与实战。 阅读详情

Transformer中的信息流动机制,被最新研究揭开了:

所有层都是必要的吗?中间层在做同样的事吗?层的顺序重要吗?

如果跳过一些层,比如第4层输出接到第6层会怎样。随机打乱层的顺序,比如4-6-5-7又会怎样。

最近一项名为“Transformer Layers as Painters”的研究火了,由来自AI初创公司Sakana AI、Emergence AI的研究团队完成。

图片

他们从Transformer内部工作原理出发,经过一系列实验对以上问题得出了结论。团队表示深入理解这些原理不仅能提高现有模型利用效率,还能帮助改进架构开发新的变体。

谷歌DeepMind研究员、ViT作者Lucas Beyer看过后直接点了个赞:

很棒的总结!尽管一些实验在之前的研究中已经被展示过了,但我喜欢你添加的新细节,特别是强调了“推理”类任务比其他任务受影响更大!

图片

还有不少学者、工程师也表示强烈推荐。

敢打赌,其中一些见解最终将会用于改进Transformer。

图片

其中的实验再次证实了:复制层对创造性任务有帮助,但对推理任务通常无效;改变层的顺序行不通;剪枝在中间层效果最佳,但仍需要进行修复调整。

图片

所以,在这项研究中,研究团队都进行了哪些实验?回答了哪些问题?

实验模型选择和基准

先来看一下实验配置~

实验在decoder-only和encoder-only模型上进行。

其中decoder-only模型选择的是Llama2,主要研究32层、70亿参数的Llama2-7B,扩展实验中也包含13B(40层)和70B(80层)模型。

encoder-only模型选择的是BERT,有24层、3.4亿参数。

研究人员使用这些模型的标准预训练checkpoints。在所有实验中,模型都是冻结的,除BERT的评估中包含一个标准的微调步骤,其它情况未通过微调等方法修改模型参数。

基准测试方面,Llama2使用以下标准基准:ARC(科学考试问题)、HellaSwag(常识问题)、GSM8K(数学题),WinoGrande(常识推理)、LAMBADA(词汇预测)。其中LAMBADA用于测困惑度,与训练期间使用的原始token预测最接近。

对于Llama2的性能评估,提供了基准测试的标准化中位数,将性能从0到1(模型最优性能)进行量化。

对于BERT,采用GLUE基准并遵循其评估指标,包括基准的未标准化平均分。注意,标准的BERT评估包括一个微调步骤,因此对模型进行了适应性调整。在附录中研究人员也展示了一个只有模型头部可以调整的评估结果。

实验动机最初源于这样一个问题:

是否可以将多个层以某种方式合并成一个可能更大的单一层?假设可能由于训练过程中使用了残差连接,神经网络的中间层可能使用了一个共同的表征空****间。(对于标准的多层感知机来说不成立,它们之间没有促使共同表征或层间排列一致性的机制)

如果层能共享一个表征空间,将对后续条件计算或向预训练Transformer模型动态添加新知识及下游应用产生重要影响。

关于Transformer的8大问题

层是否使用相同的表征空间?

为确定不同层是否共享相同的表征空间,研究人员检验了Transformer对于跳过特定层或更改相邻层顺序的鲁棒性。

例如,在Llama2-7B模型中将输出流从“第4层->第5层->第6层”的正常顺序,改为“第4层->第6层”,跳过第5层,会怎样?

又或者将第4层的输出送到第6层,然后将第6层的输出送到第5层,再送到第7层,会怎样?

如下图所示,实验发现除了最前面的和最末尾的几层,Llama2-7B跳过或改变层序表现出很好的鲁棒性。

也就是说,中间层共享一个表征空间,中间层与“外层”(最前面的和最末尾的几层)具有独立的表征空间。

图片

为了进一步证实这一假设,研究人员测量了不同模型(Llama2-7B、Llama2-13B和BERT-Large)中不同层的隐藏状态激活之间的平均余弦相似度,并跨基准测试进行了比较。

下图3展示了所有中间层之间的一致性。例如,底部第四层的激活与顶部第四层的激活高度相似。对于40层的Llama2-13B,可以看到这些层按相似性可划分成4-5个组:第0层,1-3层,中间层,然后是最后一两层。

图片

这表明模型可能对****“开始”、“中间”和“结束”层具有****三个不同的表征空间。研究人员还发现,“开始层”的数量似乎随着模型总层数的增加而增加。

此外,高余弦相似度可能证明有一个共享的表征空间,低相似度更能表明这些空间不是共享的。而上图3中Llama2-7B的数据与图2所示的性能结果高度一致,这进一步证明了:

至少中间层的表征空间是共享的。

所有层都是必要的吗?

为了进一步验证中间层的表征空间真正共享,研究人员还进行了层跳过实验(实验中未进行任何微调)。

具体来说,将第N层的输出直接传递为第N+M层的输入(M>1),从而“跳过”了M-1层,如下图所示。

图片

原本第N+M层仅针对来自第N+M-1层的输入进行训练,那么现在它能否理解第N层的激活?

此类实验中,研究人员正常执行第一层和最后N-1层,而跳过或修改第N+1到第T-N层(T是模型总层数)。

如下图4,在多个基准测试中,Llama2-7B和BERT-Large的性能均逐渐下降(图从左至右展示了跳过层数逐渐递增的变化)。这一结果揭示了:

不是所有层都是必要的,至少省略部分中间层不会对整体性能造成严重影响。

图片

中间层是否都执行相同的功能?

如果中间层共享一个共同的表征空间,这些层是否多余?

为了解答该问题,研究人员重新进行了前面的“跳过”实验,但这次不是跳过中间层,而是用最中心层的权重替换了这些所有中间层的权重,如下图所示。

实际上就是在最中心层上循环执行了T-2N+1次,其中T是模型总层数(Llama2-7B为32层,BERT-Large为24层)。

图片

结果基准测试中,随着被替换的层数增加,模型性能迅速下降。而且性能下降速度比仅仅跳过某些层要严重得多,这种权重替换极具破坏性。

图片

因此,中间层各执行不同的功能并非多余,中间层之间共享权重会产生灾难性后果。

层的顺序重要吗?

上面实验表明中间层虽共享表征空间,却在该空间上执行不同操作。那么这些操作顺序重要吗?研究人员进行了两组实验。

首先,将中间层按照与其训练顺序相反的顺序(逆序)执行。将第T-N层的输出传递给第T-N-1层,依此类推,直至第N层,然后将该层的输出传至最后的T-N层。

如下图:

图片

第二个实验,随机排列中间层顺序,并平均10个随机种子结果。

结果如下图,两种情况模型都呈现出缓慢的性能下降。

图片
图片

这里剧透一下下面的一项实验结果,无论是逆序还是随机顺序,模型表现均优于直接跳过这些层,说明即使层在非训练顺序的输入上运行,依然能进行有效输出。

因此,层顺序重要吗?结论是:

层顺序调整对性能有一定影响,随机顺序和逆序都表现出一定的性能退化。

值得注意的是,随机顺序性能优于逆序。可能是因为逆序与训练时的顺序完全相反,而任何随机顺序都至少保持了一些顺序上的连贯性(即某层i总在另一层j之后,其中i>j)。

可以并行运行这些层吗?

如果层的存在,即没有被跳过,比它们执行的顺序更重要,那么是否可以考虑独立地运行这些层,然后将它们的结果合并?如下图所示。

图片

研究人员进行了一个实验,不是跳过第N到第T-N层,而是并行运行这些中间层,然后将它们的平均结果传递到最后的N层。

结果如下图所示,除了GSM8K数学题基准外,所有基准测试都表现出缓慢的性能退化。

有趣的是,并行层的表现优于跳过层,但不如逆序运行层。

图片

总之,可以并行运行这些层吗?答案是:可以,数学为主的基准测试除外。

对于某些任务,顺序是否更重要?

大多数变体(包括逆序、跳过和并行)在抽象推理ARC或数学推理GSM8K基准中,表现出最快速的性能下降。

可以解释为逐步推理任务比“语义”任务(如Winogrande或HellaSwag)对层顺序的变化更为敏感。

这是因为推理任务需要结合结构和语义双重信息,而HellaSwag这类任务仅需语义即可完成。

通过实验,研究人员得出结论:数学和推理任务比“语义”任务更依赖顺序。

迭代对并行层有帮助吗?

如果把Transformer内部运行机制比作是画一幅画的过程:画布(输入)在一些画家之间传递,一些画家专门画鸟,一些则更擅长画轮子……每个画家都依次从另一位画家手里接过画布,然后决定对这幅画进行补充,还是将其直接传递给下一位画家(使用残差连接)。

可以想象,某些层在收到适当的输入时才会对画作进行“补充”。例如,如果“画轮子”的画家先看到汽车的车身,才更有可能画上轮子。

在Transformer中,某些层可能只有在接收到适当的输入时才会对前向传递发挥作用,而不是通过残差连接将输入直接传递出去。

这么来看的话,那么相比于仅执行一次并行层,迭代执行并行层应该会提高性能。

研究人员通过将并行层的平均输出回馈到同一层并固定迭代次数来进行测试,如下图:

图片

下图9中,研究人员展示了并行层迭代3次的结果,这种方法显著优于仅执行一次并行层。

图片

唯一的例外是在Llama2-7B的起始层N为15或BERT的起始层N为11时。在这种情况下,循环并行3次的效果相当于仅重复中间层3次,此时的并行层等同于完整模型。

研究人员还用不同的迭代次数重复进行了实验。

下图展示了Llama2-7B的性能随并行层数M和迭代次数的变化而变化。

图片

每个M的最佳迭代次数用红框表示。除了M=29和M=31(几乎并行所有层)外,最佳迭代次数大致与并行层数成线性比例。

因此结论是:迭代对并行层有帮助,最佳迭代次数与并行层数成比例。

哪些变体对性能损害最小?

最后,研究人员将实验中的所有不同变体在同一图表上进行了比较。

结果显示,重复单一层(如上面提到的用同等数量的最中心的层替换中间层)效果最差,性能迅速退化至随机基准线。

图片

迭代并行和随机层顺序性能退化最小,其中迭代并行在BERT和Llama2-7B中表现最好。

图片

论文附录中还补充了更多实验结果,感兴趣的家人们可以查看原论文。

论文链接:https://arxiv.org/abs/2407.09298v1
参考链接:https://x.com/A_K_Nain/status/1812684597248831912

​

如何学习大模型

现在社会上大模型越来越普及了,已经有很多人都想往这里面扎,但是却找不到适合的方法去学习。

作为一名资深码农,初入大模型时也吃了很多亏,踩了无数坑。现在我想把我的经验和知识分享给你们,帮助你们学习AI大模型,能够解决你们学习中的困难。

我已将重要的AI大模型资料包括市面上AI大模型各大白皮书、AGI大模型系统学习路线、AI大模型视频教程、实战学习,等录播视频免费分享出来,需要的小伙伴可以扫取。

一、AGI大模型系统学习路线

很多人学习大模型的时候没有方向,东学一点西学一点,像只无头苍蝇乱撞,我下面分享的这个学习路线希望能够帮助到你们学习AI大模型。

在这里插入图片描述

二、AI大模型视频教程

在这里插入图片描述

三、AI大模型各大学习书籍

在这里插入图片描述

四、AI大模型各大场景实战案例

在这里插入图片描述

五、结束语

学习AI大模型是当前科技发展的趋势,它不仅能够为我们提供更多的机会和挑战,还能够让我们更好地理解和应用人工智能技术。通过学习AI大模型,我们可以深入了解深度学习、神经网络等核心概念,并将其应用于自然语言处理、计算机视觉、语音识别等领域。同时,掌握AI大模型还能够为我们的职业发展增添竞争力,成为未来技术领域的领导者。

再者,学习AI大模型也能为我们自己创造更多的价值,提供更多的岗位以及副业创收,让自己的生活更上一层楼。

因此,学习AI大模型是一项有前景且值得投入的时间和精力的重要选择。

深度学习之Seq2Seq原理与实战 【代码】深度学习之Seq2Seq原理与实战。 阅读详情

相关推荐

深度学习之TF-IDF原理与实战

【代码】深度学习之TF_IDF原理与实战。

yumiwangzi30的博客 187

打乱/跳过Transformer层会怎样?最新研究揭开其信息流动机制,一口气解答8大问题...

西风 发自 凹非寺量子位 | 公众号 QbitAITransformer中的信息流动机制,被最新研究揭开了:所有层都是必要的吗?中间层在做同样的事吗?层的顺序重要吗?如果跳过一些层,比如第4层输出接到第6层会怎样。随机打乱层的顺序,比如4-6-5-7又会怎样。最近一项名为“Transformer Layers as Painters”的研究火了,由来自AI初创公司Sakana AI、Emergen...

量子位 306

深度学习之LoRA(低秩适配)原理与实战

【代码】深度学习之LoRA(低秩适配)原理与实战。

yumiwangzi30的博客 258

Python深度学习:从入门到实战

亲爱的读者,欢迎您翻开这本书。我们即将探索的,是深度学习的宇宙——一个由数据、算法与算力构筑的奇妙世界。它既是严谨的科学,也是创造的艺术,更是一条通往未来智慧的修行之路。本书将带您从最基础的数学原理出发,亲手搭建神经网络,驾驭Transformer等前沿模型,最终将智慧转化为现实世界的价值。请放下畏惧,保持好奇。这不仅是一次知识的学习,更是一场思维的远行。来,随我一起,开启这趟非凡的旅程吧。

YunWisdom 163

AI对战五子棋——深度学习策略网络

在本篇博文中,我们完成了:✔ 构建一个 CNN 五子棋策略网络✔ 让神经网络输出落子概率✔ 使用 Policy Gradient 强化学习训练 AI✔ 让 AI 实现人与 AI、AI 自对弈博弈。

X2829352498的博客 25

告别黑窗口!用VSCode+Native Debug调试C/C++程序,比GDB命令行舒服多了

本文介绍了如何使用VSCode配合Native Debug扩展来调试C/C++程序,替代传统的GDB命令行方式。通过可视化调试环境,开发者可以更高效地管理断点、查看变量和调用栈,大幅提升调试效率。文章详细讲解了环境配置、核心调试功能及高级技巧,帮助开发者快速上手这一现代调试工具。

weixin_26833139的博客 250

深度学习0:数学知识:正态分布1

步骤内容结果1引入e−x2e^{-x^2}e−x2钟形曲线2算它的面积I∫−∞∞e−x2dxI∫−∞∞​e−x2dx3平方变成二重积分I2I^2I24换极坐标简化计算5算出I2πI^2 = \piI2πIπIπ​6代入σ\sigmaσ和μ\muμ做变量替换得到σ2πσ2π​7除以它归一化得到正态分布公式2π2π​不是随便写的,它来自高斯积分∫−∞∞e−x2。

tellmewhoisi的博客 195

别再死记硬背了!用51单片机的AD/DA和PWM,亲手做个简易示波器信号发生器

本文详细介绍了如何利用51单片机的PWM和AD/DA功能制作简易示波器信号发生器。通过PWM模拟DAC输出波形,结合XPT2046 ADC进行信号测量,实现方波、三角波和正弦波的生成与显示。项目不仅成本低廉,还能帮助电子爱好者深入理解51单片机的核心功能,是理论与实践结合的绝佳案例。

weixin_28675839的博客 265

【原创深度学习项目】基于深度学习的建筑工地防护装备检测系统|安全帽与反光衣检测系统(RT-DETR-L 模型)

本文设计并实现了一套基于RT-DETR-L的建筑工地防护装备检测系统,采用Django+Vue前后端架构,实现对安全帽、反光背心等7类装备及“无PPE”“未戴安全帽”等缺失状态的精准识别。系统支持图片、视频、摄像头实时检测,具备参数可调、数据可视化与统计分析功能,有效解决小目标漏检、误检及管理难问题,助力智慧工地安全管理落地。文末可获取源码。

qq_1445749146的博客 214

CubeMX实战:ETH+LWIP+FreeRTOS网络工程从零搭建与AC6编译优化

本文手把手教你使用STM32CubeMX从零搭建集成以太网(ETH)、LWIP协议栈和FreeRTOS的嵌入式网络工程。文章详细解析了外设配置、协议栈调优、任务规划等关键步骤,并重点分享了如何解决ARM Compiler 6(AC6)的兼容性问题,实现编译速度与稳定性的双重提升,助你快速构建稳定的网络应用原型。

n2o3p4的博客 409

3D点云处理:PointNet++与PointTransformer的对比

摘要: 3D点云处理中,PointNet++和PointTransformer是两种主流深度学习模型。PointNet++通过分层采样和分组策略提取局部特征,而PointTransformer利用自注意力机制捕捉全局上下文。实验表明,PointTransformer在分类(ModelNet40准确率92.1%)和分割(ShapeNet mIoU 85.7%)任务上性能更优,但计算开销较大(训练时间180秒/轮)。PointNet++在实时性场景更具优势(训练时间120秒/轮)。未来可结合两者优势,或优化Tr

shejizuopin的博客 1121

图解循环神经网络(RNN)

RNN(循环神经网络)就是“带记忆的网络”:让网络拥有一块“记忆”,在处理当前数据时,能同时参考之前看过的内容;它不一次性看完全部输入,而是像人读书一样,一个字一个字地读,每读一个字就更新一次脑子里的记忆,然后用这份记忆去理解当前这个字。但便签一直在被改写,新信息不断挤占旧信息,传到第 40 步时,“巴黎”的痕迹已经淡得几乎没了。读到“贵”的时候,网络并没有重新去查“好看”这个词——但“好看”的影响已经融在了便签里(那个 1.5)。这三个困难的共同点:答案不在当前这一个字里,而在“前面那串东西”里。

技术管理两手抓,两手都要硬. 358

奥顺居PHP测算引流SEO程序_八字风水_起名解梦_星座生肖综合门户源码

奥顺居PHP测算引流SEO程序_八字风水_起名解梦_星座生肖综合门户源码 S30新框架适合多种奥顺插件。

xl1407的博客 1751

神经网络入门指南:从 CNN、RNN 到 Attention

神经网络的学习,本质是“预测—比较—纠错”的循环;CNN 通过局部连接与权重共享理解图像;RNN 通过隐藏状态传递上下文;LSTM 和 GRU 用门控机制管理记忆;Encoder–Decoder 把理解与生成拆成两个阶段;Attention 则让模型在每一步都能主动寻找最相关的信息。到这里,我们已经走完了从普通神经网络到 Attention 的完整路线。下一篇将正式进入 Transformer,看看它如何摆脱 RNN 的顺序计算,又如何让每个 Token 直接找到与自己相关的信息。

爱敲代码的小黄 351

12027.linux flash驱动之IS25LP01G/IS25WWP01G

一页:512字节 --> 扇区 4096字节 --> 块 32k,64k, 层层递进关系。

写给自己的笔记 2289

使用Open3D进行RGB-D图像点云处理

在本文中,我们将使用Open3D来处理RGB-D图像,提取点云并进行一些基本的操作。总结起来,本文介绍了如何使用Open3D库处理RGB-D图像并提取点云。我们展示了如何读取RGB-D图像,创建RGB-D图像和点云,并显示点云。除了显示点云,Open3D还提供了许多其他功能,如点云滤波、点云配准、表面重建等。在创建RGB-D图像时,我们需要指定深度图像的缩放因子和截断值,以及是否将RGB图像转换为强度图像。希望本文能够帮助您入门Open3D,并在处理RGB-D图像和点云数据时提供一些指导。

QfcaLinux的博客 445

基于深度学习的垃圾分类系统的设计与实现

本系统是一个基于 Flask Web 框架与 PyTorch 深度学习模型的垃圾分类智能识别平台。系统面向垃圾图像分类场景,能够对上传图片中的玻璃、纸张、纸板、塑料、金属、其他垃圾等六类垃圾进行自动识别与置信度评估,并提供识别历史、数据统计、模型在线训练与记录导出等完整功能。系统使用 TrashNet 公开垃圾分类数据集进行模型训练,管理员可手动发起模型训练,训练完成后自动加载新权重。启动服务不会自动训练。

aiyuanma_vip的博客 385

华为OD机试真题 新系统 2026-09-06 Python&JS【仓储货物有序出库】

某仓储中心有一个货物堆放区,货物编号按乱序堆叠存放,只能从顶部取货,管理员需要将货物按编号从小到大取出。

MISAYAONE的博客 116

CNN 卷积神经网络深度解析:卷积、池化与特征提取的底层原理

卷积核(Kernel),也叫滤波器(Filter),本质上是一个可以训练的权重矩阵。1 0 -11 0 -11 0 -1这个卷积核可以对图像中的局部像素进行加权计算。不同的卷积核能够提取不同类型的特征:水平边缘特征垂直边缘特征纹理特征角点特征局部形状特征在传统图像处理中,滤波器通常由人工设计。而在 CNN 中,卷积核的权重通过训练数据和反向传播自动学习得到。这也是 CNN 能够自动提取图像特征的关键。# 第一层卷积padding=1# 第二层卷积padding=1。

2503_90237586的博客 239

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

图解常用深度学习优化器

来隐式构造 Hessian 逆的近似,从而直接估计出“谷底在哪”,而非仅仅判断“哪边最陡”。即SGD/Adam 主要看“当前坡度”,LBFGS 还会看“最近几步坡度怎么变”,像用局部地形图来规划路线。训练 Transformer 时,有些层梯度大,有些层梯度小。如果用 Adam + L2,梯度大的参数反而可能被“少衰减”,正则效果不稳定;:你要下山,但每次迈步前都要派侦察兵把整座山的每一个坡面都测量一遍,算出“绝对最陡”的方向才走一步。:还是下山,但这次你只问身边一个路人“哪边最陡”,然后就走。

技术管理两手抓,两手都要硬. 200

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

上一篇: 年薪高达六位数,AI提示词工程师成为2024最热门新职业
下一篇: AI机器人本地免费部署(部署Llama 3.1详细教程)
我爱学大模型
博客等级 码龄3年 7883粉丝 687原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值