前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >由浅入深详解NLP中的Adapter技术

由浅入深详解NLP中的Adapter技术

作者头像
zenRRan
发布2022-07-27 09:51:27
1.5K0
发布2022-07-27 09:51:27
举报

每天给你送来NLP技术干货!


©作者 | 吴迪

单位 | UCLA

研究方向 | NLP

排版 | PaperWeekly

前言

在现代自然语言处理(NLP)的应用中,使用预训练的表征进行迁移学习是很重要的一个方法。在深度学习开始被应用之后,迁移学习最早出现在使用预训练的特征向量,以及对预训练语言模型(pre-trained language model,PLM)进行微调(fine-tuning)[1]。基于预训练模型,adapter 给出了一个新的思路,即能否在模型中插入一些少量的参数,在下游某个任务微调时只对这些参数进行训练,而保持预训练模型原有的参数不变。如果使用 adapter 可以让我们达到和微调整个模型一样的效果(或者更好),那就可以带来很多好处:

  • 参数效率更高:一个任务只需要少量参数,训练更快,占用的内存更少,对数据集较小的任务更难过拟合,也更有利于模型的存储和分发。
  • 连续学习的遗忘问题:adapter 冻结了原有模型的参数,保证了原来的知识不被遗忘。
  • 多任务学习:使用 adapter 也可以用比较少量的参数学习多个任务,和传统的多任务学习相比,好处是不同任务之间影响较少,坏处是不同任务带来的相互的监督可能会变少。

Adapter 最早由 [2] 提出,应用在了计算机视觉的模型中,后来由 [1] 引入 NLP,近些年相关的工作越来越多。最近对 adapter 在 NLP 上的应用很感兴趣,在此文中整理一些学习 adapter 时相关论文的笔记,其中的很多算法都在开源库 AdapterHub 中有实现:

https://adapterhub.ml/

Bottleneck Adapter

首先总结一下把 adapter 引入 NLP 的论文 [1]。本文的主要贡献就是提出了应用于 transformer 的 adapter 结构,并且展示了在经典的 NLP 任务上使用 adapter 进行参数高效的迁移学习的可行性。

网络结构:如下图所示,[1] 提出在 transformer层中插入 adapter 层。adapter 层的结构很简单,向下投射到一个较小维度,经过一层非线性激活函数,然后向上投射到原有的维度。另外,整个 adapter 层的输入和输出之间还有一个残差连接。这一类的 adapter 也被形象地称作 bottleneck adapter。以 BERT 为例,根据 bottleneck 层的大小不同,新增的参数量大致占原有模型的 0.5%-8%。

▲Bottleneck adapter的结构

初始化:所有的 adapter 参数都从均值为 0 标准差为 0.01 的正态分布中采样。这样可以保证刚开始训练时,adapter 主干的全连接网络的输出很小,主要由残差连接传递信息。

训练:冻结原有模型的全部参数,只训练 adapter 层的参数和 layer normalization 的参数。

实验:主要在分类任务(GLUE)和抽取式问答任务(SQuAD v1.1)上进行,比较微调整个 BERT-Large 和 BERT-Large 加 adapter 只微调 adapter 的性能。

实验发现:

  • 只微调 adapter 可以做到比较接近整个模型微调的性能,如果根据每个 task 调 adapter 的大小,可以做到掉点比较少。
  • 使用 adapter 的参数效率要高于只微调 BERT 的靠近输出的若干层,性能要高于只训练 layer normalization 的参数。
  • 推理阶段,对某层的 adapter 进行剪枝(pruning)是可行的,不会对性能产生太大影响。但是对多层进行剪枝性能会大幅下降。相比靠近输出的层(顶层)来说,靠近输入的层(底层)对剪枝更不敏感。
  • 权重初始化的分布标准差小于 0.01 的时候效果比较好,标准差过大会让效果变差。

对Adapter结构或训练/推理流程的改进

论文 [3-5] 对 [1] 进行了改进和拓展,这些文章解决的主要问题如下:

  • AdapterFusion [3]:如何把多任务学习和 adapter 更好地结合起来,利用多任务学习的优势,避免其劣势?
  • AdapterDrop [4]:adapter 在推理阶段速度会慢多少?如何对 adapter 进行剪枝?
  • Compacter [5]:能否将 adapter 层做得更加轻量化,同时不降低性能?

3.1 AdapterFusion

