论文阅读-Transformer Layers as Painters

1. 摘要

尽管大语言模型现在已经被广泛的应用于各种任务,但是目前对其并没有一个很好的认知。为了弄清楚删除和重组预训练模型不同层的影响,本文设计了一系列的实验。通过实验表明,预训练语言模型中的lower和final layers与中间层分布不一致,并且中间层有着惊人的一致性。

2. 模型和benchmark

  • 模型:BERT-Large和Llama2
    • llama-7B:32layers, 每层包括202M参数
    • llava-13B:40layers
    • llava-70B:80layers
    • BERT-large:24layers和340M参数
  • benchmark for llama2
    • ARC:science exam question
    • HellaSwag:commonsense
    • GSM8K:Math Word Problems
    • WinoGrande:Winograd Schema Challenge
    • LAMBADA:word prediction,measures perplexity
  • benchmark for bert:
    • GLUE
      • CoLA (Corpus of Linguistic Acceptability): Acceptability judgments drawn from linguistic
        theory.
      • MRPC (Microsoft Research Paraphrase Corpus): Semantic equivalence for news sentences.
      • QNLI (Stanford Question Answering Dataset): Question answering from paragraphs.
      • RTE (The Recognizing Textual Entailment): Textual entailment
      • SST2 (The Stanford Sentiment Treebank): Sentiment prediction.
      • STSB (The Semantic Textual Similarity Benchmark): Sentence pair similarity.
      • WNLI (The Winograd Schema Challenge): Sentence referent selection.

3. 实验

3.1 Do layers "speak the same language"?

**实验:**跳过某层或将前后两层调换顺序,实验结果如下图所示:

从上图中可以看出,对中间的模型层调换前后2层顺序及跳过某层,在benchmark上效果波动不大;但first和last few layers则相反。因此,可以推断出middle layer和first及last few layers有不同的表征空间,且中间层间的表征空间比较相似。

为了更进一步验证这个猜想,衡量了在benchmark上不同层hidden state的activation值间的cosine similarity。结果如下图所示:

从上图中可以看出,模型基本有三种表征空间,"beginning","middle"和"ending"。另外,"beginning"层和"middle"层的层数似乎随着模型总层数的增加而增加,而"ending"层则会固定到单层上。

3.2 Are all the layers necessary?

实验:跳过N层,将N+1层的输出作为T-N层的输入,T为模型总层数。=> skip

从上图中可以看出,当有少量的层被跳过时,模型效果并没有降低很多。

3.3 Are middle layers all doing the same thing?

虽然中间层表征空间是一样的,那么是否表示这些层是冗余的呢?

实验:在"middle"中用中心层的参数替换其他层的参数=>middle repeat

从上图中可以看出,随着替换层数的增加,模型效果下降的越发明显。所以"middle" layer中不同层有着不同的功能。

3.4 Does the layer order matter?

实验:1. 中间层倒过来=>reverse。2. 将中间层随机打乱。

不管是随机打乱层还是倒过中间层都对模型效果有不少的影响。但随机打乱要比中间层倒装的效果要好。

3.5 Can we run the layers in parallel?

能否将不同层独立运行,然后将结果合并呢?=> parallel

除了在GSM8K数学任务上,随着并行层数的增加,模型效果有着合理的降低。

3.6 Does the order matter for some tasks more than others?

是的,在数学和推理任务上,order比较重要。在语义任务上,order就还好。

3.7 Does looping help parallelized layers?

从上图可知,并行层重复多次能够有效的改善模型效果。

从上图中可知,最佳的迭代次数(重复次数)与并行层的数量成正比。

3.8 Which variants are least harmful?

从图中可知,重复单层是效果最差的,随机中间层和并行重复策略(looped-parallel)模型效果损失最小。

  • 为什么skip要比middle repeat策略要差呢?

    从图中可以发现,skip策略跟llama2-7B模型的cosine similarity一样。而middle repeat则发生了偏移。

4. 讨论

  • 有三种不同类型的层,"beginning","middle"和"ending"
  • 中间层有某种程度的均匀,但是不冗余。
  • 模型层的执行顺序相较于语义任务,在数学和推理任务中更为重要
相关推荐
极客代码8 分钟前
【Python TensorFlow】进阶指南(续篇二)
开发语言·人工智能·python·深度学习·tensorflow
池央27 分钟前
丹摩征文活动 | 搭建 CogVideoX-2b详细教程:用短短6秒展现创作魅力
人工智能
QYR市场调研39 分钟前
5G时代的关键元件:射频微波MLCCs市场前景广阔
人工智能
AI小白日记1 小时前
深入探索AutoDL平台:深度学习GPU算力最佳选择
人工智能·深度学习·gpu算力
一尘之中1 小时前
元宇宙及其技术
人工智能
电子手信1 小时前
AI知识库在行业应用中的未来趋势与案例分析
大数据·人工智能·自然语言处理·数据挖掘
严文文-Chris2 小时前
【卷积神经网络】
人工智能·神经网络·cnn
B站计算机毕业设计超人2 小时前
计算机毕业设计Python+Neo4j中华古诗词可视化 古诗词智能问答系统 古诗词数据分析 古诗词情感分析 PyTorch Tensorflow LSTM
pytorch·python·深度学习·机器学习·知识图谱·neo4j·数据可视化
B站计算机毕业设计超人4 小时前
计算机毕业设计Python+大模型斗鱼直播可视化 直播预测 直播爬虫 直播数据分析 直播大数据 大数据毕业设计 机器学习 深度学习
爬虫·python·深度学习·机器学习·数据分析·课程设计·数据可视化
tang13897644 小时前
机器学习(基础1)
人工智能·算法·机器学习