首页 > 其他分享 >魔改Transformer!9种提速又提效的模型优化方案

魔改Transformer!9种提速又提效的模型优化方案

时间:2024-07-23 11:55:02浏览次数:18  
标签:Transformer 魔改 模型 学习 简述 序列 提效 注意力

Transformer目前已经成为人工智能领域的主流模型,应用非常广泛。然而Transformer中注意力机制计算代价较高,随着序列长度的增加,这个计算量还会持续上升。

为了解决这个问题,业内出现了许多Transformer的魔改工作,以优化Transformer的运行效率。我这次就给大家分享9篇对Transformer模型进行效率优化的改进文章,以方便大家更高效地使用模型,寻找论文创新点

文章主要涉及4个方向:稀疏注意力机制、Transformer处理长文本、Transformer运行提效以及卷积Attention,原文及源码都已整理

一、稀疏注意力机制

1.1 Longformer: The Long-Document Transformer

长文档Transformer

「方法简述:」Transformer-based models处理长序列时存在困难,因为它们的自注意力操作与序列长度呈二次方关系。Longformer通过引入一个与序列长度呈线性关系的注意力机制解决了这个问题,使其能够轻松处理数千个标记或更长的文档。 Longformer在字符级语言建模方面表现优秀,并在各种下游任务上取得了最先进的结果。此外,Longformer还支持长文档生成序列到序列任务,并在arXiv摘要生成数据集上展示了其有效性。

1.2 Enhancing the Locality and Breaking the Memory Bottleneck of Transformer on Time Series Forecasting

增强局部性并打破Transformer在时间序列预测中的内存瓶颈

「方法简述:」时间序列预测是许多领域中的重要问题,包括太阳能发电厂能源输出、电力消耗和交通拥堵情况的预测。本文提出了使用Transformer来解决这种预测问题的方法。虽然初步研究表明其性能令人印象深刻,但作者发现它有两个主要缺点:局部性不敏感和内存瓶颈。为了解决这两个问题,作者提出了卷积自注意力和LogSparse Transformer,它们能够更好地处理局部上下文并降低内存成本。实验表明,这些方法在时间序列预测方面具有优势。

1.3 Adaptive Attention Span in Transformers

Transformers中的自适应注意力跨度

「方法简述:」论文提出了一种新的自注意力机制,可以学习其最优的注意力跨度。这使得我们可以显著扩展Transformer中使用的最大上下文大小,同时保持对内存占用和计算时间的掌控。作者在字符级语言建模任务上展示了该方法的有效性,在该任务中,作者使用最大8k个字符的上下文实现了在text8和enwiki8上最先进的性能

二、Transformer处理长文本

2.1 Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context

超越固定长度上下文的注意语言模型

「方法简述:」Transformers在语言建模中受到固定长度上下文的限制,作者提出了一种新的神经网络架构Transformer-XL,可以学习超过固定长度的依赖关系。它由一个段级别循环机制和一个新的位置编码方案组成,能够捕捉更长的依赖关系并解决上下文碎片化问题。该方法不仅在短序列和长序列上都取得了更好的性能,而且在评估期间比普通的Transformers快1,800+倍。

三、Transformer运行提效

3.1 REFORMER: THE EFFICIENT TRANSFORMER

高效的Transformer

「方法简述:」大型Transformer模型训练成本高,尤其是在长序列上。论文提出了两种技术来提高效率:使用局部敏感哈希替换点积注意力,将复杂度从O(L^2)降低到O(L log L);使用可逆残差层代替标准残差,允许只存储一次激活。由此产生的Reformer模型在长序列上表现相当,但更内存高效和更快。

3.2 RETHINKING ATTENTION WITH PERFORMERS

重新思考注意力机制:Performer模型

「方法简述:」论文介绍了Performers,一种Transformer架构,可以以可证明的准确性估计常规(softmax)全秩注意力Transformers,但仅使用线性空间和时间复杂度。为了近似softmax注意力核,Performers使用了一种新颖的快速注意通过正交随机特征方法(FAVOR+),并可以用于高效地建模可核化的注意力机制

3.3 Linformer: Self-Attention with Linear Complexity

具有线性复杂度的自注意力机制

「方法简述:」大型Transformer模型在自然语言处理应用中表现出色,但长序列的训练和部署成本很高。本文提出一种新自注意力机制,将复杂度从O(n^2)降低到O(n),同时保持性能不变。由此产生的Linformer比标准的Transformer更节省时间和内存。

四、卷积Attention

4.1 Conformer: Convolution-augmented Transformer for Speech Recognition

用于语音识别的卷积增强Transformer

「方法简述:」Conformer是一种结合了卷积神经网络和Transformer的模型,用于语音识别。它能够同时捕捉音频序列的局部和全局依赖关系,并实现了最先进的准确率。在LibriSpeech基准测试中,Conformer在不使用语言模型的情况下实现了2.1%/4.3%的WER,在使用外部语言模型的情况下实现了1.9%/3.9%的WER。此外,它还具有竞争力的小模型,只有10M参数。