想要结合来自多个任务的知识,传统的两个方法是按一定顺序微调(sequential fine-tuning)或者多任务学习(multi-task learning)。前者的一大问题是需要先验知识来确定顺序,且模型容易遗忘之前任务学到的知识,后者的问题是不同的任务互相影响,也难以平衡数据集大小差距很大的任务。Adapter 的一个优势是不用更新预训练模型的参数,而是插入比较少的新的参数就可以很好地学会一个任务。此时,adapter 的参数某种程度上就表达了解决这个任务需要的知识。受此启发,[3] 提出如果想要把来自多个任务的知识结合起来,就可以考虑把多个任务的adapter的参数结合起来。

[3] 提出的 AdapterFusion 的多任务学习框架分成两个阶段。首先,针对于每个任务,学习一组新的 adapter 参数。然后,针对于某个特定目标任务,学习一个融合模块把第一步的所有 adapter 结合起来。[3] 假设第二阶段的每个任务都被包括在第一阶段里了,不考虑第二阶段引入新的任务的情况。

网络结构:

▲AdapterFusion的结构

图中展示了 AdapterFusion 的结构(右)和在 transformer 层的放置位置(左)。单个 adapter 层(粉色)和 [1] 中没有区别,但是每个 transformer 层中只保留最顶端的一个 adapter 层,去掉了多头注意力层之后的 adapter 层。

AdapterFusion 层(蓝绿色)的结构就是一个注意力模块。Q 是原来 transformer 层中全连接层的输出,K 和 V 都是各个任务对应的 adapter 的输出。和 transformer 中的 cross attention 相似,先对 QKV 进行一层线性projection,然后 QK 点乘并计算 softmax,再用输出把 V(来自不同任务的 adapter 的输出)加权组合起来,具体公式如下。l 代表层数,t 代表序列位置,n 代表任务(一共 N 个)。抽象地说,任务 X 对应模型的每一层的 AdapterFusion就是根据上一层的输出,从众多任务的知识中选择并应用最适合任务 X 的知识。

初始化:QK 随机初始化,V 初始化成 identity matrix 加上一些小的随机噪声。

训练:

  • 第一步:训练每个任务的adapter。作者实验了两种方式:(1)每个任务独立初始化一套 adapter 参数,只学习当前任务,不更新预训练模型的参数(ST-A);(2)把所有的 adapter 组装在一起,用多任务学习的损失函数同时训练所有 adapter,也一起微调所有预训练的参数(MT-A)。
  • 第二步:把第一步的所有 adapter 组装到一起(只针对 ST-A,MT-A 已经组装好),然后加入 AdapterFusion 层,再在目标任务上训练。数据集用第一步中使用过的相同的版本。作者也实验了在第二步使用 MT-A,作为对照。

实验:作者挑选了 16 个不同种类、不同大小的任务进行多任务学习。类别包括常识、情感分析、自然语言推理、句子相关性;数据集大小包括 40k 以上、10k 以上、5k 以上、5k 以下。预训练模型使用 BERT-base 和 RoBERTa-base。

实验发现:

  • 第一阶段训练,使用 ST-A 可以做到和整个模型微调相近或更好的表现,但是使用 MT-A 会一定程度影响性能。作者的解释是只训练 adapter 是一种正则化,可以帮助泛化。
  • 第二阶段,加入 AdapterFusion 对训练集比较小的任务提升比较明显。
  • 第一阶段使用 ST-A 并且第二阶段使用 AdapterFusion 效果最好,也有利用 adapter 的复用。第一阶段使用 MT-A,在第二阶段也要使用 MT-A 才可以有一定提升。
  • AdapterFusion 提升比较明显的任务,每一层的 AdapterFusion 层会更倾向于 attend 到其他任务的 adapter。

3.2 AdapterDrop

论文 [4] 主要的贡献是:1)建立了一系列 adapter 的训练/推理速度相关的测量结果;2)提出了剪枝整个 adapter 层的方法 AdapterDrop,加快了多任务同时推理的速度;3)建立了对 AdapterFusion 进行剪枝的结果。

Adapter 的训练和推理速度。作者们在两种不同的 GPU 上测量了 [1] 和 [3] 两种 adapter 结构和整个模型微调相比的训练和推理速度,结果如下图。Adapter 的训练会比整个模型微调快 60% 左右,推理会比使用原模型慢 4%-6%。

3.2.1 AdapterDrop

