A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记)

这篇具有很好参考价值的文章主要介绍了A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

(发现问题):

在基于RRAM的加速器中,自注意力层在收集输入序列信息的过程中,需要所有输入序列词的前一层结果,由于输入实例在不同的时间步上被串行处理。

因此,自注意层一直保持停滞,直到上一层计算的结束。这就是数据危险,增加了在基于RRAM加速器上处理基于bert语言模型的时延。如图所示,bert模型的基本架构

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

数据冒险存在于Q,K,V生成与内积计算之间,由于BERT模型的每个encoder层都需要进行注意力计算,因此整体时延会大大增加。

并且图4 表明注意力模块占据大量时间。所以,必须要解决数据冒险问题,才能实现BERT模型的加速。

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

解决办法:

  1. 提出解决该数据危险的框架,包含算法优化和硬件设计。
  2. 利用窗口自注意力机制,缩小注意力范围,并且提出了一种窗口搜索算法,找到最优的窗口集合。
  3. 设计了充分利用该优化算法的硬件。

窗口注意力机制

本文基于以下两点提出了窗口自注意力机制:

  1. 首先,由于注意力机制集中在与目标词相关的重要词上,因此注意力得分低的词对注意力结果的影响相对较小。因此,排除自注意力计算得分低的单词不会降低算法的准确性。
  2. 其次,自注意力机制更多地集中在目标单词附近的单词上,这些单词往往比其他单词具有更高的注意力分数。如图6所示,注意力分数高的集中在目标词附近。
  3. A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert
  4. 传统自注意力需要计算目标词与其他所有单词的相关程度,提出的窗口自注意力机制只关注目标词周围的单词,缩小了计算范围。

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

通过缩小注意力计算的范围,可以有效缓解数据危险,如图9所示。

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

在传统计算方式中,一个单词需要关注与其他单词的相关程度或者相似性;具体来说就是,w1的内积需要w1-w6的key向量;在应用了窗口注意力机制后,w1只需要w1-w2的key向量。传统方式在T7的时候才能进行内积计算,而应用窗口注意力后再T3就可以进行内积计算,缓解了数据冒险。

算法优化

但是,窗口尺寸的大小会影响计算的速度和模型的准确性,为了平衡这两个因素,文章提出贪心算法来寻找最优的窗口尺寸大小集合。

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

该算法输入是原始bert(未应用窗口自注意力机制)模型、下游任务、目标精度;最终输出一个最优窗口尺寸大小集合和微调bert模型。

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

该算法分为两个阶段:

  1. 首先,在保证模型精度的情况下,根据下游任务的不同,设定一个全局最大窗口尺寸来缩小搜索空间;
  2. 然后,采用贪心算法逐层搜索每个编码层的最优窗口尺寸。

本文将得到的微调模型在预处理阶段变成到RRAM阵列中,并且提出了支持自注意力计算的通用RRAM阵列硬件设计-ReBERT。

REBERT框架:

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

REBERT-basic

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

其中值得注意的是softmax操作是利用LUT实现的。为了防止指数运算结果溢出和LUT表过大,做了如下处理:

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

为了防止指数运算结果溢出,每一行的元素都减去当前行的最大值,这样指数运算的范围就缩小在0-1之间;

然后,防止LUT表过大,将数据分为LSB和MSB两部分,这样我们可以利用一个小的查找表和一个乘法操作来实现softmax操作。

此外,本文发现REBERT-basic未能完全发挥出窗口自注意力机制的优势,分析原因并做出如下改进。

RRAM-advanced

首先是分析原因:

与传统的自注意力不同,窗口自注意力需要为每次注意力计算提供一个新的key向量。所以在内积计算前,需要数据处理,因此会造成结构冒险。如图所示:

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

在w2的key向量生成后需要数据准备,占用了RRAM进行内积运算所需的阵列,为此W1的内积运算只能在T4进行;数据准备和内积计算都需要访问RRAM内积计算阵列,造成了结构冒险。

