ICLR2022顶会论文分享-PoNet:使用多粒度Pooling结构替代attention的网络

简介: 近年来,在机器学习领域Transformer模型已成为最先进的(SOTA) 序列建模模型,包括在自然语言处理 (NLP)、计算机视觉、语音处理、基因组数据等都有着广泛的应用。

image.png

近年来,在机器学习领域Transformer模型已成为最先进的(SOTA) 序列建模模型,包括在自然语言处理 (NLP)、计算机视觉、语音处理、基因组数据等都有着广泛的应用。

Transformer 成功的关键原因在于它的自我注意(self-attention)机制,计算输入表征的每个位置之间的点积。Transformer被证明在学习上下文表征方面非常有效,它成为最主要的主干模型,例如 BERT和 RoBERTa。这些预训练语言模型展示了强大的迁移学习能力,并在广泛NLP任务中实现了 SOTA。

然而,由于Transformer模型中的self-attention机制相对于句子长度的复杂度是二次的(O(N^2)),因此在计算速度和显存空间方面都制约了它在长序列中的应用。我们提出了一种具有线性复杂度 (O(N)) 的计算模型 PoNet ,使用 pooling 网络替代 self-attention 机制对句子词汇进行混合,从而捕捉上下文信息。

实验表明,PoNet 在长文本测试 Long Range Arena (LRA) 榜[1] 上在准确率上比 Transformer 高 2.28 个点,在GPU上运行速度是Transformer的 9 倍,显存占用只有 1/10。此外,实验也展示了 PoNet 的迁移学习能力,PoNet-Base 在 GLUE 基准上达到了 BERT-Base 的 95.7% 的准确性。

|| 模型

受到用于视觉任务的外部注意EA[2]的启发,我们将其简化为 多层感知器 softmax,并观察到 softmax 通过分母项将序列信息融入到 token 中提供了上下文建模能力。然而,softmax 涉及到指数的计算,这仍然是很慢的。因此,我们考虑使用池化法作为替代方法,以显著降低的复杂度来捕捉语境信息。

模型主要由三个不同粒度的 pooling 组成,一个全局的pooling模块(GA),分段的segment max-pooling模块(SMP),和局部的max-pooling模块(LMP),对应捕捉不同粒度的序列信息:

在第一阶段,GA沿着序列长度进行平均得到句子的全局表征g。为了加强对全局信息的捕捉,GA在第二阶段对g和输入训练计算cross-attention。由于g的长度为1,因此总的计算复杂度仍为O(N)。

 SMP按每个分段求取最大值,以捕获中等颗粒度的信息。

 LMP沿着序列长度的方向计算滑动窗口max-pooling。

 然后通过池化融合(PF)将这些池化特征聚合起来。由于GA的特征在整个token序列是共享的,SMP的特征在segment内部也是共享的,直接将这些特征加到原始token上会使得token趋同(向量加法),而这种token表征同质化的影响将会降低诸如句子对分类任务的性能。因此,我们在PF层将原始的token于对应的GA,SMP特征计算元素乘法得到新的特征,使得不同的token对应了不同的特征。

image.png

|| 实验结果

长序列任务

Long Range Arena(LRA) 是用来评估捕捉长距离依赖关系的基准测试。在LRA上,PoNet取得了比Transformer更好的分数。

image.png

在速度和显存方面,仅次于FNet[3],显著优于Transformer。

image.png

迁移学习

我们用大规模语料库对PoNet进行预训练,然后测试它在下游任务上的性能。下图是预训练的  MLM[4] 和 SSO[5] 两个子任务的训练曲线,可以看到,我们的模型在 MLM 上略微弱于 BERT ,在 SSO 上与 BERT 还有一定的差距,两个任务上都明显要优于 FNet 。

image.png

GLUE

PoNet取得了76.80的AVG分数,达到了 BERT 在 GLUE 上的准确率(80.21)的95.7%,相对来说比 FNet 要好4.5%。这些性能比较与图2中显示的预训练准确率一致。

image.png

长文本任务

我们还评估了预训练的 PoNet 在四个长文本分类数据集上的性能。从表4可以看出,PoNet-Base 在 HND 和 Arxiv 上优于 BERT-Base,在 IMDb 和 Yelp-5 上的F1分数达到了 BERT-Base 的99%。

image.png

消融分析

下面的消融实验也证明了每个组件的重要性。同时与 L_MN(MLM+NSP),L_OM(MLM) 也说明了预训练任务使用 MLM+SSO 的必要性。

image.png

|| 总结

我们提出了一个使用多粒度的 Pooling 结构来替代 attention 的网络(PoNet),它可以捕捉到不同层次的上下文信息,让序列的 token 之间能够得到有效的交互。实验表明,PoNet 既实现了有竞争力的长距离依赖性建模能力,又实现了强大的迁移学习能力,而且具有线性的时间和显存复杂度。

|| Future Work

未来的工作包括进一步优化模型结构和预训练,以及将 PoNet 应用于包括生成任务在内的更广泛的任务。我们希望PoNet模型可以对探索更高效的序列建模模型提供一些启发。

参考资料:

[1] Yi Tay, Mostafa Dehghani, Samira Abnar, Yikang Shen, Dara Bahri, Philip Pham, Jinfeng Rao, Liu Yang, Sebastian Ruder, and Donald Metzler. Long Range Arena : A benchmark for efficient transformers. ICLR 2021. URL

