本期推荐的是一个由腾讯开源的手机端高性能神经网络前向计算框架——ncnn。
ncnn 是一个为手机端极致优化的高性能神经网络前向计算框架。ncnn 从设计之初就深刻考虑手机端的部署和使用,无第三方依赖,跨平台,手机端 cpu 的速度快于目前所有已知的开源框架。
开发者基于ncnn能够将深度学习算法轻松移植到手机端高效执行,开发出人工智能 APP,目前已在腾讯多款应用中使用,如 QQ,Qzone,微信,天天P图等。
ncnn功能概述:
- 支持卷积神经网络,支持多输入和多分支结构,可计算部分分支
- 无任何第三方库依赖,不依赖 BLAS/NNPACK 等计算框架
- 纯 C++ 实现,跨平台,支持 android ios 等
- ARM NEON 汇编级良心优化,计算速度极快
- 精细的内存管理和数据结构设计,内存占用极低
- 支持多核并行计算加速,ARM big.LITTLE cpu 调度优化
- 支持基于全新低消耗的 vulkan api GPU 加速
- 整体库体积小于 700K,并可轻松精简到小于 300K
- 可扩展的模型设计,支持 8bit 量化和半精度浮点存储,可导入 caffe/pytorch/mxnet/onnx/darknet/keras/tensorflow(mlir) 模型
- 支持直接内存零拷贝引用加载网络模型
- 可注册自定义层实现并扩展
nccn支持的平台:
✅ = 运行速度快 ✔️ = 速度可能不够快 ❔ = 未确认 / = 未应用
示例:
更多内容大家可自行前往阅读。