为了加快推理速度,在推理时可以对某几层的 adapter 进行剪枝。根据 [1] 的结论,靠近输入的 adapter 被剪掉后对性能影响更小。因此,AdapterDrop 的作者提出,推理时可以剪掉最下方 n 层的 adapter,也就是最靠近输入的前 n 层。为了尽可能地减小掉点,作者设计了两种训练方案:(1)specialized AdapterDrop:训练时固定 n,训练后的模型推理时也固定剪掉前 n 层;(2)robust AdapterDrop:训练时每个 batch 都随机选取 n 的大小,训练后的模型可以适应多个 n。由于原有模型其他参数是不训练的,在训练时梯度就可以只回传到保留 adapter 的最早一层即可(见下图)。

▲标准的adapter训练(中)和AdapterDrop的训练(右)

实验结果:在 GLUE 的多个任务上,两种 AdapterDrop 可以做到推理时 n=5 以下掉点都不太严重,而传统的 adapter 在 n>1 时性能下降就很快了。当去除掉五层的 adapter 时,训练速度可以加快 26%,多任务同时推理的速度可以加快 21%-42%,超过了原模型的推理速度。要注意为了更凸显 AdapterDrop 的优势,作者测量速度的场景是多任务同时推理,也就是说输入文本,模型生成多个任务的输出。

3.2.2 对 AdapterFusion 进行剪枝

作者首先测量了 AdapterFusion (AF,[3])的训练和推理时间,发现和原模型整体微调和推理相比,每层 8 个adapter 的 AF 的训练速度大约慢 47%,推理速度大约慢 62%,主要是因为 adapter 需要逐个推理。作者用 8 个 GLUE 的任务(去除 WNLI)训练了一个 AF 模型,在上面实验了两种加速 AdapterFusion 的思路:

  • 去除掉前几个 AF 层,对性能的影响不同的任务有所不同。例如对 RTE 的影响不大,但是 CoLA 十分敏感。这说明直接去除 AF 层并不是一个通用的好方法。
  • 剪掉每层中对输出贡献较小的 adapter。作者用训练集测量了每个 adapter 的平均激活水平(应该是加权之后的输出),每层只保留两个贡献最高的 adapter,模型的性能和原来基本持平,推理速度可以提高 68%。

3.3 Compacter

Compacter 这一结构来自论文 [5]。作者沿用了 [1] 的 adapter 放置位置和训练方式,只是重新设计了更加轻量化的 adapter 结构,使得只需要新增原模型大约 0.05%-0.2% 的参数量便可在 GLUE 和 SuperGLUE 这些 benchmark 上达到比较好的表现。

网络结构:

  • Compact 应用了 Kronecker 积。一个 mxf 的 A 矩阵和一个 pxq 的 B 矩阵的 Kronecker 积是
  • 假设模型 hidden state 大小是 k,bottleneck 大小是 b,[1] 中的 adapter 层就包含两个 kxb 的矩阵。Compacter首先借用了 parameterized hypercomplex multiplication layers 的理念,把每个 adapter 的参数表达成一个 nxn 的矩阵 A 和一个 (k/n)x(d/n) 的矩阵 B 的 Kronecker 积,这样参数量就被大大缩减了。
  • 在此之上,要求所有 adapter 共享矩阵 A。
  • 另外,把矩阵 B 再次分解成 n 组两个低秩矩阵的积,两个矩阵的大小分别是 (k/n)xr 和 rx(d/n)。为了减少参数量,作者把 r 固定为 1。
  • Compacter 层结构如下图所示。图中展示了两个 compacter 层,彩色的是需要训练的参数。把 [1] 中的 adapter 层中的参数用这种形式表达就得到了 compacter 的结构。

▲Compacter的结构

实验:作者主要使用了 T5-base 在 GLUE 和 SuperGLUE 的任务上进行了实验。对比了 Compacter,整个模型微调,以及一系列参数高效的方法。对 compacter,作者实验了无低秩分解的版本进行对照,也实验了类似 [3] 每个transformer层只保留靠近输出的一个 adapter 的结构(称作 compacter++)。

实验结果:

  • 在 T5-base 上,[3] 的adapter层的效果比 [1] 要好。AdapterDrop 或者仅仅对 adapter 层进行低秩分解的性能都比整个模型微调要差。
  • Compacter 的三个创新使得只训练 0.1% 上下的新参数就可以和全模型微调的表现相近。
  • 和全模型微调相比,Compacter 在训练集较小(0.1k-4k)的时候表现要更好。

Adapter的应用和针对应用的改进

这里的几篇论文 [6-12] 都利用了 adapter 设计了一些特定问题的解决方案,有的方法重在参数高效,有的方法重在对原模型的效果进行进一步提升。篇幅限制,这部分对每篇论文只做简略介绍。

