create_training_graph() 在将 MobileFacenet 转换为具有 TF-lite 的量化感知模型时失败
create_training_graph() failed when converted MobileFacenet to quantize-aware model with TF-lite
我正在尝试量化 MobileFacenet () according to the
我想我遇到了与 this one
相同的问题
当我将 tf.contrib.quantize.create_training_graph()
添加到训练图中时
(train_nets.py ln.187:在 train_op = train(...)
之前或在 train()
utils/common.py ln.38 之前的渐变)
它没有在图中添加量化感知操作来收集动态范围 max\min。
我假设我应该在 tensorboard 中看到一些额外的节点,但我没有,因此我认为我没有成功地在训练图中添加量化感知操作。
我尝试跟踪 tensorflow,发现我对 _FindLayersToQuantize() 一无所知。
然而,当我添加 tf.contrib.quantize.create_eval_graph()
来优化训练图时。我可以看到一些量化感知操作 act_quant...
由于我没有在训练图中成功添加操作,因此我没有权重可以加载到评估图中。
因此我收到了一些错误消息
Key MobileFaceNet/Logits/LinearConv1x1/act_quant/max not found in checkpoint
或
tensorflow.python.framework.errors_impl.FailedPreconditionError: Attempting to use uninitialized value MobileFaceNet/Logits/LinearConv1x1/act_quant/max
有谁知道如何解决这个错误?或者如何获得高精度的量化 MobileFacenet?
谢谢!
H,
遗憾的是,contrib/quantize 工具现已弃用。它将无法支持更新的模型,我们不再处理它。
如果您对 QAT 感兴趣,我建议您尝试新的 TF/Keras QAT API。我们正在积极开发它并为其提供支持。
我正在尝试量化 MobileFacenet (
当我将 tf.contrib.quantize.create_training_graph()
添加到训练图中时
(train_nets.py ln.187:在 train_op = train(...)
之前或在 train()
utils/common.py ln.38 之前的渐变)
它没有在图中添加量化感知操作来收集动态范围 max\min。
我假设我应该在 tensorboard 中看到一些额外的节点,但我没有,因此我认为我没有成功地在训练图中添加量化感知操作。 我尝试跟踪 tensorflow,发现我对 _FindLayersToQuantize() 一无所知。
然而,当我添加 tf.contrib.quantize.create_eval_graph()
来优化训练图时。我可以看到一些量化感知操作 act_quant...
由于我没有在训练图中成功添加操作,因此我没有权重可以加载到评估图中。
因此我收到了一些错误消息
Key MobileFaceNet/Logits/LinearConv1x1/act_quant/max not found in checkpoint
或
tensorflow.python.framework.errors_impl.FailedPreconditionError: Attempting to use uninitialized value MobileFaceNet/Logits/LinearConv1x1/act_quant/max
有谁知道如何解决这个错误?或者如何获得高精度的量化 MobileFacenet?
谢谢!
H,
遗憾的是,contrib/quantize 工具现已弃用。它将无法支持更新的模型,我们不再处理它。
如果您对 QAT 感兴趣,我建议您尝试新的 TF/Keras QAT API。我们正在积极开发它并为其提供支持。