为了解决结构冒险,本文对key向量的生成、innner-product、weighted sum过程进行加速。加速方式如下:将应用了双阵列的结构命名为REBERT-advanced

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

首先,首先,将单输入数据实例分为两部分( MSBs / LSBs部分)。采用双阵列提高计算速度,效果如上图13c所示。

实验评估

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

根据窗口搜索算法得到的最优窗口大小集合,以及精度分析。可以看到精度控制在0-1%之间。

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

在GLUE各种任务中,与其他加速方法的比较

MobileBERT模型采用知识蒸馏,MobileBERT与BERT-base相当,但体积更小,速度更快。

DistillBERT:每隔两层transformer取其中一层的参数来作为DistillBERT的参数初始化,本质上减少了transformer的层数。

图17描述了表II中在基于ReRAM的加速器上处理BERT的各种设计配置的加速比。BERT - ASIC是在文献[ 39 ]的基础上,在ASIC加速器上对BERT进行处理,并将处理结果归一化为GPU的性能。

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

实验结果分析

速度对比

ReBERT-basic 比 GPU 提高了 22.6× 的性能,比基线提高了 3.4×。然而,由于结构性危险ReBERT-basic 中的加速没有达到从窗口自注意力中获得的理想加速。

而ReBERT-advanced采用双阵列输入,充分利用了窗口自注意力的优势,ReBERT-advanced 的执行速度平均比 GPU 快 24.6×。GLUE 数据集相对于基线/ReBERT-basic 的平均性能提升分别为 3.7×/1.8×。

对于 SQuAD 数据集,ReBERT-advanced 的加速比 GPU 高 8.5×分别比 baseline/ReBERT-basic 高 2.2×/1.9×。

能耗方面的对比

因为窗口自注意力将自注意力范围从 Nseq 减少到 2W + 2,其中 W 比 Nseq 小得多。

如图所示:首先,窗口自注意力平均减少了50%的内积计算,约占注意力计算总能耗的60%。softmax 计算也平均减少了 54%。自注意力的总计算量平均减少了37%。

普适性

A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记),论文阅读笔记,人工智能,神经网络,语言模型,bert

除了在原始的BERT模型中加速,还在其他基于 transformer 的语言模型上进行应用:(a) BERT-large 和 (b) RoBERTa-base。

BERT-large 上的 ReBERT-advanced 比基线提高了 9.5× 的性能,而 RoBERTabase 上的 ReBERT-advanced 的性能比基线提高了 7.7×。

总结

分析自注意力机制发现bert的注意力计算时延增加的原因:

存在数据冒险-解决办法:通过窗口注意力减少计算量;

贪心算法寻找最优窗口大小集合。

仍然存在结构冒险:提出双阵列提高计算速度,消除结果冒险,充分发挥窗口自注意力的优势。

提出结合了窗口注意力机制和支持注意力计算的硬件设计-REBERT。

在GLUE数据集中加速效果明显文章来源地址https://www.toymoban.com/news/detail-843230.html