4.1 Bapna & Firat(2019)

本篇论文 [6] 主要应用了 adapter 来解决两个机器翻译(NMT)的问题:(1)域适应(domain adaptation)和(2)大规模多语种 NMT。作者主要采用的框架是先预训练一个基础模型,再根据每个目标任务插入一个新的 adapter 进行微调。文章主要的贡献是展现了在 NMT 任务上 adapter 类的方法可以做到和整个模型微调达到相似性能,同时更加参数高效。另外,多语种 NMT 任务上可以做到单个模型同时在资源少和多的语言上表现良好。

  • Adapter 结构:本文和 [3] 使用了类似结构(但是本文的工作在 [3] 之前),每个 transformer 层只在最后插入一个 adapter 层。另外,作者重新初始化了 layer norm 的参数(和 [1] 不同,[1] 是直接用预训练的 layer norm 参数继续训练)。
  • 域适应:作者在 WMT En-Fr 上训练,然后冻结参数,插入 adapter,分别迁移到 IWSLT'15 和 JRC。模型性能好于 LHUC [7],和全模型微调比较接近。
  • 多语种 NMT:作者首先训练了一个英语 <=>102 种其他语言的模型,然后冻结参数,再针对每组(源语言,目标语言)的组合分别插入一个 adapter 进行微调。主要比较的基线方法是只用(源语言,目标语言)的数据训练的模型。结果显示英语是源语言时,大部分目标语言的表现相比基线都持平或有所提升;但是英语是目标语言时,主要在训练数据较少的语言上有较大提升,在训练数据比较多的语言上效果有所下降。

4.2 K-Adapter

本篇论文 [8] 主要的贡献是用 adapter 以一种模块化的方式向预训练语言模型中插入知识,来解决一些知识密集型的 NLP 任务(关系分类、实体类型识别、问答等等)。作者通过训练两个 adapter 来把两种类型的知识引入 RoBERTa:(1)事实性知识,(2)语言学类的知识。两个 adapter 分别训练,互不影响。

  • 模型结构:K-Adapter 不再改动原有的 transformer 层,而是变成在两个 transformer 层之间插入 adapter 层。每个 adapter 层内,在向下和向上 project 的全连接层之间加入了两层 transformer 层(下图左),增加了模块的表达能力。每个 adapter 层的输入可以看到上一个 adapter 和邻近的上一个 transformer 层的输出(下图右)。

▲K-Adapter的结构(左)和训练方式(右)

  • 预训练:插入 adapter 层,把原模型参数固定,把原模型最后一层的输出和最后一个 adapter 的输出 concat 起来作为 feature,然后在特定的预训练任务上学习。
    • 事实性知识:在关系分类任务上训练,共 430 个类,5.5M 个句子。通过学习预测实体和实体之间的关系,模型可以学到一些基本事实和常识。
    • 语言学类知识:在依存关系分类任务上训练,作者用斯坦福的 parser 准备了共约 1M 个训练样本。通过学习预测每个 token 对应的 head 的位置,模型可以学到一些和句法/语义相关的知识。
  • 下游微调:把每个任务新增的参数接在最后一个 adapter 层的输出上进行训练。如果同时使用多个 adapter,就把他们的输出 concat 起来作为特征。另外,原来预训练模型的参数也跟着一起微调。
    • 下游任务主要涵盖关系分类、实体类型识别、问答。
    • 基线模型除了之前效果比较好的语言模型 + 知识的模型外,还有原 RoBERTa 模型、原 RoBERTa 模型 + 随机初始化的 adapter 参数、原 RoBERTa 模型进一步在两个任务上多任务学习得到的模型。实验结果发现同时使用两个 adapter 时可以获得最好的效果。对后两个下游任务来说事实性知识帮助更大,对第一个任务语言学类的知识帮助更大。

4.3 MAD-X

和前文总结过的 AdapterFusion 以及 K-Adapter 类似,MAD-X [9] 这篇论文的目标也是用 adapter 来学习和存储模块化的知识,做到“即插即用”。AdapterFusion 的目标是让小训练集的任务使用大训练集的任务的知识,而 MAD-X 的目标是在同一个任务下让低资源的语言使用高资源的语言的知识。

为了解耦语言和任务,作者提出分别训练相对应的 adapter,这样想要解决一个低资源语言 L 的任务 T 时,可以使用对应语言 L 的 adapter,搭配上在其他语言 L' 上训练的任务 T 的 adapter。在这个框架的基础上,作者还设计了 invertible adapter 作为学习语言知识的 adapter 的一部分。

