Inverted Residual Block: Before fusion Sequential( (0): ConvBNReLU( (0): Conv2d(32, 32, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=32, bias=False) (1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) (2): ReLU() ) (1): Conv2d(32, 16, kernel_size=(1, 1), stride=(1, 1), bias=False) (2): BatchNorm2d(16, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) ) Inverted Residual Block: After fusion Sequential( (0): ConvBNReLU( (0): ConvReLU2d( (0): Conv2d(32, 32, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=32) (1): ReLU() ) (1): Identity() (2): Identity() ) (1): Conv2d(32, 16, kernel_size=(1, 1), stride=(1, 1)) (2): Identity() ) Size of baseline model Size (MB): 13.999657 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Evaluation accuracy on 50000 images, 71.86 QConfig(activation=functools.partial(, reduce_range=True), weight=functools.partial(, dtype=torch.qint8, qscheme=torch.per_tensor_symmetric)) Post Training Quantization Prepare: Inserting Observers Inverted Residual Block:After observer insertion Sequential( (0): ConvBNReLU( (0): ConvReLU2d( (0): Conv2d( 32, 32, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=32 (activation_post_process): MinMaxObserver(min_val=tensor([]), max_val=tensor([])) ) (1): ReLU( (activation_post_process): MinMaxObserver(min_val=tensor([]), max_val=tensor([])) ) ) (1): Identity() (2): Identity() ) (1): Conv2d( 32, 16, kernel_size=(1, 1), stride=(1, 1) (activation_post_process): MinMaxObserver(min_val=tensor([]), max_val=tensor([])) ) (2): Identity() ) ................................Post Training Quantization: Calibration done /projs/framework/zhaixiuchuan/train/venv/pytorch/lib/python3.6/site-packages/torch/quantization/observer.py:136: UserWarning: must run observer before calling calculate_qparams. Returning default scale and zero point Returning default scale and zero point " Post Training Quantization: Convert done Inverted Residual Block: After fusion and quantization, note fused modules: Sequential( (0): ConvBNReLU( (0): QuantizedConvReLU2d(32, 32, kernel_size=(3, 3), stride=(1, 1), scale=0.1571013331413269, zero_point=0, padding=(1, 1), groups=32) (1): Identity() (2): Identity() ) (1): QuantizedConv2d(32, 16, kernel_size=(1, 1), stride=(1, 1), scale=0.190989688038826, zero_point=66) (2): Identity() ) Size of model after quantization Size (MB): 3.631847 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Evaluation accuracy on 50000 images, 56.39 QConfig(activation=functools.partial(, reduce_range=True), weight=functools.partial(, dtype=torch.qint8, qscheme=torch.per_channel_symmetric)) /projs/framework/zhaixiuchuan/train/venv/pytorch/lib/python3.6/site-packages/torch/quantization/observer.py:877: UserWarning: must run observer before calling calculate_qparams. Returning default scale and zero point Returning default scale and zero point " ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Evaluation accuracy on 50000 images, 68.05 Inverted Residual Block: After preparation for QAT, note fake-quantization modules Sequential( (0): ConvBNReLU( (0): ConvBnReLU2d( 32, 32, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), groups=32, bias=False (bn): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) (activation_post_process): FakeQuantize( fake_quant_enabled=tensor([1], dtype=torch.uint8), observer_enabled=tensor([1], dtype=torch.uint8), scale=tensor([1.]), zero_point=tensor([0]) (activation_post_process): MovingAverageMinMaxObserver(min_val=tensor([]), max_val=tensor([])) ) (weight_fake_quant): FakeQuantize( fake_quant_enabled=tensor([1], dtype=torch.uint8), observer_enabled=tensor([1], dtype=torch.uint8), scale=tensor([1.]), zero_point=tensor([0]) (activation_post_process): MovingAveragePerChannelMinMaxObserver(min_val=tensor([]), max_val=tensor([])) ) ) (1): Identity() (2): Identity() ) (1): ConvBn2d( 32, 16, kernel_size=(1, 1), stride=(1, 1), bias=False (bn): BatchNorm2d(16, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True) (activation_post_process): FakeQuantize( fake_quant_enabled=tensor([1], dtype=torch.uint8), observer_enabled=tensor([1], dtype=torch.uint8), scale=tensor([1.]), zero_point=tensor([0]) (activation_post_process): MovingAverageMinMaxObserver(min_val=tensor([]), max_val=tensor([])) ) (weight_fake_quant): FakeQuantize( fake_quant_enabled=tensor([1], dtype=torch.uint8), observer_enabled=tensor([1], dtype=torch.uint8), scale=tensor([1.]), zero_point=tensor([0]) (activation_post_process): MovingAveragePerChannelMinMaxObserver(min_val=tensor([]), max_val=tensor([])) ) ) (2): Identity() ) ....................Loss tensor(1.7456, grad_fn=) Training: * Acc@1 59.167 Acc@5 82.500 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Epoch 0 :Evaluation accuracy on 50000 images, 67.67 ....................Loss tensor(1.6714, grad_fn=) Training: * Acc@1 61.667 Acc@5 81.500 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Epoch 1 :Evaluation accuracy on 50000 images, 67.33 ....................Loss tensor(1.8121, grad_fn=) Training: * Acc@1 60.333 Acc@5 79.333 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Epoch 2 :Evaluation accuracy on 50000 images, 66.42 ....................Loss tensor(1.7800, grad_fn=) Training: * Acc@1 57.500 Acc@5 81.500 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Epoch 3 :Evaluation accuracy on 50000 images, 67.03 ....................Loss tensor(1.6966, grad_fn=) Training: * Acc@1 62.167 Acc@5 82.167 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Epoch 4 :Evaluation accuracy on 50000 images, 67.30 ....................Loss tensor(1.4494, grad_fn=) Training: * Acc@1 66.167 Acc@5 84.333 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Epoch 5 :Evaluation accuracy on 50000 images, 67.59 ....................Loss tensor(1.4924, grad_fn=) Training: * Acc@1 66.000 Acc@5 86.667 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Epoch 6 :Evaluation accuracy on 50000 images, 67.77 ....................Loss tensor(1.4817, grad_fn=) Training: * Acc@1 65.000 Acc@5 85.000 ........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Epoch 7 :Evaluation accuracy on 50000 images, 67.88 Elapsed time: 46 ms Elapsed time: 10 ms