我从Tensorflow-pruning得到了一个稀疏权重矩阵来减少SqueezeNet。在strip_pruning_vars之后,我检查了权重矩阵中的大多数元素都被成功修剪为0。然而,模型的性能并没有像我预期的那样提高。似乎需要额外的软件库或支持稀疏矩阵运算的硬件。有人告诉我,使用Intel-MKL库会很有帮助,但我不知道如何将其与Tensorflow集成。现在,我已经修剪了SqueezeNet的.pb文件。任何类型的帮助都将受到高度的感谢。
发布于 2019-05-16 22:01:24
您可以尝试使用英特尔®优化TensorFlow*版。
建议使用英特尔环境来实现同样的目的。
请按照以下步骤操作。
对环境执行conda create -n my_intel_env -c intel python=3.6
source activate my_intel_env
pip install https://storage.googleapis.com/intel-optimized-tensorflow/tensorflow-1.11.0-cp36-cp36m-linux_x86_64.whl
有关更多详细信息,请参阅https://software.intel.com/en-us/articles/intel-optimization-for-tensorflow-installation-guide
安装完成后,您可以通过在python提示符下执行以下命令来检查是否启用了mkl。
from tensorflow.python.framework import test_util
test_util.IsMklEnabled()如果启用了mkl,则应返回'True‘。
希望这能有所帮助。
发布于 2019-09-25 11:01:22
我和你也遇到过同样的问题。我使用tensorflow修剪模型,但实际上修剪后的模型并没有获得更快的预测速度。在tensorflow (https://www.tensorflow.org/model_optimization/guide/roadmap)的路线图中,他们说他们将在未来支持稀疏模型执行。所以我猜原因是tensorflow到目前为止还不支持它,所以我们只能得到一个稀疏模型,但没有速度改进。
https://stackoverflow.com/questions/55532982
复制相似问题