网络结构:仍然是在每个 transformer 层中插入 adapter(下图),其中 language adapter 和 task adapter 沿用 AdapterFusion 的网络结构,invertible adapter 是一个 token 层面的映射函数,和 language adapter 一起训练,可以理解成在 multilingual embedding 上再为每种语言学习一个专用的 embedding 函数,但是比每种目标语言重新训练 embedding 更加参数高效。

▲MAD-X中三类adapter的放置方式(左)和invertible adapter的结构(右)

训练和推理:首先为每种语言训练 language adapter 和 invertible adapter,用的任务是 MLM。然后再插入某任务专用的 adapter,配合源语言的 language adapter 和 invertible adapter 在源语言的训练集上训练。推理时,使用目标语言的 language adapter 和 invertible adapter,再配合源语言的 task adapter。

实验和发现:

1. 作者主要在命名实体识别、问答、因果常识推理上进行跨语言迁移的实验,选取了 16 种来自各种语系并且训练集资源大小不一的语言两两配对进行实验。作者在 XLM-R 上加入 adapter,对比的基线模型包括 mBERT 和 XLM-R,还有在目标语言上进行预训练过的 XLM-R。

2. 对于预训练阶段没有出现过的语言,XLM-R 和只使用 task adapter 的 MAD-X 表现都很差,在目标语言进行预训练之后,XLM-R 效果有很大提升。

3. NER 任务上,language adapter 和 invertible adapter 都对性能影响很大。MAD-X 对高资源向低资源语言的迁移帮助最大。

4. 因果常识推理任务上,MAD-X 和目标语言上预训练的 XLM-R 表现类似;问答任务上,后者似乎在比 MAD-X 表现更好。但是 MAD-X 训练的参数更少。

4.4 其他应用

  • UDapter [10]:用 adapter 训练参数高效的多语言的依存分析模型。
  • Philip et al.(2020)[11]:和 [6] 类似,关注多语言机器翻译任务,但是给每个语言引入 adapter 参数,而不是像 [6] 一样给每对语言引入一个 adapter。
  • Lauscher et al.(2020)[12]:和 [8] 类似,使用 adapter 模块化地引入知识。

类似Adapter的结构

下面列举了思路和 adapter 相近,但是网络结构设计不同的文章,这里就不详细介绍了,也推荐 ICLR 2022 的文章 [16](或者何俊贤大大亲自讲解的视频)。

  • BERT and PAL [13]
  • Prefix Tuning [14]
  • LoRA [15]

▲三种 adapter 类的结构(adapter,prefix tuning,LoRA),图片来自 [16]。

参考文献

[1] Houlsby, N., Giurgiu, A., Jastrzebski, S., Morrone, B., Laroussilhe, Q. D., Gesmundo, A., Attariyan, M., & Gelly, S. (2019). Parameter-Efficient Transfer Learning for NLP. Proceedings of the 36th International Conference on Machine Learning, 2790–2799. https://proceedings.mlr.press/v97/houlsby19a.html

[2] Rebuffi, S. A., Bilen, H., & Vedaldi, A. (2017). Learning multiple visual domains with residual adapters. Advances in neural information processing systems,30. https://proceedings.neurips.cc/paper/2017/file/e7b24b112a44fdd9ee93bdf998c6ca0e-Paper.pdf

[3] Pfeiffer, J., Kamath, A., Rücklé, A., Cho, K., & Gurevych, I. (2021). AdapterFusion: Non-Destructive Task Composition for Transfer Learning. Proceedings of the 16th Conference of the European Chapter of the Association for Computational Linguistics: Main Volume, 487–503. https://doi.org/10.18653/v1/2021.eacl-main.39

[4] Rücklé, A., Geigle, G., Glockner, M., Beck, T., Pfeiffer, J., Reimers, N., & Gurevych, I. (2021). AdapterDrop: On the Efficiency of Adapters in Transformers. Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing, 7930–7946. https://doi.org/10.18653/v1/2021.emnlp-main.626

[5] Karimi Mahabadi, R., Henderson, J., & Ruder, S. (2021). Compacter: Efficient Low-Rank Hypercomplex Adapter Layers. Advances in Neural Information Processing Systems, 34, 1022–1035. https://proceedings.neurips.cc/paper/2021/hash/081be9fdff07f3bc808f935906ef70c0-Abstract.html

