腾讯优图开源深度学习推理框架TNN,助力AI开发降本增效

腾讯优图开源深度学习推理框架TNN,激发AI生产力

从学界到工业界,“开源”已经成为AI领域的一个关键词。一方面,它以“授人以渔”的方式为AI构建了一个开放共进的生态环境,帮助行业加速AI应用落地;另外一方面,在解决行业实际问题时持续更新和迭代,源源不断地给AI领域输送重要的技术养料和创造力,能够说开源是AI落地和繁荣不可或缺的源动力。
image.pnggit

6月10日,腾讯优图实验室宣布正式开源新一代移动端深度学习推理框架TNN,经过底层技术优化实如今多个不一样平台的轻量部署落地,性能优异、简单易用。基于TNN,开发者可以轻松将深度学习算法移植到手机端高效的执行,开发出人工智能 APP,真正将 AI 带到指尖。github

轻量级部署,TNN助力深度学习提速增效

深度学习对算力的巨大需求一直制约着其更普遍的落地,尤为是在移动端,因为手机处理器性能弱、算力没法多机拓展、运算耗时长等因素经常致使发热和高功耗,直接影响到app等应用的用户体验。腾讯优图基于自身在深度学习方面的技术积累,并借鉴业内主流框架优势,推出了针对手机端的高性能、轻量级移动端推理框架TNN。算法

TNN在设计之初便将移动端高性能融入核心理念,对2017年开源的ncnn框架进行了重构升级。经过GPU深度调优、ARM SIMD深刻汇编指令调优、低精度计算等技术手段,在性能上取得了进一步提高。如下是MNN, ncnn, TNN框架在多款主流平台的实测性能:
image.png
image.png
image.png
image
TNN在麒麟970、骁龙83五、骁龙845,骁龙615平台实测性能数据api

注:纵轴单位:ms 测试分支:MNN:1.0.0(2020.05.07), ncnn:20200413, TNN: master(2020.06.10)安全

测试模型:https://github.com/alohali/benchmark-models服务器

低精度计算的运用对TNN的性能提高发挥了重要做用。在神经网络计算中,浮点精度在许多研究和业务落地成果上都被证实存在必定冗余,而在计算、内存资源都极为紧张的移动端,消除这部分冗余极为必要。TNN引入了INT八、 FP1六、 BFP16等多种计算低精度的支持,相比大部分仅提供INT8支持的框架,不只能灵活适配不一样场景,还让计算性能大大提高。TNN经过采用8bit整数代替float进行计算和存储,模型尺寸和内存消耗均减小至1/4,在计算性能上提高50%以上。同时引入arm平台BFP16的支持,相比浮点模型,BFP16使模型尺寸、内存消耗减小50%,在中低端机上的性能也提高约20%。骁龙615平台实测:
image.png
image网络

通用、轻即是TNN框架的另外一大亮点。长久以来,不一样框架间的模型转换都是AI项目应用落地的痛点。TNN设计了与平台无关的模型表示,为开发人员提供统一的模型描述文件和调用接口,支持主流安卓、iOS等操做系统,适配CPU、 GPU、NPU硬件平台。企业一套流程就能部署到位,简单易用、省时省力。同时, TNN经过ONNX可支持TensorFlow, PyTorch, MXNet, Caffe等多种训练框架,目前支持ONNX算子超过80个,覆盖主流CNN网络。TNN全部算子均为源码直接实现,不依赖任何第三方,接口易用,切换平台仅需修改调用参数便可。app

开源文化兴起,AI底层技术助推产业发展

事实上,做为腾讯旗下顶级AI实验室,腾讯优图长期致力于AI基础设施的研发和推动。此前,腾讯优图已开发了Rapidnet 前向计算框架、RapidAIoT 边缘计算框架,实现了业界首个专一移动端的推断框架ncnn的开源,并在业界受到普遍推崇。从2017年开源至今,ncnn在GitHub上star(8.9k)和 fork(2.3k)数均领先于其它各大推理框架。框架

据悉,TNN已于3月中旬在腾讯内部开源,为腾讯QQ、QQ空间、腾讯微视、腾讯云、每天P图等多款产品和服务中持续提供技术能力,释放出更多效能。性能

“TNN已在GitHub上开源,欢迎业界人士参与协同共建,共同打造更优的移动端推理框架。“腾讯优图实验室副总经理吴永坚介绍,腾讯优图后续将在现有CV业务的基础上研发更多的AI推理模型,如语音、NLP等相关业务,同时开展针对CPU、GPU服务器端的服务,为业界公司提供更普遍的优化服务。 “做为产业发展的高速公路,以深度学习框架、组件为表明的AI基础设施将是将来的主流趋势,腾讯优图也将以此为着力点,助推产业发展。”吴永坚表示,腾讯优图还将持续开发模型训练组件、模型压缩组件、基础算法组件,并择机开源,但愿从框架到平台、到算法,打造一体化的AI基础设施,下降AI门槛,加速产业发展。

随着以开源为表明的新代码文化的兴起,腾讯近年来在开源领域表现亮眼:在全球最大的代码托管平台GitHub上,腾讯发布的开源项目已经超过一百个,涵盖云原生、大数据、AI、云计算、安全、硬件等多个热门的技术方向。

经过开源协同,腾讯将各个事业群最底层和共性的技术能力进行梳理和拉通,在业务实践和海量用户检验下,优质的内部开源项目不只在公司层面推广复用,同时也对外贡献整个开源社区。仅在Github上,腾讯的开源项目就收获了30w+star数,跻身国际上有影响力的开源企业之一。

在开源的道路上,腾讯不只将内部优质项目持续对外开放,也积极与开源社区协同合做,发挥中国企业的科技力量,推进开源和开放进一步升级。

开源地址:https://github.com/Tencent/TNN

相关文章
相关标签/搜索