Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update DFQ/EQ/Evaluate int8 perchannel quant tool #1112

Merged
merged 2 commits into from
Sep 2, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions tools/quantize/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ IF (${TENGINE_TARGET_PROCESSOR} MATCHES "X86")
ADD_EXECUTABLE(
${name}
./quant_save_graph.cpp
./algorithm/quant_dfq.cpp
./algorithm/quant_eq.cpp
./quant_utils.cpp
../save_graph/save_graph.cpp
../save_graph/tm2_op_save.cpp
Expand Down
34 changes: 33 additions & 1 deletion tools/quantize/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ Status : int8, per-channel, symmetric
Before use the quant tool, **you need Float32 tmfile and Calibration Dataset**, the image num of calibration dataset we suggest to use 500-1000.

```
$ .quant_tool_int8 -m ./mobilenet_fp32.tmfile -i ./dataset -o ./mobilenet_int8.tmfile -g 3,224,224 -w 104.007,116.669,122.679 -s 0.017,0.017,0.017
$ .quant_tool_int8 -m ./mobilenet_fp32.tmfile -i ./dataset -o ./mobilenet_int8.tmfile -g 3,224,224 -w 104.007,116.669,122.679 -s 0.017,0.017,0.017 -z 1

---- Tengine Post Training Quantization Tool ----

Expand Down Expand Up @@ -111,6 +111,38 @@ Thread num : 1
[Quant Tools Info]: Step 4, quantize activation tensor done.
[Quant Tools Info]: Step 5, quantize weight tensor done.
[Quant Tools Info]: Step 6, save Int8 tmfile done, ./mobilenet_int8.tmfile
[Quant Tools Info]: Step Evaluate, evaluate quantitative losses
cosin 0 32 avg 0.995317 ### 0.000000 0.953895 0.998249 0.969256 ...
cosin 1 32 avg 0.982403 ### 0.000000 0.902383 0.964436 0.873998 ...
cosin 2 64 avg 0.976753 ### 0.952854 0.932301 0.982766 0.958503 ...
cosin 3 64 avg 0.981889 ### 0.976637 0.981754 0.987276 0.970671 ...
cosin 4 128 avg 0.979728 ### 0.993999 0.991858 0.990438 0.992766 ...
cosin 5 128 avg 0.970351 ### 0.772556 0.989541 0.986996 0.989563 ...
cosin 6 128 avg 0.954545 ### 0.950125 0.922964 0.946804 0.972852 ...
cosin 7 128 avg 0.977192 ### 0.994728 0.972071 0.995353 0.992700 ...
cosin 8 256 avg 0.977426 ### 0.968429 0.991248 0.991274 0.994450 ...
cosin 9 256 avg 0.962224 ### 0.985255 0.969171 0.958762 0.967461 ...
cosin 10 256 avg 0.954253 ### 0.984353 0.935643 0.656188 0.929778 ...
cosin 11 256 avg 0.971987 ### 0.997596 0.967681 0.476525 0.999115 ...
cosin 12 512 avg 0.972861 ### 0.968920 0.905907 0.993918 0.622953 ...
cosin 13 512 avg 0.959161 ### 0.935686 0.000000 0.642560 0.994388 ...
cosin 14 512 avg 0.963903 ### 0.979613 0.957169 0.976440 0.902512 ...
cosin 15 512 avg 0.963226 ### 0.977065 0.965819 0.998149 0.905297 ...
cosin 16 512 avg 0.960935 ### 0.861674 0.972926 0.950579 0.987609 ...
cosin 17 512 avg 0.961057 ### 0.738472 0.987884 0.999124 0.995397 ...
cosin 18 512 avg 0.960127 ### 0.935455 0.968909 0.970831 0.981240 ...
cosin 19 512 avg 0.963755 ### 0.972628 0.992305 0.999518 0.799737 ...
cosin 20 512 avg 0.949364 ### 0.922776 0.896038 0.945079 0.971338 ...
cosin 21 512 avg 0.961256 ### 0.902256 0.896438 0.923361 0.973974 ...
cosin 22 512 avg 0.946552 ### 0.963806 0.982075 0.878965 0.929992 ...
cosin 23 512 avg 0.953677 ### 0.953880 0.996364 0.936540 0.930796 ...
cosin 24 1024 avg 0.941197 ### 0.000000 0.992507 1.000000 0.994460 ...
cosin 25 1024 avg 0.973546 ### 1.000000 0.889181 0.000000 0.998084 ...
cosin 26 1024 avg 0.869351 ### 0.522966 0.000000 0.987009 0.000000 ...
cosin 27 1 avg 0.974982 ### 0.974982
cosin 28 1 avg 0.974982 ### 0.974982
cosin 29 1 avg 0.974982 ### 0.974982
cosin 30 1 avg 0.978486 ### 0.978486

---- Tengine Int8 tmfile create success, best wish for your INT8 inference has a low accuracy loss...\(^0^)/ ----
```
Expand Down
572 changes: 572 additions & 0 deletions tools/quantize/algorithm/quant_dfq.cpp

Large diffs are not rendered by default.

Loading