首页 > 解决方案 > 使用 Tensorflow 模型优化修剪后保存的模型文件大小相同

问题描述

model.save()当我使用API保存它时,我有一个大约 1.1gb 的模型。这对我来说有点太大了,所以我尝试按照 Tensorflow 官方教程 ( https://www.tensorflow.org/model_optimization/guide/pruning/pruning_with_keras ) 对其进行修剪。

之后,模型的压缩版本缩小了 10 倍,但是当我使用相同的model.save()API 保存模型时,模型的大小完全相同。现在,我之前用另一个模型做过这个,保存后模型的最终尺寸确实减少了大约 3 倍。

我的问题是,我是否误解了修剪应该实现的目标,我可以用它来缩小我的 TensorflowServing 模型以减少生产中的资源使用吗?我知道保存权重会导致相同的文件大小,因为您仍然拥有相同数量的权重。但是,我的印象是,当您将模型保存到.pb文件中以供服务时,它将执行所需的压缩,从而允许您使用那些修剪掉的权重。

否则,除了存储空间之外,感觉这样做没有任何优势,这并不是我真正关心的问题。

我知道我也可以将模型转换为 TFLite 格式,但我找不到文档告诉我是否能够使用 TensorflowServing 提供该格式,所以我不确定这是否适合我。

标签: python-3.xtensorflow2.0

解决方案


推荐阅读