深度学习的产品化 - 构建精简高效的神经网络系统
-
从训练到部署 从大数据到小设备,数据中心(GPU)->边缘计算(CPU.MCU) 从高精度到低延迟,高复杂和高精度->低延迟和低功耗
- 全栈式开发
-
- 建模训练
-
- 模型转换
-
- 模型部署
精简网络结构设计和改进训练策略
- 神经网络结构设计
- 使用前向网络替代循环网络,总是可以替代,且更容易收敛
- 使用Factorized(分解式的)网络结构(Grouped Conv, SVDF)
- 模型训练策略
- 从已有模型进行Fine Tuning
- Teacher-student learning
- Multi-task training
定制推理框架和优化计算图
- 更灵活的模型量化机制
- 混合精度:输入用高精度减少量化损失
- Row-wise量化:降低精度损失(小范围量化)
- 自定义网络推理操作算法
- 操作融合:融合FC & BN & RELU
- 中间结果缓冲:避免时序卷积重复计算
- 面向特定应用场景的优化
- 动态Batching:面向服务器端动态负载
- 内存复用:面向嵌入式
针对特定硬件的指令加速
- 充分利用SIMD指令集
- 充分利用CPU缓存
- 合理地Pack和Loop数据
- 降低访问次数,隐藏数据加载延迟
- 特定硬件加速
- NPU乘加操作阵列
IDEA:完全新的思路,优化10倍,系统概念(要考虑全局性能)
腾讯优图
超分辨率、人脸识别
- 人脸识别
- Rule based
- Viola-Jones Detector
- DPM-based
- CNN(DDFD, CMS-RCN, UnitBox, MTCNN)
- Multi-scale 需要更宽泛的感受野
大规模强化学习在MOBA游戏的应用
- 强化学习在游戏应用
- 基于王者荣耀的大规模强化学习
- 自对弈,放入样本池,训练从样本池中sample
- PPO(Proximal Policy Optimization) IDEA:资源对强化学习的重要性
自动驾驶 - 宝马
- 深度学习在较为限定的空间中运行
- 依赖激光多一些
- 道路模型,高精地图 -> 车道路线跟踪
- 关键点:高精定位,检测预测
- 简单方法,可靠性