@wanghuijiao
2021-01-27T17:50:25.000000Z
字数 4051
阅读 1804
快速调研
层面 | 方法 | 效果 | 可行性判断 | 工作量预估 | OP支持度 |
---|---|---|---|---|---|
算法层加速 | 低秩近似(矩阵、张量分解) | 精度无明显损失前提下,加速8倍 | 需要参考不同论文源码进行卷积层分解和全连接层分解,没有工具包,风险较大,应用到跌倒模型其精度和速度不敢保证 | 2月左右 | -- |
剪枝 | 不损失准确率前提下,在ImageNet数据集上,对AlexNet的内存占用减少35倍(240MB->6.9MB),对于VGG-16减少49倍的内存占用(552MB->11.3MB)。 | NNI (Neural Network Intelligence)微软开源工具包、PaddleLite也支持, 有完整工具链和文档 | 2周内可上手 | -- | |
量化 | 实现32x存储压缩的同时,可有58x的速度提升 | TensorFlow支持INT8量化,Pytorch从1.3版本开始支持finetune的量化功能,MNN、NCNN、TFlite、PaddleLite等都支持量化 | 2周 | -- | |
知识蒸馏 | TinyBERT在glue任务上,精度损失4%时,模型缩小7.5倍,加速9.4倍。 | 需要训练学生网络,应用较难,风险大 | 3月左右 | -- | |
轻量网络:MobileNets、ShuffleNets、Inception、SqueezeNet | SqueezeNet+Deep Compression, 可以将AlexNet在不损失精度的前提下模型深度压缩510倍 | 需要替换模型backbone,风险较大 | 1月左右 | -- | |
框架层加速 | TensorRT | Nvidia 部署推理工具,可用于PX2,加速10X | 有完整工具链和文档,易上手 | 2周 | -- |
TVM | 华盛顿大学,推理加速,相较于TensorRT,支持硬件平台更为广泛 | 有完整工具链和文档,易上手 | 2周 | -- | |
Tensor Comprehension | Facebook,用于将高级语言生成GPU代码 | 有完整工具链和文档,易上手 | 2周 | -- | |
Distiller | Intel开源的用于模型压缩的 Python 包 | 有完整工具链和文档,易上手 | 2周 | -- | |
移动端AI框架 | TF-lite | Google轻量级推理库。主要用于移动端。 | 有完整工具链和文档,易上手 | 2周 | -- |
MNN | 阿里高效、轻量的深度学习框架,它支持端侧深度模型推理与训练。 | 有完整工具链和文档,易上手 | 2周 | 支持149个TensorFlow Op,47 个CaffeOp、74 个 ONNX Op;CPU 110个,Metal 55个,OpenCL 29个,Vulkan 31个。不支持自定义扩展。 | |
NCNN | 腾讯手机端极致优化的高性能神经网络前向计算框架 | 有完整工具链和文档,易上手(文档写的不太规范) | 2周 | 无算子列表,有支持的网络列表, 不易扩展 | |
MACE | 小米移动端异构计算设备优化的深度学习前向预测框架 | 有完整工具链和文档,易上手 | 2周 | 支持57个Op,不易扩展 | |
PaddleLite | 百度深度学习推理框架 | 有完整工具链和文档,易上手 | 2周 | 支持204个ops,易扩展 | |
ONNX Runtime | 是将 ONNX 模型部署到生产环境的跨平台高性能运行引擎 | 完整工具链和文档,易上手 | 2周 | 约100-200个Op, 易扩展 | |
硬件芯片层 | GPU、FPGA、ASIC(TPU\NPU) | -- | 需要定制芯片,根据与肇观公司接触来看,开发需要底层硬件工程师,算法人员开发过程过于艰难 | 较难实现,6个月以上 | -- |
更加详细的信息请看下面的介绍。