https://openreview.net/forum?id=qVyeW-grC2k.

[2] Meng-Hao Guo, Zheng-Ning Liu, Tai-Jiang Mu, and Shi-Min Hu. Beyond self-attention: External attention using two linear layers for visual tasks. CoRR, abs/2105.02358, 2021. URL

https://arxiv.org/abs/2105.02358.

[3] James Lee-Thorp, Joshua Ainslie, Ilya Eckstein, and Santiago Ontanon. FNet: mixing tokens with fourier transforms. CoRR, abs/2105.03824, 2021. URL

https://arxiv.org/abs/2105.03824.

[4] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: pre-training of deep bidirectional transformers for language understanding. NAACL-HLT 2019. URL

https://doi.org/10.18653/v1/n19-1423.

[5] Wei Wang, Bin Bi, Ming Yan, Chen Wu, Jiangnan Xia, Zuyi Bao, Liwei Peng, and Luo Si. StructBERT: incorporating language structures into pre-training for deep language understanding. ICLR 2020. URL

https://openreview.net/forum?id=BJgQ4lSFPH.

论文地址:

https://openreview.net/forum?id=9jInD9JjicF

https://arxiv.org/abs/2110.02442

代码已在GitHub上开源:

https://github.com/lxchtan/PoNet

相关文章
|
2月前
|
机器学习/深度学习 人工智能
类人神经网络再进一步!DeepMind最新50页论文提出AligNet框架:用层次化视觉概念对齐人类
【10月更文挑战第18天】这篇论文提出了一种名为AligNet的框架,旨在通过将人类知识注入神经网络来解决其与人类认知的不匹配问题。AligNet通过训练教师模型模仿人类判断,并将人类化的结构和知识转移至预训练的视觉模型中,从而提高模型在多种任务上的泛化能力和稳健性。实验结果表明,人类对齐的模型在相似性任务和出分布情况下表现更佳。
71 3
|
25天前
|
机器学习/深度学习 自然语言处理 语音技术
Python在深度学习领域的应用,重点讲解了神经网络的基础概念、基本结构、训练过程及优化技巧
本文介绍了Python在深度学习领域的应用,重点讲解了神经网络的基础概念、基本结构、训练过程及优化技巧,并通过TensorFlow和PyTorch等库展示了实现神经网络的具体示例,涵盖图像识别、语音识别等多个应用场景。
48 8
|
2月前
|
机器学习/深度学习 Web App开发 人工智能
轻量级网络论文精度笔(一):《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》
《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》这篇论文提出了一种基于YOLOv3-Tiny的轻量级目标检测模型Micro-YOLO,通过渐进式通道剪枝和轻量级卷积层,显著减少了参数数量和计算成本,同时保持了较高的检测性能。
43 2
轻量级网络论文精度笔(一):《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》
|
2月前
|
机器学习/深度学习 编解码 算法
轻量级网络论文精度笔记(三):《Searching for MobileNetV3》
MobileNetV3是谷歌为移动设备优化的神经网络模型,通过神经架构搜索和新设计计算块提升效率和精度。它引入了h-swish激活函数和高效的分割解码器LR-ASPP,实现了移动端分类、检测和分割的最新SOTA成果。大模型在ImageNet分类上比MobileNetV2更准确,延迟降低20%;小模型准确度提升,延迟相当。
75 1
轻量级网络论文精度笔记(三):《Searching for MobileNetV3》
|
2月前
|
机器学习/深度学习 计算机视觉 网络架构
【YOLO11改进 - C3k2融合】C3k2融合YOLO-MS的MSBlock : 分层特征融合策略,轻量化网络结构
【YOLO11改进 - C3k2融合】C3k2融合YOLO-MS的MSBlock : 分层特征融合策略,轻量化网络结构
|
2月前
|
编解码 人工智能 文件存储
轻量级网络论文精度笔记(二):《YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object ..》
YOLOv7是一种新的实时目标检测器,通过引入可训练的免费技术包和优化的网络架构,显著提高了检测精度,同时减少了参数和计算量。该研究还提出了新的模型重参数化和标签分配策略,有效提升了模型性能。实验结果显示,YOLOv7在速度和准确性上超越了其他目标检测器。
54 0
轻量级网络论文精度笔记(二):《YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object ..》
|
2月前
|
机器学习/深度学习 算法
神经网络的结构与功能
神经网络是一种广泛应用于机器学习和深度学习的模型,旨在模拟人类大脑的信息处理方式。它们由多层不同类型的节点或“神经元”组成,每层都有特定的功能和责任。
77 0
|
3月前
|
编解码 人工智能 文件存储
卷积神经网络架构:EfficientNet结构的特点
EfficientNet是一种高效的卷积神经网络架构,它通过系统化的方法来提升模型的性能和效率。
73 1
|
5天前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
42 17
|
16天前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将介绍网络安全的重要性,分析常见的网络安全漏洞及其危害,探讨加密技术在保障网络安全中的作用,并强调提高安全意识的必要性。通过本文的学习,读者将了解网络安全的基本概念和应对策略,提升个人和组织的网络安全防护能力。
下一篇
DataWorks