Vision Transformer (ViT) has emerged as a competitive alternative to convolutional neural networks for various computer vision applications. Specifically, ViT multi-head attention layers make it possible to embed information globally across the overall image. Nevertheless, computing and storing such attention matrices incurs a quadratic cost dependency on the number of patches, limiting its achievable efficiency and scalability and prohibiting more extensive real-world ViT applications on resource-constrained devices. Sparse attention has been shown to be a promising direction for improving hardware acceleration efficiency for NLP models. However, a systematic counterpart approach is still missing for accelerating ViT models. To close the above gap, we propose a first-of-its-kind algorithm-hardware codesigned framework, dubbed ViTALiTy, for boosting the inference efficiency of ViTs. Unlike sparsity-based Transformer accelerators for NLP, ViTALiTy unifies both low-rank and sparse components of the attention in ViTs. At the algorithm level, we approximate the dot-product softmax operation via first-order Taylor attention with row-mean centering as the low-rank component to linearize the cost of attention blocks and further boost the accuracy by incorporating a sparsity-based regularization. At the hardware level, we develop a dedicated accelerator to better leverage the resulting workload and pipeline from ViTALiTy's linear Taylor attention which requires the execution of only the low-rank component, to further boost the hardware efficiency. Extensive experiments and ablation studies validate that ViTALiTy offers boosted end-to-end efficiency (e.g., $3\times$ faster and $3\times$ energy-efficient) under comparable accuracy, with respect to the state-of-the-art solution.
translated by 谷歌翻译
Vision Transformers (ViTs) have achieved state-of-the-art performance on various vision tasks. However, ViTs' self-attention module is still arguably a major bottleneck, limiting their achievable hardware efficiency. Meanwhile, existing accelerators dedicated to NLP Transformers are not optimal for ViTs. This is because there is a large difference between ViTs and NLP Transformers: ViTs have a relatively fixed number of input tokens, whose attention maps can be pruned by up to 90% even with fixed sparse patterns; while NLP Transformers need to handle input sequences of varying numbers of tokens and rely on on-the-fly predictions of dynamic sparse attention patterns for each input to achieve a decent sparsity (e.g., >=50%). To this end, we propose a dedicated algorithm and accelerator co-design framework dubbed ViTCoD for accelerating ViTs. Specifically, on the algorithm level, ViTCoD prunes and polarizes the attention maps to have either denser or sparser fixed patterns for regularizing two levels of workloads without hurting the accuracy, largely reducing the attention computations while leaving room for alleviating the remaining dominant data movements; on top of that, we further integrate a lightweight and learnable auto-encoder module to enable trading the dominant high-cost data movements for lower-cost computations. On the hardware level, we develop a dedicated accelerator to simultaneously coordinate the enforced denser/sparser workloads and encoder/decoder engines for boosted hardware utilization. Extensive experiments and ablation studies validate that ViTCoD largely reduces the dominant data movement costs, achieving speedups of up to 235.3x, 142.9x, 86.0x, 10.1x, and 6.8x over general computing platforms CPUs, EdgeGPUs, GPUs, and prior-art Transformer accelerators SpAtten and Sanger under an attention sparsity of 90%, respectively.
translated by 谷歌翻译
在深度学习中,变压器一直是必不可少的主食。但是,对于现实生活中的应用程序,由于模型的巨大参数和操作,部署有效的变压器非常具有挑战性。为了减轻这种负担,利用稀疏是加速变压器的有效方法。新出现的Ampere GPU利用2:4的稀疏模式来实现模型加速度,而在部署模型时,它几乎无法满足各种算法和硬件约束。相比之下,我们提出了一个算法 - 铁软件合作的框架,以灵活有效地加速变压器,通过使用一般的N:M稀疏模式。 (1)从算法的角度来看,我们提出了一种稀疏性遗传机制以及一种遗传的动态修剪(IDP)方法,以迅速获得一系列N:M稀疏候选变压器。进一步提出了模型压缩方案,以显着减少部署的存储需求。 (2)从硬件的角度来看,我们提出了一种灵活,有效的硬件体系结构,即STA,以在部署N:M稀疏变压器时达到显着加速。 STA不仅具有具有较高计算效率的稀疏密度和致密矩阵乘法的计算引擎,而且还具有可扩展的软模块,从而消除了中级外芯片外数据通信的延迟。实验结果表明,与其他使用IDP生成的其他方法相比,n:m稀疏变压器的准确性平均提高了6.7%。此外,与Intel I9-9900X和NVIDIA RTX 2080 TI相比,STA可以达到14.47倍和11.33倍的速度,并且比最先进的基于FPGA的加速器对变形金刚的最先进的推断速度可以快2.00-19.47倍。
translated by 谷歌翻译
变压器的注意机制有效地从输入序列中提取相关信息。然而,自我注意力的二次复杂性W.R.T序列长度会产生沉重的计算和记忆负担,尤其是对于长序列的任务。现有的加速器在这些任务中面临性能退化。为此,我们建议Salo为长序列提供杂交稀疏注意机制。Salo包含一个数据调度程序,将混合稀疏注意模式映射到硬件和空间加速器上,以执行有效的注意力计算。我们表明,与GPU和CPU实施相比,Salo平均达到17.66 X和89.33倍的速度,即典型的工作负载,即Longformer和VIL。
translated by 谷歌翻译
基于注意力的神经网络在许多AI任务中都普遍存在。尽管其出色的算法性能,但注意力机制和前馈网络(FFN)的使用仍需要过多的计算和内存资源,这通常会损害其硬件性能。尽管已经引入了各种稀疏变体,但大多数方法仅着重于缓解算法级别上的二次注意力缩放,而无需明确考虑将其方法映射到真实硬件设计上的效率。此外,大多数努力仅专注于注意机制或FFN,但没有共同优化这两个部分,导致当前的大多数设计在处理不同的输入长度时缺乏可扩展性。本文从硬件角度系统地考虑了不同变体中的稀疏模式。在算法级别上,我们提出了Fabnet,这是一种适合硬件的变体,它采用统一的蝴蝶稀疏模式来近似关注机制和FFN。在硬件级别上,提出了一种新颖的适应性蝴蝶加速器,可以在运行时通过专用硬件控件配置,以使用单个统一的硬件引擎加速不同的蝴蝶层。在远程 - ARENA数据集上,FabNet达到了与香草变压器相同的精度,同时将计算量减少10到66次,参数数量为2至22次。通过共同优化算法和硬件,我们的基于FPGA的蝴蝶加速器在归一化到同一计算预算的最新加速器上达到了14.2至23.2倍的速度。与Raspberry Pi 4和Jetson Nano上优化的CPU和GPU设计相比,我们的系统在相同的功率预算下的最大273.8和15.1倍。
translated by 谷歌翻译
作为其核心计算,一种自我发挥的机制可以在整个输入序列上分配成对相关性。尽管表现良好,但计算成对相关性的成本高昂。尽管最近的工作表明了注意力分数低的元素的运行时间修剪的好处,但自我发挥机制的二次复杂性及其芯片内存能力的需求被忽略了。这项工作通过构建一个称为Sprint的加速器来解决这些约束,该加速器利用RERAM横杆阵列的固有并行性以近似方式计算注意力分数。我们的设计使用RERAM内的轻质模拟阈值电路来降低注意力评分,从而使Sprint只能获取一小部分相关数据到芯片内存。为了减轻模型准确性的潜在负面影响,Sprint重新计算数字中少数获取数据的注意力评分。相关注意分数的组合内修剪和片上重新计算可以将Sprint转化为仅线性的二次复杂性。此外,我们即使修剪后,我们也可以识别并利用相邻的注意操作之间的动态空间位置,从而消除了昂贵但冗余的数据获取。我们在各种最新的变压器模型上评估了我们提出的技术。平均而言,当使用总16KB芯片内存时,Sprint会产生7.5倍的速度和19.6倍的能量,而实际上与基线模型的等值级相当(平均为0.36%的降级)。
translated by 谷歌翻译
深度神经网络(DNN)的记录断裂性能具有沉重的参数化,导致外部动态随机存取存储器(DRAM)进行存储。 DRAM访问的禁用能量使得在资源受限的设备上部署DNN是不普遍的,呼叫最小化重量和数据移动以提高能量效率。我们呈现SmartDeal(SD),算法框架,以进行更高成本的存储器存储/访问的较低成本计算,以便在推理和培训中积极提高存储和能量效率。 SD的核心是一种具有结构约束的新型重量分解,精心制作以释放硬件效率潜力。具体地,我们将每个重量张量分解为小基矩阵的乘积以及大的结构稀疏系数矩阵,其非零被量化为-2的功率。由此产生的稀疏和量化的DNN致力于为数据移动和重量存储而大大降低的能量,因为由于稀疏的比特 - 操作和成本良好的计算,恢复原始权重的最小开销。除了推理之外,我们采取了另一次飞跃来拥抱节能培训,引入创新技术,以解决培训时出现的独特障碍,同时保留SD结构。我们还设计专用硬件加速器,充分利用SD结构来提高实际能源效率和延迟。我们在不同的设置中对多个任务,模型和数据集进行实验。结果表明:1)应用于推理,SD可实现高达2.44倍的能效,通过实际硬件实现评估; 2)应用于培训,储存能量降低10.56倍,减少了10.56倍和4.48倍,与最先进的训练基线相比,可忽略的准确性损失。我们的源代码在线提供。
translated by 谷歌翻译
图表卷积网络(GCNS)已成为最先进的图形学习模型。但是,它可以令人难以置于大图数据集的推断GCNS,这会将其应用于大型实际图表并阻碍更深层更复杂的GCN图形的探讨。这是因为真实世界图可能非常大而稀疏。此外,GCN的节点度倾向于遵循幂律分布,因此具有高度不规则的邻接矩阵,导致数据处理和移动中的禁止低效率,从而显着地限制了可实现的GCN加速效率。为此,本文提出了一种GCN算法和加速器协同设计框架被称为GCOD,其在很大程度上可以缓解上述GCN不规则性并提高GCNS推理效率。具体地,在算法级别上,GCOD集成了分割和征服GCN训练策略,该训练策略将图形偏离在本地邻域中的密集或稀疏,而不会影响模型精度,从而导致(主要)的图形邻接矩阵仅仅是两个级别的工作量并享受大部分增强的规律性,从而轻松加速。在硬件水平上,我们进一步开发了一个具有分离发动机的专用双子加速器,以处理每个上述密集和稀疏工作负载,进一步提高整体利用率和加速效率。广泛的实验和消融研究验证了我们的GCOD始终如一地减少了与CPU,GPU和现有技术GCN加速器相比的15286倍,294倍,7.8倍和2.5倍的加速,包括HYGCN和AWB -GCN分别在保持甚至提高任务准确性的同时。
translated by 谷歌翻译
注意机制为各种任务形成最先进的机器学习模型的骨干。然而,在深神经网络(DNN)加速器上部署它们,特别是在长序列下挑战,因为这项工作识别。这是由于展示层数的运营商,在记忆占地面积中表现出有限的再利用机会和二次生长,导致严重的记忆界限。为了解决这个问题,我们介绍了一个新的注意力定制数据流,被称为扁平,它识别注意层内的融合机会,并实现片上内存感知交错执行和平铺机制。通过有效利用高带宽,低容量的片上缓冲器,平坦增加了有效的内存带宽,从而实现了更好的运行时间和计算资源利用率。在我们的评估中,扁平达到1.94倍和1.76倍的加速度和49%和42%的能量减少与最先进的边缘和云加速器的基线执行相比。
translated by 谷歌翻译
最近,视觉变压器变得非常流行。但是,将它们部署在许多应用程序中的计算昂贵部分是由于注意力块中的软磁层。我们引入了一个简单但有效的,无软的注意力块Sima,它使用简单的$ \ ell_1 $ -norm而不是使用SoftMax层,将查询和密钥矩阵归一化。然后,SIMA中的注意力块是三个矩阵的简单乘法,因此SIMA可以在测试时间动态更改计算的顺序,以在令牌数量或通道数量上实现线性计算。我们从经验上表明,SIMA应用于变形金刚,DEIT,XCIT和CVT的三种SOTA变体,与SOTA模型相比,SIMA可在不需要SoftMax层的情况下达到PAR准确性。有趣的是,将SIMA从多头更改为单头只会对精度产生很小的影响,这进一步简化了注意力障碍。该代码可在此处找到:$ \ href {https://github.com/ucdvision/sima} {\ text {this https url}} $
translated by 谷歌翻译
在本文中,我们通过利用视觉数据中的空间稀疏性提出了一种新的模型加速方法。我们观察到,视觉变压器中的最终预测仅基于最有用的令牌的子集,这足以使图像识别。基于此观察,我们提出了一个动态的令牌稀疏框架,以根据加速视觉变压器的输入逐渐和动态地修剪冗余令牌。具体而言,我们设计了一个轻量级预测模块,以估计给定当前功能的每个令牌的重要性得分。该模块被添加到不同的层中以层次修剪冗余令牌。尽管该框架的启发是我们观察到视觉变压器中稀疏注意力的启发,但我们发现自适应和不对称计算的想法可能是加速各种体系结构的一般解决方案。我们将我们的方法扩展到包括CNN和分层视觉变压器在内的层次模型,以及更复杂的密集预测任务,这些任务需要通过制定更通用的动态空间稀疏框架,并具有渐进性的稀疏性和非对称性计算,用于不同空间位置。通过将轻质快速路径应用于少量的特征,并使用更具表现力的慢速路径到更重要的位置,我们可以维护特征地图的结构,同时大大减少整体计算。广泛的实验证明了我们框架对各种现代体系结构和不同视觉识别任务的有效性。我们的结果清楚地表明,动态空间稀疏为模型加速提供了一个新的,更有效的维度。代码可从https://github.com/raoyongming/dynamicvit获得
translated by 谷歌翻译
视觉变压器(VIT)用作强大的视觉模型。与卷积神经网络不同,在前几年主导视觉研究,视觉变压器享有捕获数据中的远程依赖性的能力。尽管如此,任何变压器架构的组成部分,自我关注机制都存在高延迟和低效的内存利用,使其不太适合高分辨率输入图像。为了缓解这些缺点,分层视觉模型在非交错的窗口上局部使用自我关注。这种放松会降低输入尺寸的复杂性;但是,它限制了横窗相互作用,损害了模型性能。在本文中,我们提出了一种新的班次不变的本地注意层,称为查询和参加(QNA),其以重叠的方式聚集在本地输入,非常类似于卷积。 QNA背后的关键想法是介绍学习的查询,这允许快速高效地实现。我们通过将其纳入分层视觉变压器模型来验证我们的层的有效性。我们展示了速度和内存复杂性的改进,同时实现了与最先进的模型的可比准确性。最后,我们的图层尺寸尤其良好,窗口大小,需要高于X10的内存,而不是比现有方法更快。
translated by 谷歌翻译
视觉变压器(VIT)正在出现,并且在计算机视觉任务中的准确性显着提高。但是,它们的复杂架构和巨大的计算/存储需求对新硬件加速器设计方法施加了紧迫的需求。这项工作提出了基于提议的混合速度量化的FPGA感知自动VIT加速框架。据我们所知,这是探索模型量化的第一个基于FPGA的VIT加速框架。与最先进的VIT量化工作(仅无硬件加速的算法方法)相比,我们的量化在相同的位宽度下可实现0.47%至1.36%的TOP-1精度。与32位浮点基线FPGA加速器相比,我们的加速器在框架速率上的提高约为5.6倍(即56.8 fps vs. 10.0 fps),对于DeitBase的ImagEnet数据集,精度下降了0.71%。
translated by 谷歌翻译
变压器被认为是自2018年以来最重要的深度学习模型之一,部分原因是它建立了最先进的记录(SOTA)记录,并有可能取代现有的深神经网络(DNNS)。尽管取得了显着的胜利,但变压器模型的延长周转时间是公认的障碍。序列长度的多样性施加了其他计算开销,其中需要将输入零填充到批处理中的最大句子长度,以容纳并行计算平台。本文针对现场可编程的门阵列(FPGA),并提出了一个连贯的序列长度自适应算法 - 硬件与变压器加速度的共同设计。特别是,我们开发了一个适合硬件的稀疏注意操作员和长度意识的硬件资源调度算法。提出的稀疏注意操作员将基于注意力的模型的复杂性降低到线性复杂性,并减轻片外记忆流量。提出的长度感知资源硬件调度算法动态分配了硬件资源以填充管道插槽并消除了NLP任务的气泡。实验表明,与CPU和GPU实施相比,我们的设计准确度损失很小,并且具有80.2 $ \ times $和2.6 $ \ times $速度,并且比先进的GPU加速器高4 $ \ times $ $ $ \ times $通过Cublas Gemm优化。
translated by 谷歌翻译
Deep neural networks (DNNs) are currently widely used for many artificial intelligence (AI) applications including computer vision, speech recognition, and robotics. While DNNs deliver state-of-the-art accuracy on many AI tasks, it comes at the cost of high computational complexity. Accordingly, techniques that enable efficient processing of DNNs to improve energy efficiency and throughput without sacrificing application accuracy or increasing hardware cost are critical to the wide deployment of DNNs in AI systems.This article aims to provide a comprehensive tutorial and survey about the recent advances towards the goal of enabling efficient processing of DNNs. Specifically, it will provide an overview of DNNs, discuss various hardware platforms and architectures that support DNNs, and highlight key trends in reducing the computation cost of DNNs either solely via hardware design changes or via joint hardware design and DNN algorithm changes. It will also summarize various development resources that enable researchers and practitioners to quickly get started in this field, and highlight important benchmarking metrics and design considerations that should be used for evaluating the rapidly growing number of DNN hardware designs, optionally including algorithmic co-designs, being proposed in academia and industry.The reader will take away the following concepts from this article: understand the key design considerations for DNNs; be able to evaluate different DNN hardware implementations with benchmarks and comparison metrics; understand the trade-offs between various hardware architectures and platforms; be able to evaluate the utility of various DNN design techniques for efficient processing; and understand recent implementation trends and opportunities.
translated by 谷歌翻译
最近,视觉变压器(VIT)在计算机视野中连续建立了新的里程碑,而高计算和内存成本使其在工业生产中的传播困难。修剪是一种用于硬件效率的传统模型压缩范例,已广泛应用于各种DNN结构。尽管如此,它含糊不清,如何在vit结构上进行独家修剪。考虑三个关键点:结构特征,VITS的内部数据模式和相关边缘设备部署,我们利用输入令牌稀疏性并提出了一种计算感知软修剪框架,可以在扁平的vanilla变压器上设置。和CNN型结构,例如基于池的Vit(坑)。更具体地说,我们设计了一种基于动态关注的多头令牌选择器,它是一个轻量级模块,用于自适应实例 - 明智令牌选择。我们进一步引入了一种软修剪技术,它将选择器模块生成的较少的信息令牌集成到将参与后续计算的包令牌,而不是完全丢弃。我们的框架通过我们所提出的计算感知培训策略,我们通过特定边缘设备的准确性和计算限制之间的权衡。实验结果表明,我们的框架显着降低了VIT的计算成本,同时在图像分类上保持了可比性。此外,我们的框架可以保证所识别的模型,以满足移动设备和FPGA的资源规范,甚至在移动平台上实现DEIT-T的实时执行。例如,我们的方法在移动设备上减少了DEIT-T至26毫秒的延迟(26%$ \ SIM 41%的41%),在移动设备上,在0.25%$ \ sim $ 4%的ImageNet上的前1个精度高出4%。我们的代码即将发布。
translated by 谷歌翻译
变压器是一个变革性框架,可以对顺序数据进行建模,并在广泛的任务上取得了出色的性能,但具有高计算和能源成本。为了提高其效率,一个受欢迎的选择是通过二进制化压缩模型,将浮点值限制为二进制值,以节省资源消耗,这是由于廉价的钻头操作而大大减少了资源。但是,现有的二进制方法仅旨在最大程度地统计地减少输入分布的信息损失,同时忽略了注意机制核心的成对相似性建模。为此,我们提出了一种新的二进制范式,通过二维软式散发范式通过二维的散布量表(称为ecoformer)将原始查询和钥匙映射到锤子空间中的低维二进制代码中。学会了内核化的哈希函数,以以自我监督的方式从注意图中提取的基础真相相似性关系匹配。基于二进制代码的内部乘积与锤距距离以及矩阵乘法的关联性质之间的等效性,我们可以通过将其表示为二进制代码的点产量来近似线性复杂性中的注意力。此外,查询和钥匙的紧凑型二进制表示使我们能够用简单的积累来代替大多数昂贵的多重收益操作,以节省边缘设备上的片上能量足迹。关于视觉和语言任务的广泛实验表明,生态学家始终如一地达到与标准专注的可比性,同时消耗了更少的资源。例如,与标准注意相比,基于PVTV2-B0和Imagenet-1K,EcoFormer可实现73%的能量足迹降低,性能下降仅为0.33%。代码可从https://github.com/ziplab/ecoformer获得。
translated by 谷歌翻译
尽管图像变形金刚与计算机视觉任务中的卷积神经网络显示出竞争性结果,但缺乏诸如区域的电感偏见仍然在模型效率方面构成问题,尤其是对于嵌入式应用程序而言。在这项工作中,我们通过引入注意力面具以将空间位置纳入自我发挥作用来解决这个问题。局部依赖性有效地捕获了掩盖的注意力头,以及由未掩盖的注意力头部捕获的全球依赖性。随着蒙版注意力图像变压器 - MAIT,与CAIT相比,TOP -1的准确性提高了1.7%,与SWIN相比,吞吐量更少,吞吐量提高了1.5倍。使用注意力面罩编码局部性是模型的不可知论,因此它适用于整体,分层或其他新型变压器体系结构。
translated by 谷歌翻译
本文探讨了从视觉变压器查找最佳子模型的可行性,并引入了纯Vision变压器减肥(VIT-SLIM)框架,可以在跨多个维度从原始模型的端到端搜索这样的子结构,包括输入令牌,MHSA和MLP模块,具有最先进的性能。我们的方法基于学习和统一的L1稀疏限制,具有预定的因素,以反映不同维度的连续搜索空间中的全局重要性。通过单次训练方案,搜索过程非常有效。例如,在DeIT-S中,VIT-SLIM仅需要〜43 GPU小时进行搜索过程,并且搜索结构具有灵活的不同模块中的多维尺寸。然后,根据运行设备上的精度折叠折衷的要求采用预算阈值,并执行重新训练过程以获得最终模型。广泛的实验表明,我们的耐比可以压缩高达40%的参数和40%的视觉变压器上的40%拖鞋,同时在Imagenet上提高了〜0.6%的精度。我们还展示了我们搜索模型在几个下游数据集中的优势。我们的源代码将公开提供。
translated by 谷歌翻译
利用稀疏性是加速在移动设备上的量化卷积神经网络(CNN)推断的关键技术。现有稀疏的CNN加速器主要利用无结构性稀疏性并实现显着的加速。然而,由于无界,很大程度上不可预测的稀疏模式,利用非结构化稀疏性需要复杂的硬件设计,具有显着的能量和面积开销,这对能量和区域效率至关重要的移动/ IOT推理场景特别有害。我们建议利用结构化的稀疏性,更具体地,更密集地绑定块(DBB)稀疏性,用于重量和激活。 DBB块张于每个块的最大非零数。因此,DBB暴露静态可预测的稀疏模式,使瘦稀疏性利用硬件能够。我们提出了新的硬件基元,以分别为(静态)权重和(动态)激活的DBB稀疏性,具有非常低的开销。建立在基元的顶部,我们描述了一种基于收缩阵列的CNN加速器的S2TA,可利用联合重量和激活DBB稀疏性和传统的收缩系统阵列上不可用的数据重用的新维度。与具有零值时钟门控的完全阵列的强基线相比,16NM中的S2TA达到超过2倍的加速和能量减少,超过五个流行的CNN基准。与近期的非收缩稀疏加速器相比,Eyeriss V2(65nm)和Sparten(45nm),S2TA在65nm中使用约2.2倍和3.1倍的每次推断的能量较少。
translated by 谷歌翻译