近日,腾讯优图首个AI开源项目ncnn 正式加入ONNX,现已支持将ONNX文件转换为ncnn模型。此后,AI开发者能更快实现从研究到模型的落地部署,也能更方便地在不同框架间切换,为每项任务选取最优的开发工具。
ONNX 的全称是“Open Neural Network Exchange”,即“开放的神经网络切换”。该项目旨在实现不同神经网络开发框架之间的互通互用。目前,Microsoft Cognitive Toolkit,PyTorch 和 Caffe2 均已支持 ONNX。
腾讯优图ncnn是腾讯社交网络事业群公布的首个AI开源项目,也是腾讯优图实验室第一次对外公开深度学习的研究成果。ncnn于2017年7月正式开源,作为一个为手机端极致优化的高性能神经网络前向计算框架,在设计之初便将手机端的特殊场景融入核心理念,是业界首个为移动端优化的开源神经网络推断库。ncnn无第三方依赖,跨平台,在手机端cpu运算速度在开源框架中处于领先水平。基于该平台,开发者能够轻松将深度学习算法移植到手机端,输出高效的执行,进而产出人工智能APP,将AI技术带到用户指尖。
不同框架间的模型转换是目前AI项目应用落地的一大痛点。ONNX是Facebook主推的开放文件格式,pytorch/caffe2原生支持。作为目前已知同类框架中CPU运算最快的ncnn,不仅具有最小的安装包体积,还拥有最佳的跨平台兼容性。在ncnn支持ONNX格式转换后,pytorch/caffe2训练的模型便能通过平台轻松部署到手机端。与此同时,ncnn也能借助ONNX良好的项目生态,对众多框架和运行库的高兼容性,以及结构定义清晰的ONNX格式,进一步降低各框架间的转换成本,促进AI移动端生态的创新和部署。
据统计,目前Googleplay商店已有QQ、微信、微视、京东、支付宝、爱奇艺、美颜相机、快手短视频、LIKE短视频、玩美彩妆等超过30款APP,选用ncnn作为手机CNN推断库,实现包括人脸检测跟踪、人脸配准、人脸识别、人体检测跟踪、人体姿态估计、图像分类、图像美化、目标分割、风格画生成、物体检测、文本检测和识别等AI场景应用。
京东APP使用ncnn
支付宝APP使用ncnn
腾讯一直以来秉承“开放”战略,不断推动技术研发向共享、复用和开源迈进。截至目前,腾讯正式发布的开源项目共计58个。今年3月,凭借在AI开源领域卓越的技术影响,腾讯受邀成为LF深度学习基金会初始白金会员,与基金会共同维护、支持和推动人工智能领域的技术开源和革新。
腾讯优图ncnn(https://github.com/Tencent/ncnn)作为腾讯代表性的AI开源项目之一,将持续为人工智能发展助力,促进深度学习研究成果的落地应用。