Keras模型的训练后权重量化

时间:2020-12-21 03:09:41

标签: keras tensorflow2.0 quantization

我想实现Keras模型(.h5)的训练后权重量化

关注 tensorflow 的公会:https://www.tensorflow.org/lite/performance/post_training_integer_quant

model = tf.keras.models.load_model('./model/Lenet5.h5')
converter = tf.lite.TFLiteConverter.from_keras_model(model)
converter.optimizations = [tf.lite.Optimize.OPTIMIZE_FOR_SIZE]
tflite_quant_weight_model = converter.convert()
 
f = open('./model/Lenet5_tflite_quant_weight_model.tflite','wb')
f.write(tflite_quant_weight_model)
f.close()

完成模型从h5到tflite的转换

我通过 netron(https://netron.app/) 检查权重值

conv1 没有用 8 位量化

https://i.imgur.com/722bJ3g.png

但 conv2 conv3 是 8 位量化

https://i.imgur.com/pGbN9jY.png

我该如何解决?

谢谢!!

0 个答案:

没有答案