此页面由 Cloud Translation API 翻译。
Switch to English

权聚类

由ARM ML工具保持

此文件提供了关于权聚类的概述,以帮助您确定如何与你的使用情况相符。

概观

群集,或重量共享,减少了在模型唯一的权重值的数量,导致部署的好处。它第一组的每一层成N个簇的权重,然后对共享所有属于集群的权重群集的质心值。

这种技术带来的通过模型压缩改进。未来框架的支持可以解锁内存占用的改进,可以使一个关键的区别关于和资源受限的嵌入式系统上部署深度学习模型。

我们已经尝试了跨越视觉和语音任务集群。我们已经看到高达5度的改进模型压缩精度的损失最小,被作为展示的结果如下。

请注意,群集将提供一种用于先于批标准化层,以及在每个轴后的培训量化组合卷积和致密层减少的好处。

API兼容性矩阵

用户可以应用聚类以下API:

  • 建立模型: tf.keras只有顺序和功能模型
  • TensorFlow版本:TF的1.x版本为1.14+和2.x版本
    • tf.compat.v1与TF 2.X包和tf.compat.v2不支持用TF 1.X包。
  • TensorFlow执行模式:两个曲线图,渴望

结果

图像分类

模型原版的集群
顶-1精度(%) 压缩.tflite的大小(MB) 组态集群# 顶-1精度(%) 压缩.tflite的大小(MB)
MobileNetV1 71.02 14.96
选择性的(过去的3 Conv2D层) 256,256,32 70.62 8.42
完全(所有Conv2D层) 64 66.07 2.98
MobileNetV2 72.29 12.90
选择性的(过去的3 Conv2D层) 256,256,32 72.31 7.00
完全(所有Conv2D层) 32 69.33 2.60

这些模型进行了培训和测试ImageNet。

关键词检测

模型原版的集群
顶-1精度(%) 压缩.tflite的大小(MB) 组态集群# 顶-1精度(%) 压缩.tflite的大小(MB)
DS-CNN-L 95.03 1.5 充分 32 94.71 0.3

这些模型进行了培训和SpeechCommands v0.02测试。

  1. 序列化Keras模型到.h5文件
  2. 转换.h5文件到使用.tflite TFLiteConverter.from_keras_model_file()
  3. 压缩.tflite文件压缩成zip

例子

除了在Keras例如重量集群 ,看下面的例子:

  • 集群训练有素的MNIST手写数字分类数据集模型CNN的权重: 代码

重量集群的实现是基于深度压缩:压缩深层神经网络,剪枝,训练有素的量化和霍夫曼编码 。见第3章,标题为训练有素的量化和重量共享