开源腾讯优图开源深度学习推理框架TNN,助力AI开发降本增效
从学界到工业界 , “开源”已经成为AI领域的一个关键词 。 一方面 , 它以“授人以渔”的方式为AI构建了一个开放共进的生态环境 , 帮助行业加速AI应用落地;另一方面 , 在解决行业实际问题时持续更新和迭代 , 源源不断地给AI领域输送重要的技术养料和创造力 , 可以说开源是AI落地和繁荣不可或缺的源动力 。
图片
6月10日 , 腾讯优图实验室宣布正式开源新一代移动端深度学习推理框架TNN , 通过底层技术优化实现在多个不同平台的轻量部署落地 , 性能优异、简单易用 。 基于TNN , 开发者能够轻松将深度学习算法移植到手机端高效的执行 , 开发出人工智能 APP , 真正将 AI 带到指尖 。
轻量级部署 , TNN助力深度学习提速增效
深度学习对算力的巨大需求一直制约着其更广泛的落地 , 尤其是在移动端 , 由于手机处理器性能弱、算力无法多机拓展、运算耗时长等因素常常导致发热和高功耗 , 直接影响到app等应用的用户体验 。 腾讯优图基于自身在深度学习方面的技术积累 , 并借鉴业内主流框架优点 , 推出了针对手机端的高性能、轻量级移动端推理框架TNN 。
TNN在设计之初便将移动端高性能融入核心理念 , 对2017年开源的ncnn框架进行了重构升级 。 通过GPU深度调优、ARM SIMD深入汇编指令调优、低精度计算等技术手段 , 在性能上取得了进一步提升 。 以下是MNN, ncnn, TNN框架在多款主流平台的实测性能:
图片
图片
图片
图片
TNN在麒麟970、骁龙835、骁龙845 , 骁龙615平台实测性能数据
注:纵轴单位:ms测试分支:MNN:1.0.0(2020.05.07), ncnn:20200413, TNN: master(2020.06.10)
低精度计算的运用对TNN的性能提升发挥了重要作用 。 在神经网络计算中 , 浮点精度在许多研究和业务落地成果上都被证明存在一定冗余 , 而在计算、内存资源都极为紧张的移动端 , 消除这部分冗余极为必要 。 TNN引入了INT8、 FP16、 BFP16等多种计算低精度的支持 , 相比大部分仅提供INT8支持的框架 , 不仅能灵活适配不同场景 , 还让计算性能大大提升 。 TNN通过采用8bit整数代替float进行计算和存储 , 模型尺寸和内存消耗均减少至1/4 , 在计算性能上提升50%以上 。 同时引入arm平台BFP16的支持 , 相比浮点模型 , BFP16使模型尺寸、内存消耗减少50% , 在中低端机上的性能也提升约20% 。 骁龙615平台实测:
图片
图片
通用、轻便是TNN框架的另一大亮点 。 长久以来 , 不同框架间的模型转换都是AI项目应用落地的痛点 。 TNN设计了与平台无关的模型表示 , 为开发人员提供统一的模型描述文件和调用接口 , 支持主流安卓、iOS等操作系统 , 适配CPU、 GPU、NPU硬件平台 。 企业一套流程就能部署到位 , 简单易用、省时省力 。 同时 ,TNN通过ONNX可支持TensorFlow, PyTorch, MXNet, Caffe等多种训练框架 , 目前支持ONNX算子超过80个 , 覆盖主流CNN网络 。 TNN所有算子均为源码直接实现 , 不依赖任何第三方 , 接口易用 , 切换平台仅需修改调用参数即可 。
开源文化兴起 , AI底层技术助推产业发展
事实上 , 作为腾讯旗下顶级AI实验室 , 腾讯优图长期致力于AI基础设施的研发和推进 。 此前 , 腾讯优图已开发了Rapidnet 前向计算框架、RapidAIoT 边缘计算框架 , 实现了业界首个专注移动端的推断框架ncnn的开源 , 并在业界受到广泛推崇 。 从2017年开源至今 , ncnn在GitHub上star(8.9k)和 fork(2.3k)数均领先于其它各大推理框架 。
推荐阅读
- 中年|探索城市的“未来模样”,腾讯政务接下来这么干
- 云计算|腾讯云小微首次技术开放日,揭秘AI语音背后的奥秘
- CSDN|由 Apache 说开,中国开源项目已经走向世界!
- 腾讯|腾讯会议平台选哪家?全世界都在用的可立享有什么特点
- 腾讯科技|阿联酋火星探测器发射升空 拉开2020年火星探测序幕
- 互联网|【IDC圈一周最HOT】本周数据中心项目进展、科华恒盛与腾讯云合作、英国宣布5G禁用华为、预测全球IDC市场网络规模
- 云计算|宁津与腾讯云深化合作项目在深圳签约 推进德州产业数字升级
- 互联网|微信拍一拍火了,腾讯申请拍一拍商标;网友笑称版权意识超前
- 驱动中国|腾讯手机管家上线8.6版本,识别附近诈骗保护家人安全
- 中年|想拿腾讯Offer?设计模式,算法高频面试题别漏了