[6] Bapna, A., & Firat, O. (2019). Simple, Scalable Adaptation for Neural Machine Translation. Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP), 1538–1548. https://doi.org/10.18653/v1/D19-1165 [7] Vilar, D. (2018). Learning Hidden Unit Contribution for Adapting Neural Machine Translation Models. Proceedings of the 2018 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 2 (Short Papers), 500–505. https://doi.org/10.18653/v1/N18-2080

[8] Wang, R., Tang, D., Duan, N., Wei, Z., Huang, X., Ji, J., Cao, G., Jiang, D., & Zhou, M. (2021). K-Adapter: Infusing Knowledge into Pre-Trained Models with Adapters. Findings of the Association for Computational Linguistics: ACL-IJCNLP 2021, 1405–1418. https://doi.org/10.18653/v1/2021.findings-acl.121

[9] Pfeiffer, J., Vulić, I., Gurevych, I., & Ruder, S. (2020). MAD-X: An Adapter-Based Framework for Multi-Task Cross-Lingual Transfer (arXiv:2005.00052). arXiv. http://arxiv.org/abs/2005.00052

[10] Üstün, A., Bisazza, A., Bouma, G., & van Noord, G. (2020). UDapter: Language Adaptation for Truly Universal Dependency Parsing. Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP), 2302–2315. https://doi.org/10.18653/v1/2020.emnlp-main.180

[11] Philip, J., Berard, A., Gallé, M., & Besacier, L. (2020). Monolingual Adapters for Zero-Shot Neural Machine Translation. Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP), 4465–4470. https://doi.org/10.18653/v1/2020.emnlp-main.361

[12] Lauscher, A., Majewska, O., Ribeiro, L. F. R., Gurevych, I., Rozanov, N., & Glavaš, G. (2020). Common Sense or World Knowledge? Investigating Adapter-Based Knowledge Injection into Pretrained Transformers. Proceedings of Deep Learning Inside Out (DeeLIO): The First Workshop on Knowledge Extraction and Integration for Deep Learning Architectures, 43–49. https://doi.org/10.18653/v1/2020.deelio-1.5

[13] Stickland, A. C., & Murray, I. (2019). BERT and PALs: Projected Attention Layers for Efficient Adaptation in Multi-Task Learning. Proceedings of the 36th International Conference on Machine Learning, 5986–5995. https://proceedings.mlr.press/v97/stickland19a.html

[14] Li, X. L., & Liang, P. (2021). Prefix-Tuning: Optimizing Continuous Prompts for Generation. Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing (Volume 1: Long Papers), 4582–4597. https://doi.org/10.18653/v1/2021.acl-long.353

[15] Hu, E. J., Shen, Y., Wallis, P., Allen-Zhu, Z., Li, Y., Wang, S., Wang, L., & Chen, W. (2021). LoRA: Low-Rank Adaptation of Large Language Models (arXiv:2106.09685). arXiv. http://arxiv.org/abs/2106.09685

[16] He, J., Zhou, C., Ma, X., Berg-Kirkpatrick, T., & Neubig, G. (2022). Towards a Unified View of Parameter-Efficient Transfer Learning (arXiv:2110.04366). arXiv. http://arxiv.org/abs/2110.04366


📝论文解读投稿,让你的文章被更多不同背景、不同方向的人看到,不被石沉大海,或许还能增加不少引用的呦~ 投稿加下面微信备注“投稿”即可。

最近文章

EMNLP 2022 和 COLING 2022,投哪个会议比较好?

一种全新易用的基于Word-Word关系的NER统一模型

阿里+北大 | 在梯度上做简单mask竟有如此的神奇效果

ACL'22 | 快手+中科院提出一种数据增强方法:Text Smoothing

代码语言:javascript
复制

投稿或交流学习,备注:昵称-学校(公司)-方向,进入DL&NLP交流群。

方向有很多:机器学习、深度学习,python,情感分析、意见挖掘、句法分析、机器翻译、人机对话、知识图谱、语音识别等。

记得备注呦

代码语言:javascript
复制
整理不易,还望给个在看!
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-07-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 深度学习自然语言处理 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Bottleneck Adapter
  • 对Adapter结构或训练/推理流程的改进
    • 3.1 AdapterFusion
      • 3.2 AdapterDrop
        • 3.3 Compacter
        • Adapter的应用和针对应用的改进
          • 4.1 Bapna & Firat(2019)
            • 4.2 K-Adapter
              • 4.3 MAD-X
                • 4.4 其他应用
                • 类似Adapter的结构
                相关产品与服务
                NLP 服务
                NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档