4.2 LITE TRANSFORMER WITH LONG-SHORT RANGE ATTENTION

具有长短范围注意力的轻量级Transformer

「方法简述:」本文提出了一种高效的移动自然语言处理架构Lite Transformer,它使用长短范围注意力(LSRA)来提高性能。LSRA将一组头专门用于局部上下文建模(通过卷积),另一组头则专门用于长距离关系建模(通过注意力)。在三个语言任务上,Lite Transformer始终优于普通的Transformer。在受限资源下,Lite Transformer比Transformer在WMT’14英法翻译任务上高出1.2/1.7 BLEU分数。

读者福利:如果大家对大模型感兴趣,这套大模型学习资料一定对你有用

对于0基础小白入门:

如果你是零基础小白,想快速入门大模型是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。

包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!

标签:Transformer,魔改,模型,学习,简述,序列,提效,注意力
From: https://blog.csdn.net/aolan123/article/details/140631941

相关文章

  • 一文看懂AI的 Transformer 架构!
    1AI的转换器是啥?转换器,一种将输入序列转换或更改为输出序列的神经网络架构。它们通过学习上下文和跟踪序列组件之间的关系来做到这一点。例如,请考虑以下输入序列:“天空是什么颜色的?”转换器模型会使用内部数学表示法来识别颜色、天空和蓝色这三个词之间的相关性和关系。......
  • 快速学习一个算法,Transformer
    今天给大家介绍一个强大的算法模型,TransformerTransformer模型是由Vaswani等人在2017年提出的一种用于自然语言处理的深度学习模型,特别擅长于处理序列到序列的任务,如机器翻译、文本生成等。今天,我们主要从编码的角度来进行说明。Transformer模型架构Transformer......
  • 一文看懂AI的 Transformer 架构!
    1AI的转换器是啥?转换器,一种将输入序列转换或更改为输出序列的神经网络架构。它们通过学习上下文和跟踪序列组件之间的关系来做到这一点。例如,请考虑以下输入序列:“天空是什么颜色的?”转换器模型会使用内部数学表示法来识别颜色、天空和蓝色这三个词之间的相关性和关系。利用这......
  • Transformer 模型和Attention注意力机制学习笔记
    文章目录Transformer模型结构注意力机制ScaledDot-ProductAttention缩放点注意力机制工作流程并行机制Multi-HeadAttention多头注意力机制工作流程Embedding单词Embedding位置编码PositionalEncodingEncoderAdd&NormFeedForwardNetworkDecoderMaskedMul......
  • Hugging Face基础:简单讲解Transformer模型和结构,小白也能看懂,每个词都给你解释清楚了!
    1.Transformer是什么Transformer 是一个基于自注意力机制(Self-attentionmechanism)的神经网络架构,是由2017年的论文《AttentionisAllYouNeed》中提出的,为自然语言处理(NaturalLanguageProcessing)领域带来了新的模型架构。他是一种seq2seq模型(SequencetoSequenceMo......
  • 基于Vision Transformer的mini_ImageNet图片分类实战
    【图书推荐】《PyTorch深度学习与计算机视觉实践》-CSDN博客PyTorch计算机视觉之VisionTransformer整体结构-CSDN博客mini_ImageNet数据集简介与下载mini_ImageNet数据集节选自ImageNet数据集。ImageNet是一个非常有名的大型视觉数据集,它的建立旨在促进视觉识别研究。Imag......
  • 无法再现 Transformer 库的 ViTImageProcessor 预处理
    我正在编写一个用于预处理图像的独立代码image_processing_vit但是,我的结果与图书馆的结果不同。以下代码包含两部分:(1)不使用变压器,(2)使用变压器。我不知道我错过了什么。我已阅读代码+询问副驾驶,但它不能解决问题。请帮助我!谢谢。importcv2importnump......
  • Transformer多头自注意力及掩码机制详解
    系列文章目录文章目录系列文章目录@[TOC](文章目录)前言一、self-attention1.注意力机制2.自注意力机制3.代码实现二、掩码机制1.原理介绍2.代码实现三、多头注意力模块1.原理介绍2.代码实现前言在本文中我们重点介绍Transformer中的掩码机制及多头自注......
  • 如何在 8 个 GPU 上并行化 Transformer 模型进行机器翻译?
    我正在尝试使用变压器模型以几乎与原始文章相同的方式执行机器翻译。虽然该模型运行得相当好,但它需要更多的计算资源。为了解决这个问题,我在一台具有8个GPU处理器的计算机上运行了该模型,但我缺乏这方面的经验。我尝试对并行化进行必要的调整:transformer=nn.DataParallel......
  • transformer model architecture
    transformermodelarchitecturehttps://www.datacamp.com/tutorial/how-transformers-work 动手写https://www.datacamp.com/tutorial/building-a-transformer-with-py-torch Attentionhttps://www.cnblogs.com/jins-note/p/13056604.html人类的视觉注意力从注意力......