666DZY666 / micronet

micronet, a model compression and deploy lib. compression: 1、quantization: quantization-aware-training(QAT), High-Bit(>2b)(DoReFa/Quantization and Training of Neural Networks for Efficient Integer-Arithmetic-Only Inference)、Low-Bit(≤2b)/Ternary and Binary(TWN/BNN/XNOR-Net); post-training-quantization(PTQ), 8-bit(tensorrt); 2、 pruning: normal、regular and group convolutional channel pruning; 3、 group convolution structure; 4、batch-normalization fuse for quantization. deploy: tensorrt, fp32/fp16/int8(ptq-calibration)、op-adapt(upsample)、dynamic_shape
MIT License
2.2k stars 478 forks source link

IAO BN融合量化测试 #35

Open ghost opened 4 years ago

ghost commented 4 years ago

我在使用 您所说的bn_folding.py中的程序对IAO进行量化融合测试时,出现如下问题: RuntimeError: Error(s) in loading state_dict for Net: Unexpected key(s) in state_dict: "conv1.q_conv.weight_quantizer.scale", "conv1.q_conv.weight_quantizer.zero_point", "conv2.q_conv.activation_quantizer.scale", "conv2.q_conv.activation_quantizer.zero_point", "conv2.q_conv.weight_quantizer.scale", "conv2.q_conv.weight_quantizer.zero_point". 这个问题是如何解决呢? 我猜想这个问题的出现是由于IAO和二三值量化的方法不同所造成的。

mjanddy commented 4 years ago

我在使用 您所说的bn_folding.py中的程序对IAO进行量化融合测试时,出现如下问题: RuntimeError: Error(s) in loading state_dict for Net: Unexpected key(s) in state_dict: "conv1.q_conv.weight_quantizer.scale", "conv1.q_conv.weight_quantizer.zero_point", "conv2.q_conv.activation_quantizer.scale", "conv2.q_conv.activation_quantizer.zero_point", "conv2.q_conv.weight_quantizer.scale", "conv2.q_conv.weight_quantizer.zero_point". 这个问题是如何解决呢? 我猜想这个问题的出现是由于IAO和二三值量化的方法不同所造成的。

这个问题你解决了吗?

ghost commented 3 years ago

嗨,这个问题我解决了,但是出现的特征值和权重还是浮点数

666DZY666 commented 3 years ago

高位量化后续会加入:1、量化推理仿真;2、量化训练后接到推理框架(tensorrt/mnn等)部署, 其中会包含”IAO BN融合量化测试“。

hukefy commented 2 years ago

嗨,这个问题我解决了,但是出现的特征值和权重还是浮点数

请问您是怎么解决的?

Joejwu commented 2 years ago

所以最后得到的浮点的权值如何转成int型数值呢?