背景

Transformer自2017年的《Attention is All you Need》提出以来,成为通用高效的特征提取器。虽然其在NLP/TTS/ASR/CV等多个领域表现优异,但在推理部署阶段,其计算性能却存在巨大挑战,以BERT为原型的多层Transformer模型,其性能难以满足在线业务对低延迟和高吞吐的要求,以BERT-BASE为例,超过90%的计算时间消耗在12层Tranformer的前向计算上。

介绍

Faster Transformer是一个BERT Transformer单层前向计算的高效实现。底层由CUDA和cuBLAS实现,支持FP16和FP32两种计算模式,其中FP16可以充分利用Volta和Turing架构GPU上的Tensor Core计算单元。
Faster Transformer共接收4个输入参数,首先是attention head的数量以及每个head的维度。这两个参数是决定Transformer网络结构的关键参数。其余两个参数是batch size和句子最大长度。

Faster Transformer提供了Tensorflow OP, C++ API和TensorRT Plugin三种接口。

https://github.com/NVIDIA/FasterTransformer

Faster Transformer相关推荐

  1. NVIDIA BERT推理解决方案Faster Transformer开源了!

    (本文作者:NVIDIA GPU计算专家团队,贾晓莹) Faster Transformer是一个基于CUDA和cuBLAS的Transformer Encoder前向计算实现,其优越的性能将助力于多 ...

  2. 浅谈BERT/Transformer模型的压缩与优化加速

    ©作者 | 姚益武 单位 | 阿里巴巴集团 研究方向 | AI算法与工程架构 前言 BERT/Transformer 结构及其变体,已成为自然语言处理(NLP).语音识别 (ASR)等领域的主流序列建 ...

  3. Poor Man's BERT: 更小更快的Transformer模型

    文 | sliderSun 源 | 知乎 NLP模型的大小不断增加,随之而来的是可用性降低,TinyBERT,MobileBERT,和DistilBERT都提出了一个独特的知识蒸馏框架,其共同目标是在 ...

  4. Bert/Transformer模型压缩与优化加速

    前言 Bert/Transformer结构及其变体,已成为自然语言处理 (NLP).语音识别 (ASR)等领域的主流序列建模结构.并且,相比于卷积操作的局部特征提取能力.以及平移不变性,Self-At ...

  5. 速度超快!字节跳动开源序列推理引擎LightSeq

    机器之心发布 机器之心编辑部 这应该是业界第一款完整支持 Transformer.GPT 等多种模型高速推理的开源引擎. 2017 年 Google 提出了 Transformer [1] 模型,之后 ...

  6. 京东智能情感客服挽救一名学生生命,“可信赖的AI”用温暖前行

    允中 发自 凹非寺 量子位 编辑 | 公众号 QbitAI "一下吃完一整瓶还能活着吗?"近日,一位广东用户在京东上咨询智能情感客服时留下了这样的话. 随后,一场跨越千里的线上线下 ...

  7. 英伟达公开课 | 如何突破Decoder性能瓶颈?揭秘FasterTransformer2.0的原理与应用,已开源...

    位来 发自 凹非寺 量子位 报道 | 公众号 QbitAI 4月9日,英伟达x量子位分享了一期nlp线上课程,来自NVIDIA的GPU计算专家.FasterTransformer 2.0开发者之一的薛 ...

  8. 英伟达“暴力碾压”谷歌:53分钟训练完BERT,2.2毫秒完成推理,创下NLP三项新纪录...

    边策 发自 凹非寺  量子位 报道 | 公众号 QbitAI AI硬(he)件(dan)厂商英伟达今天宣布,他们在NLP模型上取得了三大突破,为今后会话AI的落地应用铺平了道路. 英伟达用自己的硬件与 ...

  9. encoder decoder模型_如何突破Decoder性能瓶颈?揭秘FasterTransformer的原理与应用

    位来 发自 凹非寺 量子位 报道 | 公众号 QbitAI 4月9日,英伟达x量子位分享了一期nlp线上课程,来自NVIDIA的GPU计算专家.FasterTransformer 2.0开发者之一的薛 ...

最新文章

  1. Centos7 上安装 redis5.0.5
  2. 大脚导入配置选择哪个文件_「科普向」为何我用大脚时,单体插件会安装失败?...
  3. org.quartz.CronTrigger cannot be cast to org.springframework.scheduling.quartz.CronTriggerBean
  4. 行为模式之State模式
  5. Android vector标签 PathData 画图超详解
  6. Netty内置处理器以及编解码器
  7. VS2012 生成项目报 Lc.exe已退出,代码为-1 错误
  8. JavaScript 省市级联效果
  9. 架构师成长之路:如何保证消息队列的高可用
  10. 小猫的java基础知识点汇总(上)
  11. PolarDB for PostgreSQL 开源路线图
  12. win10搜索框没反应怎么修复
  13. 列表合并变种题,map()函数扩展
  14. mybatis 数组 添加_Mybatis配置文件中Insert 元素标签添加配置有哪些呢?
  15. 微信已支持数字人民币支付!
  16. python spearman相关系数_Pearson、Spearman秩相关系数、kendall等级相关系数 (附python实现)...
  17. net新的库相关的资源
  18. 今天见鬼了,奇怪,Mark一下!
  19. 流体机械原理及设计08
  20. 开源小程序CMS网站, JeeWx-App-CMS 1.0 首版本发布

热门文章

  1. 【老生谈算法】matlab实现图像平滑算法——图像平滑算法
  2. 【ORB-SLAM2源码梳理6】Track()函数的第一步:单目初始化MonocularInitialization()
  3. 企业管理正在被互联网解构,但企业管理者还仍然一无所知
  4. 和平精英服务器位置,和平精英音乐盒在哪里 地图详细位置介绍
  5. R语言实现偏最小二乘回归法 partial least squares (PLS)回归
  6. OSTU(大津算法)
  7. 从大神Alex Smola与李沐离职AWS创业融资顺利,回看ChatGPT大模型时代“底层武器”演进
  8. 计算机虽然具有强大的功能但它目前还不能,大学计算机基础考试模拟题一.docx...
  9. ubuntu18.04+RTX3080+pytorch nightly深度学习环境配置
  10. 微信,已经严重地搅和了我们的生活!