到了这里,关于A Framework for Accelerating Transformer-Based Language Model on ReRAM-Based Architecture(论文笔记)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 论文阅读:CenterFormer: Center-based Transformer for 3D Object Detection

    目录 概要 Motivation 整体架构流程 技术细节 Multi-scale Center Proposal Network Multi-scale Center Transformer Decoder Multi-frame CenterFormer 小结 论文地址: [2209.05588] CenterFormer: Center-based Transformer for 3D Object Detection (arxiv.org) 代码地址: GitHub - TuSimple/centerformer: Implementation for CenterFormer: Center-base

    2024年02月07日
    浏览(44)
  • 【论文阅读】TransCAM: Transformer Attention-based CAM Refinement for WSSS

    分享一篇阅读的用于弱监督分割的论文 TransCAM: Transformer Attention-based CAM Refinement for Weakly Supervised Semantic Segmentation https://github.com/liruiwen/TransCAM 大多数现有的WSSS方法都是基于类激活映射(CAM)来生成像素级的伪标签,用于监督训练。但是基于CNN的WSSS方法只是凸出最具有区别性

    2024年02月16日
    浏览(51)
  • LGFormer:LOCAL TO GLOBAL TRANSFORMER FOR VIDEO BASED 3D HUMAN POSE ESTIMATION

    基于视频的三维人体姿态估计的局部到全局Transformer 作者:马海峰 *,陆克 * †,薛健 *,牛泽海 *,高鹏程† *            中国科学院大学工程学院,北京100049             鹏程实验室,深圳518055 来源:2022 IEEE International Conference on Multimedia and Expo (IEEE ICME) 基于Transformer的

    2024年02月09日
    浏览(46)
  • 论文阅读 (79):TransMIL: Transformer based Correlated Multiple Instance Learning for Whole Slide Image

    2021:用于WSI分类的Transformer相关多示例 ( TransMIL: Transformer based correlated multiple instance learning for whole slide image classification ) WSI–MIL方法通常基于独立同分布假设,这忽略了不同实例之间的相关性。为了处理这个问题,提出了一个称为 相关多示例 的新框架。基于该框架,部署了

    2024年02月09日
    浏览(48)
  • 论文笔记--ERNIE 2.0: A Continual Pre-Training Framework for Language Understanding

    标题:ERNIE 2.0: A Continual Pre-Training Framework for Language Understanding 作者:Yu Sun, Shuohuan Wang, Yukun Li, Shikun Feng, Hao Tian, Hua Wu, Haifeng Wang 日期:2020 期刊:AAAI   文章给出了一种新的NLP预训练模型的训练方法,并提出了ERNIE2.0(Enhanced Representation through kNowledge IntErgration)。ERNIE2.0在ERNIE

    2024年02月09日
    浏览(75)
  • 论文阅读——《Retinexformer: One-stage Retinex-based Transformer for Low-light Image Enhancement》

    本文试图从原理和代码简单介绍低照度增强领域中比较新的一篇论文——Retinexformer,其效果不错,刷新了十三大暗光增强效果榜单。 ❗ 论文名称 :Retinexformer: One-stage Retinex-based Transformer for Low-light Image Enhancement 👀 论文信息 :由清华大学联合维尔兹堡大学和苏黎世联邦理工

    2024年01月18日
    浏览(51)
  • 论文笔记:Large Language Models as Urban Residents:An LLM Agent Framework for Personal Mobility Generati

    使用LMM生成活动轨迹的开创性工作 理解活动模式(mobility pattern)——能够灵活模拟城市移动性 尽管个体活动轨迹数据由于通信技术的进步而丰富,但其实际使用往往受到隐私顾虑的限制 ——生成的数据可以提供一种可行的替代方案,提供了效用和隐私之间的平衡 之前有很

    2024年03月11日
    浏览(67)
  • Introducing Language Guidance in Prompt-based Continual Learning

    本文是LLM系列文章,针对《Introducing Language Guidance in Prompt-based Continual Learning》的翻译。 持续学习旨在学习一系列任务的单一模型,而无需访问以前任务的数据。该领域最大的挑战仍然是灾难性的遗忘:早期任务的可见类的性能损失。一些现有的方法依赖于昂贵的重放缓冲区

    2024年02月09日
    浏览(57)
  • A Survey on Large Language Model based Autonomous Agents

    本文是LLM系列的文章,针对《A Survey on Large Language Model based Autonomous Agents》的翻译。 自动代理一直是学术界的一个突出研究课题。该领域先前的研究通常集中在孤立环境中训练知识有限的智能体,这与人类的学习过程有很大差异,从而使智能体难以实现类似人类的决策。最近

    2024年02月11日
    浏览(38)
  • VL系列 Exchanging-based Multimodal Fusion with Transformer 论文阅读笔记

    写在前面   又是一个周末 教师节,祝老师们节日快乐呀。依惯例,论文读起来~   这是一篇多模态融合的文章,也算是这些年新出的一种方式了,具体还不知道啥情况,代码已开源,一试便知。 论文地址:Exchanging-based Multimodal Fusion with Transformer 代码地址:https://github.

    2024年02月05日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包