深度模型压缩技术在智能座舱方案的探索与实践( 三 )


更新缩放的对偶变量U:
深度模型压缩技术在智能座舱方案的探索与实践文章插图
算法终止条件:
深度模型压缩技术在智能座舱方案的探索与实践文章插图
ADMM核心剪枝算法的相关工作[1]发表在计算机视觉领域国际会议ECCV 2018 (The 15th European Conference on Computer Vision) , 自动化结构剪枝框架AutoCompress[2]发表在人工智能领域国际会议AAAI 2020(The 34th AAAI Conference on Artificial Intelligence) 。 在实践中 , 通过剪枝算法 , 深度模型可以压缩数倍参数量并且准确率保持几乎不变 。
▍ 2.2 量化
在深度模型中 , 常用的权重的表达方式是连续的浮点数 , 其所需的表达位数往往会比较高 , 例如float32 。 权重量化是将权重的表达位数变得更少 , 从而减少其存储需求 , 加快模型推理速度 。 常用的量化方式是将float32量化为半精度浮点(FP16)和8位定点整数(int8) 。 量化具体来讲是对权重做映射分类 , 例如用8位定点整数来表示权重 , 总共可以有类别 , 量化过程即把原本的连续值映射到这的离散值 。 这种方式会产生信息损失 , 量化也往往会产生精度的损失 。 量化大致可分为两种方式:后量化(post-training quantization)和感知量化训练(quantization-aware training) 。 后量化是对已训练好的模型进行 , 这种方式往往会产生较大的精度损失 , 感知量化是在训练过程中对权重进行量化 , 因此精度损失较小 。
常见的量化是均匀量化过程 。 所谓的均匀量化是将整体浮点值域区间均匀的映射在定点值域区间内 。 给定一个浮点数R , 和量化后的数Q , 其映射关系为
深度模型压缩技术在智能座舱方案的探索与实践文章插图
。 其中 (scale)是浮点类型 , 是浮点数量化成定点数的最小刻度(可以理解为浮点量化时对应的区间) 。 Z(zero-point)是定点类型 , 表示的是浮点值为0所对应的量化定点值 。
计算的公式为:
深度模型压缩技术在智能座舱方案的探索与实践文章插图
其中 ,
深度模型压缩技术在智能座舱方案的探索与实践文章插图
表示最大的浮点值 ,
深度模型压缩技术在智能座舱方案的探索与实践文章插图
表示最小的浮点值 ,
深度模型压缩技术在智能座舱方案的探索与实践文章插图
表示最大的定点值 ,
深度模型压缩技术在智能座舱方案的探索与实践文章插图
表示最小的定点值 。
计算Z的公式为:
深度模型压缩技术在智能座舱方案的探索与实践文章插图
深度模型压缩技术在智能座舱方案的探索与实践文章插图
图5 均匀量化
在实践中 , 常用的方式是将32位浮点数(float32)量化为8位定点数(int8) , 这种方式会将存储量降低至原本的25% , 因为寻址一次float32相当于四次int8 , 因此运算效率更高 , 在我们实际应用中 , 端到端推理运行速度可提速高达30% 。
▍ 2.3 知识蒸馏知识蒸馏(knowledge distillation) , 是Hilton于2014年在一篇论文里提出的概念[3] 。 该论文提出一个方法主要思想是小模型(student)不仅能从给定的、已标签好的数据集中学习知识(训练模型) , 还能从一个大的深度网络(teacher)中提取知识进行学习 。
在深度模型中是如何进行的知识蒸馏呢?首先我们要理解知识蒸馏的整体过程是教师与学生 。 其中教师网络是知识的输出者 , 提供知识给学生网络 。 学生网络是知识的接收者 , 从教师网络中获取知识 。 图6展示了通用的知识蒸馏算法流程框架 。 通常来讲 , 教师模型(teacher model)是一个预训练的大模型 , 学生模型(student model)是压缩后的轻量级小模型 。 在训练过程中 , 损失函数(Loss function)由两部分损失(loss)加权组成 , 一部分是soft loss , 另一部分是hard loss 。 Soft loss是由学生网络预测的soft predictions与教师网络预测的soft labels/targets 计算交叉墒(cross entropy) , Hard loss是由学生网络预测的hard predictions与数据真实标签(ground truth)计算交叉墒 。 通过知识蒸馏的方式 , 可以有效地提升小模型的性能准确率 。
深度模型压缩技术在智能座舱方案的探索与实践文章插图
图6 通用的知识蒸馏过程
3.
业务与应用场景
▍ 3.1 智能座舱伴随AI技术逐步成熟 , 推动智能座舱沿着机械化-电子化-智能化不断升级 , 智能座舱将从满足安全性需求扩展至娱乐体验等个性化需求 。 智能座舱技术通过感知用户行为 , 提供个性化及情感化服务 , 满足更高层级用户需求 。