【发布时间】:2020-07-27 04:35:13
【问题描述】:
我正在尝试根据suggestion 量化MobileFacenet (code from sirius-ai) 我想我遇到了和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?
谢谢!
【问题讨论】:
标签: tensorflow quantization tensorflow-lite quantization-aware-training