mct-nightly 2.1.0.20240811.503__py3-none-any.whl → 2.1.0.20240813.442__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mct_nightly-2.1.0.20240811.503.dist-info → mct_nightly-2.1.0.20240813.442.dist-info}/METADATA +1 -1
- {mct_nightly-2.1.0.20240811.503.dist-info → mct_nightly-2.1.0.20240813.442.dist-info}/RECORD +64 -62
- model_compression_toolkit/__init__.py +1 -1
- model_compression_toolkit/constants.py +0 -7
- model_compression_toolkit/core/__init__.py +1 -0
- model_compression_toolkit/core/common/graph/functional_node.py +1 -1
- model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py +2 -0
- model_compression_toolkit/core/common/quantization/bit_width_config.py +91 -0
- model_compression_toolkit/core/common/quantization/core_config.py +8 -4
- model_compression_toolkit/core/common/quantization/quantization_config.py +1 -1
- model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +88 -22
- model_compression_toolkit/core/graph_prep_runner.py +16 -9
- model_compression_toolkit/core/keras/resource_utilization_data_facade.py +4 -3
- model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py +1 -1
- model_compression_toolkit/core/runner.py +1 -0
- model_compression_toolkit/data_generation/__init__.py +1 -1
- model_compression_toolkit/data_generation/keras/keras_data_generation.py +7 -3
- model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py +1 -1
- model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py +4 -3
- model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py +1 -1
- model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py +1 -1
- model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py +4 -3
- model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py +4 -3
- model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py +1 -1
- model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py +1 -2
- model_compression_toolkit/gptq/keras/quantization_facade.py +8 -5
- model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py +4 -3
- model_compression_toolkit/gptq/pytorch/quantization_facade.py +2 -1
- model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py +1 -1
- model_compression_toolkit/pruning/keras/pruning_facade.py +6 -3
- model_compression_toolkit/pruning/pytorch/pruning_facade.py +3 -1
- model_compression_toolkit/ptq/keras/quantization_facade.py +5 -3
- model_compression_toolkit/ptq/pytorch/quantization_facade.py +2 -1
- model_compression_toolkit/qat/keras/quantization_facade.py +7 -5
- model_compression_toolkit/qat/keras/quantizer/base_keras_qat_quantizer.py +4 -3
- model_compression_toolkit/qat/pytorch/quantization_facade.py +2 -1
- model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_quantizer.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py +2 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py +1 -0
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_keras.py +5 -3
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_pytorch.py +2 -0
- model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py +2 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py +2 -1
- model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py +4 -3
- model_compression_toolkit/trainable_infrastructure/keras/load_model.py +4 -3
- model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py +4 -3
- model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py +1 -1
- model_compression_toolkit/verify_packages.py +33 -0
- model_compression_toolkit/xquant/common/model_folding_utils.py +1 -0
- model_compression_toolkit/xquant/keras/facade_xquant_report.py +4 -3
- model_compression_toolkit/xquant/pytorch/facade_xquant_report.py +1 -1
- {mct_nightly-2.1.0.20240811.503.dist-info → mct_nightly-2.1.0.20240813.442.dist-info}/LICENSE.md +0 -0
- {mct_nightly-2.1.0.20240811.503.dist-info → mct_nightly-2.1.0.20240813.442.dist-info}/WHEEL +0 -0
- {mct_nightly-2.1.0.20240811.503.dist-info → mct_nightly-2.1.0.20240813.442.dist-info}/top_level.txt +0 -0
{mct_nightly-2.1.0.20240811.503.dist-info → mct_nightly-2.1.0.20240813.442.dist-info}/RECORD
RENAMED
@@ -1,13 +1,14 @@
|
|
1
|
-
model_compression_toolkit/__init__.py,sha256=
|
2
|
-
model_compression_toolkit/constants.py,sha256=
|
1
|
+
model_compression_toolkit/__init__.py,sha256=TfJUGlJPIuxH63h0s2ppXvyeiTCGanUIGaxWyU1e6XE,1573
|
2
|
+
model_compression_toolkit/constants.py,sha256=i4wYheBkIdQmsQA-axIpcT3YiSO1USNc-jaNiNE8w6E,3920
|
3
3
|
model_compression_toolkit/defaultdict.py,sha256=LSc-sbZYXENMCw3U9F4GiXuv67IKpdn0Qm7Fr11jy-4,2277
|
4
4
|
model_compression_toolkit/logger.py,sha256=3DByV41XHRR3kLTJNbpaMmikL8icd9e1N-nkQAY9oDk,4567
|
5
5
|
model_compression_toolkit/metadata.py,sha256=UtXS5ClK-qPoxGRuytlDGZSzgLo911dMni2EFRcg6io,3623
|
6
|
-
model_compression_toolkit/
|
6
|
+
model_compression_toolkit/verify_packages.py,sha256=TlS-K1EP-QsghqWUW7SDPkAJiUf7ryw4tvhFDe6rCUk,1405
|
7
|
+
model_compression_toolkit/core/__init__.py,sha256=tnDtL9KmT0vsOU27SsJ19TKDEbIH-tXYeGxTo5YnNUM,2077
|
7
8
|
model_compression_toolkit/core/analyzer.py,sha256=X-2ZpkH1xdXnISnw1yJvXnvV-ssoUh-9LkLISSWNqiY,3691
|
8
|
-
model_compression_toolkit/core/graph_prep_runner.py,sha256=
|
9
|
+
model_compression_toolkit/core/graph_prep_runner.py,sha256=7-b7Jd5jBVaXOWg5nSqbEyzBtdaGDbCxs8aqMV6GZ6I,11287
|
9
10
|
model_compression_toolkit/core/quantization_prep_runner.py,sha256=K9eJ7VbB_rpeyxX4yEnorOmSxFW3DkvofzxS6QI8Hp8,6454
|
10
|
-
model_compression_toolkit/core/runner.py,sha256=
|
11
|
+
model_compression_toolkit/core/runner.py,sha256=XQDNJirZkVJ_FXP72d7tbVc_Tr3Jw0Eqm_kxNHW8kPs,13636
|
11
12
|
model_compression_toolkit/core/common/__init__.py,sha256=Wh127PbXcETZX_d1PQqZ71ETK3J9XO5A-HpadGUbj6o,1447
|
12
13
|
model_compression_toolkit/core/common/base_substitutions.py,sha256=xDFSmVVs_iFSZfajytI0cuQaNRNcwHX3uqOoHgVUvxQ,1666
|
13
14
|
model_compression_toolkit/core/common/framework_implementation.py,sha256=kSg2f7wS7e2EyvX6y0eKfNTTFvVFVrB8lvldJvcPvN8,20724
|
@@ -34,7 +35,7 @@ model_compression_toolkit/core/common/graph/__init__.py,sha256=Xr-Lt_qXMdrCnnOaU
|
|
34
35
|
model_compression_toolkit/core/common/graph/base_graph.py,sha256=lg5QaBkRbmvM3tGZ0Q34S3m0CbFql3LUv5BaXLe5TG8,37824
|
35
36
|
model_compression_toolkit/core/common/graph/base_node.py,sha256=Tv_whLIy-Da0DWZIycnvZ2cf2Qa1rCwpcH8kTkkhv2s,31415
|
36
37
|
model_compression_toolkit/core/common/graph/edge.py,sha256=buoSEUZwilWBK3WeBKpJ-GeDaUA1SDdOHxDpxU_bGpk,3784
|
37
|
-
model_compression_toolkit/core/common/graph/functional_node.py,sha256=
|
38
|
+
model_compression_toolkit/core/common/graph/functional_node.py,sha256=J804e0gK_cykxkUZDI0dAB3rZYkhlacORGSoVVVw4No,3962
|
38
39
|
model_compression_toolkit/core/common/graph/graph_matchers.py,sha256=CrDoHYq4iPaflgJWmoJ1K4ziLrRogJvFTVWg8P0UcDU,4744
|
39
40
|
model_compression_toolkit/core/common/graph/graph_searches.py,sha256=2oKuW6L8hP-oL0lFO9PhQFt9fEFgVJwpc1u4fHExAtE,5128
|
40
41
|
model_compression_toolkit/core/common/graph/virtual_activation_weights_node.py,sha256=3el-A7j1oyoo1_9zq3faQp7IeRsFXFCvnrb3zZFXpU0,9803
|
@@ -70,7 +71,7 @@ model_compression_toolkit/core/common/mixed_precision/set_layer_to_bitwidth.py,s
|
|
70
71
|
model_compression_toolkit/core/common/mixed_precision/solution_refinement_procedure.py,sha256=KifDMbm7qkSfvSl6pcZzQ82naIXzeKL6aT-VsvWZYyc,7901
|
71
72
|
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/__init__.py,sha256=Rf1RcYmelmdZmBV5qOKvKWF575ofc06JFQSq83Jz99A,696
|
72
73
|
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization.py,sha256=HILF7CIn-GYPvPmTFyvjWLhuLDwSGwdBcAaKFgVYrwk,4745
|
73
|
-
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py,sha256=
|
74
|
+
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py,sha256=3ZOI-RNp5faT-U2Og7rLW9EKwBB6ooa7-RwSsWJmquo,14022
|
74
75
|
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_aggregation_methods.py,sha256=ttc8wPa_9LZansutQ2f1ss-RTzgTv739wy3qsdLzyyk,4217
|
75
76
|
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_functions_mapping.py,sha256=QhuqaECEGLnYC08iD6-2XXcU7NXbPzYf1sQcjYlGak8,1682
|
76
77
|
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_methods.py,sha256=WC1EHoNuo_lrzy4NRhGJ1cgmJ2IsFsbmP86mrVO3AVA,21506
|
@@ -98,17 +99,18 @@ model_compression_toolkit/core/common/pruning/mask/__init__.py,sha256=huHoBUcKNB
|
|
98
99
|
model_compression_toolkit/core/common/pruning/mask/per_channel_mask.py,sha256=APY8BsM9B7ZxVCH6n1xs9fSCTB_A9ou9gHrCQl1DOdI,5131
|
99
100
|
model_compression_toolkit/core/common/pruning/mask/per_simd_group_mask.py,sha256=4ohJrJHNzZk5uMnZEYkwLx2TDGzkh5kRhLGNVYNC6dc,5978
|
100
101
|
model_compression_toolkit/core/common/quantization/__init__.py,sha256=sw7LOPN1bM82o3SkMaklyH0jw-TLGK0-fl2Wq73rffI,697
|
102
|
+
model_compression_toolkit/core/common/quantization/bit_width_config.py,sha256=r6VQXgyJxX_AM1JTzv-sTcrvCTnktBfOkVP20RllNmk,4586
|
101
103
|
model_compression_toolkit/core/common/quantization/candidate_node_quantization_config.py,sha256=yU-Cr6S4wOSkDk57iH2NVe-WII0whOhLryejkomCOt4,4940
|
102
|
-
model_compression_toolkit/core/common/quantization/core_config.py,sha256=
|
104
|
+
model_compression_toolkit/core/common/quantization/core_config.py,sha256=f0uSuY9mX-vLX_1s2DemPARQlAXmLPKJKPtCArz3pZI,2670
|
103
105
|
model_compression_toolkit/core/common/quantization/debug_config.py,sha256=8G8SpE_4rb8xBp8d6mMq8R_OnXJ_1oxB2g-Lxk9EJCM,1691
|
104
106
|
model_compression_toolkit/core/common/quantization/filter_nodes_candidates.py,sha256=fwF4VILaX-u3ZaFd81xjbJuhg8Ef-JX_KfMXW0TPV-I,7136
|
105
107
|
model_compression_toolkit/core/common/quantization/node_quantization_config.py,sha256=YycYN8_JMzvSR3pTVm5dT5x4zP3yBHn0Z9agnwrvOKI,26395
|
106
|
-
model_compression_toolkit/core/common/quantization/quantization_config.py,sha256=
|
108
|
+
model_compression_toolkit/core/common/quantization/quantization_config.py,sha256=7dDs9pq9dM9ADVeIi7wyMpW9ZbAI9GLujgxt7nxvnng,7105
|
107
109
|
model_compression_toolkit/core/common/quantization/quantization_fn_selection.py,sha256=eyosbVdnCwed7oMQ19tqnh0VoyGZ_UAuD_UnNoXyBpo,2210
|
108
110
|
model_compression_toolkit/core/common/quantization/quantization_params_fn_selection.py,sha256=MwIOBZ4BlZSTIOG75PDvlI3JmZ6t8YjPc1VP9Adei60,3847
|
109
111
|
model_compression_toolkit/core/common/quantization/quantize_graph_weights.py,sha256=N005MSvx8UypVpa7XrxNrB2G732n2wHj3RmLyjTgd3I,2728
|
110
112
|
model_compression_toolkit/core/common/quantization/quantize_node.py,sha256=cdzGNWfT4MRogIU8ehs0tr3lVjnzAI-jeoS9b4TwVBo,2854
|
111
|
-
model_compression_toolkit/core/common/quantization/set_node_quantization_config.py,sha256=
|
113
|
+
model_compression_toolkit/core/common/quantization/set_node_quantization_config.py,sha256=0pZVO4wsNP815R9ZOd5ojC_OdNEeKkxYKdjggsqsZKg,17750
|
112
114
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/__init__.py,sha256=eCDGwsWYLU6z7qbEVb4TozMW_nd5VEP_iCJ6PcvyEPw,1486
|
113
115
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/error_functions.py,sha256=Fd_gxr5js-mqEwucaRR1CQAZ1W_wna19L1gAPeOzxRQ,23610
|
114
116
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/lut_kmeans_params.py,sha256=RL-PklAjGyC-26anSt8fU07a6pB_LBQFQy9o4e9giN0,8739
|
@@ -154,7 +156,7 @@ model_compression_toolkit/core/keras/default_framework_info.py,sha256=HcHplb7Icn
|
|
154
156
|
model_compression_toolkit/core/keras/keras_implementation.py,sha256=hzNC6wz1gtL2EqmRCMCQYl8AqIDJPu6rdOX6nvPgjCM,30193
|
155
157
|
model_compression_toolkit/core/keras/keras_model_validation.py,sha256=1wNV2clFdC9BzIELRLSO2uKf0xqjLqlkTJudwtCeaJk,1722
|
156
158
|
model_compression_toolkit/core/keras/keras_node_prior_info.py,sha256=HUmzEXDQ8LGX7uOYSRiLZ2TNbYxLX9J9IeAa6QYlifg,3927
|
157
|
-
model_compression_toolkit/core/keras/resource_utilization_data_facade.py,sha256=
|
159
|
+
model_compression_toolkit/core/keras/resource_utilization_data_facade.py,sha256=s56UIgiPipUQRNd2sd1xW6GFfYNMBmrocRCNtvpYLbY,4977
|
158
160
|
model_compression_toolkit/core/keras/tf_tensor_numpy.py,sha256=AJMPD_cAwf7nzTlLMf_Y1kofXkh_xm8Ji7J6yDpbAKc,2691
|
159
161
|
model_compression_toolkit/core/keras/back2framework/__init__.py,sha256=rhIiXg_nBgUZ-baE3M6SzCuQbcnq4iebY1jtJBvKHOM,808
|
160
162
|
model_compression_toolkit/core/keras/back2framework/factory_model_builder.py,sha256=UIQgOOdexycrSKombTMJVvTthR7MlrCihoqM8Kg-rnE,2293
|
@@ -216,7 +218,7 @@ model_compression_toolkit/core/pytorch/default_framework_info.py,sha256=r1XyzUFv
|
|
216
218
|
model_compression_toolkit/core/pytorch/pytorch_device_config.py,sha256=S25cuw10AW3SEN_fRAGRcG_I3wdvvQx1ehSJzPnn-UI,4404
|
217
219
|
model_compression_toolkit/core/pytorch/pytorch_implementation.py,sha256=xmcJyU-rkIDX1a_X9LILzf2Ko2z_4I4xnlHkezKH-2w,27669
|
218
220
|
model_compression_toolkit/core/pytorch/pytorch_node_prior_info.py,sha256=2LDQ7qupglHQ7o1Am7LWdfYVacfQnl-aW2N6l9det1w,3264
|
219
|
-
model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py,sha256=
|
221
|
+
model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py,sha256=xpKj99OZKT9NT0vKIl_cOe8d89d2gef1gKoNT6PFElE,4989
|
220
222
|
model_compression_toolkit/core/pytorch/utils.py,sha256=GE7T8q93I5C4As0iOias_dk9HpOvXM1N6---dJlyD60,3863
|
221
223
|
model_compression_toolkit/core/pytorch/back2framework/__init__.py,sha256=H_WixgN0elVWf3exgGYsi58imPoYDj5eYPeh6x4yfug,813
|
222
224
|
model_compression_toolkit/core/pytorch/back2framework/factory_model_builder.py,sha256=bwppTPRs6gL96nm7qPiKrNcBj4Krr0yEsOWjRF0aXmQ,2339
|
@@ -267,7 +269,7 @@ model_compression_toolkit/core/pytorch/reader/node_holders.py,sha256=7XNc7-l1MZP
|
|
267
269
|
model_compression_toolkit/core/pytorch/reader/reader.py,sha256=GEJE0QX8XJFWbYCkbRBtzttZtmmuoACLx8gw9KyAQCE,6015
|
268
270
|
model_compression_toolkit/core/pytorch/statistics_correction/__init__.py,sha256=Rf1RcYmelmdZmBV5qOKvKWF575ofc06JFQSq83Jz99A,696
|
269
271
|
model_compression_toolkit/core/pytorch/statistics_correction/apply_second_moment_correction.py,sha256=VgU24J3jf7QComHH7jonOXSkg6mO4TOch3uFkOthZvM,3261
|
270
|
-
model_compression_toolkit/data_generation/__init__.py,sha256=
|
272
|
+
model_compression_toolkit/data_generation/__init__.py,sha256=9xLN7VE3lnYVjoroYfJ24dxK_-kGEbMmMVeS1PPkPEY,1513
|
271
273
|
model_compression_toolkit/data_generation/common/__init__.py,sha256=huHoBUcKNB6BnY6YaUCcFvdyBtBI172ZoUD8ZYeNc6o,696
|
272
274
|
model_compression_toolkit/data_generation/common/constants.py,sha256=21e3ZX9WVYojexG2acTgklrBk8ZO9DjJnKpP4KHZC44,1018
|
273
275
|
model_compression_toolkit/data_generation/common/data_generation.py,sha256=W8PeOcL1fBVB1WgXSCrEw-G7AWa6MNzjTqcFbmMhrGE,6687
|
@@ -280,7 +282,7 @@ model_compression_toolkit/data_generation/keras/__init__.py,sha256=lNJ29DYxaLUPD
|
|
280
282
|
model_compression_toolkit/data_generation/keras/constants.py,sha256=sxhhGHC-INBs1nVXhyokbFi9ob4jPkSRviuc83JRsgQ,1152
|
281
283
|
model_compression_toolkit/data_generation/keras/image_operations.py,sha256=OtJ5Yz8BZVOnGqyTHwlseRe4EmoLDYxz3bblGtw6HnY,6233
|
282
284
|
model_compression_toolkit/data_generation/keras/image_pipeline.py,sha256=E-HVverorhq33xzteuwUPtOrGDIYoEEs4fZJgiqOAzQ,7043
|
283
|
-
model_compression_toolkit/data_generation/keras/keras_data_generation.py,sha256=
|
285
|
+
model_compression_toolkit/data_generation/keras/keras_data_generation.py,sha256=udPoA_bRt1IP5uPSZpGX7oFAxoJN_6zcUNc4yTh0HJk,21457
|
284
286
|
model_compression_toolkit/data_generation/keras/model_info_exctractors.py,sha256=1E5xbn0P3py4EYjdpPD9JwGr4jlc3qe1ml1py0t40b8,8026
|
285
287
|
model_compression_toolkit/data_generation/keras/optimization_utils.py,sha256=cHv2tl-_9_D14mWqzNYtKFY8q7sJfW_V__dpZqzRvIo,20546
|
286
288
|
model_compression_toolkit/data_generation/keras/optimization_functions/__init__.py,sha256=huHoBUcKNB6BnY6YaUCcFvdyBtBI172ZoUD8ZYeNc6o,696
|
@@ -296,7 +298,7 @@ model_compression_toolkit/data_generation/pytorch/image_operations.py,sha256=KUQ
|
|
296
298
|
model_compression_toolkit/data_generation/pytorch/image_pipeline.py,sha256=dcQr-67u9-ggGuS39YAvR7z-Y0NOdJintcVQ5vy1bM8,7478
|
297
299
|
model_compression_toolkit/data_generation/pytorch/model_info_exctractors.py,sha256=y6vMed6lQQj67-BXZKrAcWUNTkH8YjiUhknOV4wSpRA,9399
|
298
300
|
model_compression_toolkit/data_generation/pytorch/optimization_utils.py,sha256=vRMeUEdInPuJisiO-SKo_9miWZV90sz8GCg5MY0AqiU,18098
|
299
|
-
model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py,sha256=
|
301
|
+
model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py,sha256=cUkFg-9LWwRKy11tlASJwp1FbDx6a7sZWpJNMz01hWA,21626
|
300
302
|
model_compression_toolkit/data_generation/pytorch/optimization_functions/__init__.py,sha256=huHoBUcKNB6BnY6YaUCcFvdyBtBI172ZoUD8ZYeNc6o,696
|
301
303
|
model_compression_toolkit/data_generation/pytorch/optimization_functions/batchnorm_alignment_functions.py,sha256=dMc4zz9XfYfAT4Cxns57VgvGZWPAMfaGlWLFyCyl8TA,1968
|
302
304
|
model_compression_toolkit/data_generation/pytorch/optimization_functions/bn_layer_weighting_functions.py,sha256=We0fVMQ4oU7Y0IWQ8fKy8KpqkIiLyKoQeF9XKAQ6TH0,3317
|
@@ -315,26 +317,26 @@ model_compression_toolkit/exporter/model_exporter/keras/export_serialization_for
|
|
315
317
|
model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_keras_exporter.py,sha256=n_iXPwMomMVJTZH9M1WV7OJo11ppXOWkANu41fIlsjY,11702
|
316
318
|
model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_tflite_exporter.py,sha256=XoFGkVBikKh1BuxObrMLjfVLDIgy3X0rhmEl08CdJls,3727
|
317
319
|
model_compression_toolkit/exporter/model_exporter/keras/int8_tflite_exporter.py,sha256=iTUXaia8XLJmmWdk4iiCah9sxeIyBJy42s9_EpuPhnw,8261
|
318
|
-
model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py,sha256=
|
320
|
+
model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py,sha256=NzcX7rxLk__Kpuim_VXaOHS4tyiRtRBoERPE00GbdfA,5862
|
319
321
|
model_compression_toolkit/exporter/model_exporter/keras/mctq_keras_exporter.py,sha256=qXXkv3X_wb7t622EOHwXIxfGLGaDqh0T0y4UxREi4Bo,1976
|
320
322
|
model_compression_toolkit/exporter/model_exporter/pytorch/__init__.py,sha256=uZ2RigbY9O2PJ0Il8wPpS_s7frgg9WUGd_SHeKGyl1A,699
|
321
323
|
model_compression_toolkit/exporter/model_exporter/pytorch/base_pytorch_exporter.py,sha256=UPVkEUQCMZ4Lld6CRnEOPEmlfe5vcQZG0Q3FwRBodD4,4021
|
322
324
|
model_compression_toolkit/exporter/model_exporter/pytorch/export_serialization_format.py,sha256=bPevy6OBqng41PqytBR55e6cBEuyrUS0H8dWX4zgjQ4,967
|
323
|
-
model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py,sha256=
|
325
|
+
model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py,sha256=647EM7a_at-bGB81ES_6qBjValMnRF5-1TP7Uz6kWQg,6692
|
324
326
|
model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_torchscript_pytorch_exporter.py,sha256=ksWV2A-Njo-wAxQ_Ye2sLIZXBWJ_WNyjT7-qFFwvV2o,2897
|
325
|
-
model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py,sha256=
|
327
|
+
model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py,sha256=8vYGKa58BkasvoHejYaPwubOJPcW0s-RY79_Kkw0Hy8,6236
|
326
328
|
model_compression_toolkit/exporter/model_wrapper/__init__.py,sha256=7CF2zvpTrIEm8qnbuHnLZyTZkwBBxV24V8QA0oxGbh0,1187
|
327
329
|
model_compression_toolkit/exporter/model_wrapper/fw_agnostic/__init__.py,sha256=pKAdbTCFM_2BrZXUtTIw0ouKotrWwUDF_hP3rPwCM2k,696
|
328
330
|
model_compression_toolkit/exporter/model_wrapper/fw_agnostic/get_inferable_quantizers.py,sha256=Bd3QhAR__YC9Xmobd5qHv9ofh_rPn_eTFV0sXizcBnY,2297
|
329
331
|
model_compression_toolkit/exporter/model_wrapper/keras/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
330
|
-
model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py,sha256=
|
332
|
+
model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py,sha256=SvSGpU0IEUcy6zwChtPm_9lOSNXf4bPN0pwqvVZToik,3929
|
331
333
|
model_compression_toolkit/exporter/model_wrapper/keras/builder/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
332
|
-
model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py,sha256=
|
334
|
+
model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py,sha256=Ov28M0uJ_xZdvl9gk39psoqnBiv9i2irScKUNrEaGug,5536
|
333
335
|
model_compression_toolkit/exporter/model_wrapper/keras/builder/node_to_quantizer.py,sha256=uL6tJWC4s2IWUy8GJVwtMWpwZZioRRztfKyPJHo14xI,9442
|
334
336
|
model_compression_toolkit/exporter/model_wrapper/pytorch/__init__.py,sha256=Rf1RcYmelmdZmBV5qOKvKWF575ofc06JFQSq83Jz99A,696
|
335
|
-
model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py,sha256=
|
337
|
+
model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py,sha256=vQUGbCi8_pGoN8DwQ0IblSeN6L9t6Cr0reZNuCbBpkM,3469
|
336
338
|
model_compression_toolkit/exporter/model_wrapper/pytorch/builder/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
337
|
-
model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py,sha256=
|
339
|
+
model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py,sha256=qlPYvgpIEfvwxjjkxUB-lwsGOs7GA5eWoY5xznq7tFg,5395
|
338
340
|
model_compression_toolkit/exporter/model_wrapper/pytorch/builder/node_to_quantizer.py,sha256=4sN5z-6BXrTE5Dp2FX_jKO9ty5iZ2r4RM7XvXtDVLSI,9348
|
339
341
|
model_compression_toolkit/gptq/__init__.py,sha256=YKg-tMj9D4Yd0xW9VRD5EN1J5JrmlRbNEF2fOSgodqA,1228
|
340
342
|
model_compression_toolkit/gptq/runner.py,sha256=La12JTYjWyJW0YW4Al4TP1_Xi4JWBCEKw6FR_JQsxe0,5982
|
@@ -349,9 +351,9 @@ model_compression_toolkit/gptq/keras/gptq_keras_implementation.py,sha256=axBwnCS
|
|
349
351
|
model_compression_toolkit/gptq/keras/gptq_loss.py,sha256=rbRkF15MYd6nq4G49kcjb_dPTa-XNq9cTkrb93mXawo,6241
|
350
352
|
model_compression_toolkit/gptq/keras/gptq_training.py,sha256=NXTNsVrO9DTh0uvc8V7rFaM0fYg2OA18ZrYd-cKZ7Z4,19159
|
351
353
|
model_compression_toolkit/gptq/keras/graph_info.py,sha256=MKIfrRTRH3zCuxCR1g9ZVIFyuSSr0e0sDybqh4LDM7E,4672
|
352
|
-
model_compression_toolkit/gptq/keras/quantization_facade.py,sha256=
|
354
|
+
model_compression_toolkit/gptq/keras/quantization_facade.py,sha256=t4Jxtu8qyGbIftI5l2sb79Ydd85XM6GyDpkCqiotVF8,15711
|
353
355
|
model_compression_toolkit/gptq/keras/quantizer/__init__.py,sha256=-DK1CDXvlsnEbki4lukZLpl6Xrbo91_jcqxXlG5Eg6Q,963
|
354
|
-
model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py,sha256=
|
356
|
+
model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py,sha256=Rbl9urzkmACvVxICSEyJ02qFOBxWK0UQWtysFJzBVZw,4899
|
355
357
|
model_compression_toolkit/gptq/keras/quantizer/quant_utils.py,sha256=Vt7Qb8i4JsE4sFtcjpfM4FTXTtfV1t6SwfoNH8a_Iaw,5055
|
356
358
|
model_compression_toolkit/gptq/keras/quantizer/quantization_builder.py,sha256=FmK5cPwgLAzrDjHTWf_vbRO5s70S7iwpnjnlqEQTuGE,4408
|
357
359
|
model_compression_toolkit/gptq/keras/quantizer/regularization_factory.py,sha256=guf7ygnLsZeWnTDz4yJdE2iTkd1oE0uQAZwKnGV3OAk,1957
|
@@ -366,9 +368,9 @@ model_compression_toolkit/gptq/pytorch/gptq_loss.py,sha256=kDuWw-6zh17wZpYWh4Xa9
|
|
366
368
|
model_compression_toolkit/gptq/pytorch/gptq_pytorch_implementation.py,sha256=tECPTavxn8EEwgLaP2zvxdJH6Vg9jC0YOIMJ7857Sdc,1268
|
367
369
|
model_compression_toolkit/gptq/pytorch/gptq_training.py,sha256=-daninmlPGfKsBNPB2C3gT6rK0G5YeyJsuOLA0JlfBU,16633
|
368
370
|
model_compression_toolkit/gptq/pytorch/graph_info.py,sha256=4mVM-VvnBaA64ACVdOe6wTGHdMSa2UTLIUe7nACLcdo,4008
|
369
|
-
model_compression_toolkit/gptq/pytorch/quantization_facade.py,sha256=
|
371
|
+
model_compression_toolkit/gptq/pytorch/quantization_facade.py,sha256=TMus5LYJnTngLKot7coVax8gsIzPDYVU9m6orFPvWSY,13949
|
370
372
|
model_compression_toolkit/gptq/pytorch/quantizer/__init__.py,sha256=ZHNHo1yzye44m9_ht4UUZfTpK01RiVR3Tr74-vtnOGI,968
|
371
|
-
model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py,sha256=
|
373
|
+
model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py,sha256=fKg-PNOhGBiL-4eySS9Fyw0GkA76Pq8jT_HbJuJ8iZU,4143
|
372
374
|
model_compression_toolkit/gptq/pytorch/quantizer/quant_utils.py,sha256=OocYYRqvl7rZ37QT0hTzfJnWGiNCPskg7cziTlR7TRk,3893
|
373
375
|
model_compression_toolkit/gptq/pytorch/quantizer/quantization_builder.py,sha256=uT9N_aBj965hvQfKd67fS1B0SXGnOLVcqa3wW4b2iZE,4566
|
374
376
|
model_compression_toolkit/gptq/pytorch/quantizer/regularization_factory.py,sha256=mDWZERLwtDzqWeJUwHMVyGdlS8wPLjJ3NvZiKBP6BNA,1959
|
@@ -380,22 +382,22 @@ model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/__init__.py,sha256
|
|
380
382
|
model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/symmetric_ste.py,sha256=6uxq_w62jn8DDOt9T7VtA6jZ8jTAPcbTufKFOYpVUm4,8768
|
381
383
|
model_compression_toolkit/pruning/__init__.py,sha256=lQMZS8G0pvR1LVi53nnJHNXgLNTan_MWMdwsVxhjrow,1106
|
382
384
|
model_compression_toolkit/pruning/keras/__init__.py,sha256=3Lkr37Exk9u8811hw8hVqkGcbTQGcLjd3LLuLC3fa_E,698
|
383
|
-
model_compression_toolkit/pruning/keras/pruning_facade.py,sha256=
|
385
|
+
model_compression_toolkit/pruning/keras/pruning_facade.py,sha256=0XmUqYMrCOXfNJac-k-baegBY7G0Tg3V2HOwGknUubI,8867
|
384
386
|
model_compression_toolkit/pruning/pytorch/__init__.py,sha256=pKAdbTCFM_2BrZXUtTIw0ouKotrWwUDF_hP3rPwCM2k,696
|
385
|
-
model_compression_toolkit/pruning/pytorch/pruning_facade.py,sha256=
|
387
|
+
model_compression_toolkit/pruning/pytorch/pruning_facade.py,sha256=oStXze__7XCm0RJ_N8iRGWhMKo4JQQYSNEUq_pOVUZI,9546
|
386
388
|
model_compression_toolkit/ptq/__init__.py,sha256=Z_hkmTh7aLFei1DJKV0oNVUbrv_Q_0CTw-qD85Xf8UM,904
|
387
389
|
model_compression_toolkit/ptq/runner.py,sha256=_c1dSjlPPpsx59Vbg1buhG9bZq__OORz1VlPkwjJzoc,2552
|
388
390
|
model_compression_toolkit/ptq/keras/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
389
|
-
model_compression_toolkit/ptq/keras/quantization_facade.py,sha256=
|
391
|
+
model_compression_toolkit/ptq/keras/quantization_facade.py,sha256=DAAJPd6pKLgiwoJT-_u2dvVOO4Ox6IgJgfiUbnNRBwQ,10968
|
390
392
|
model_compression_toolkit/ptq/pytorch/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
391
|
-
model_compression_toolkit/ptq/pytorch/quantization_facade.py,sha256=
|
393
|
+
model_compression_toolkit/ptq/pytorch/quantization_facade.py,sha256=xHVTrm9Fyk_j4j8G1Pb97qacN_gn9cGYpsT1HXdTc1A,9305
|
392
394
|
model_compression_toolkit/qat/__init__.py,sha256=kj2qsZh_Ca7PncsHKcaL5EVT2H8g4hYtvaQ3KFxOkwE,1143
|
393
395
|
model_compression_toolkit/qat/common/__init__.py,sha256=6tLZ4R4pYP6QVztLVQC_jik2nES3l4uhML0qUxZrezk,829
|
394
396
|
model_compression_toolkit/qat/common/qat_config.py,sha256=zoq0Vb74vCY7WlWD8JH_KPrHDoUHSvMc3gcO53u7L2U,3394
|
395
397
|
model_compression_toolkit/qat/keras/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
396
|
-
model_compression_toolkit/qat/keras/quantization_facade.py,sha256=
|
398
|
+
model_compression_toolkit/qat/keras/quantization_facade.py,sha256=i5uRwOWLxsAcLGFAdTGEe-nLaCdcDYz6ojfhByRtIJg,17270
|
397
399
|
model_compression_toolkit/qat/keras/quantizer/__init__.py,sha256=zmYyCa25_KLCSUCGUDRslh3RCIjcRMxc_oXa54Aui-4,996
|
398
|
-
model_compression_toolkit/qat/keras/quantizer/base_keras_qat_quantizer.py,sha256=
|
400
|
+
model_compression_toolkit/qat/keras/quantizer/base_keras_qat_quantizer.py,sha256=hoY3AETaLSRP7YfecZ32tyUUj-X_DHRWkV8nALYeRlY,2202
|
399
401
|
model_compression_toolkit/qat/keras/quantizer/quant_utils.py,sha256=cBULOgWUodcBO1lHevZggdTevuDYI6tQceV86U2x6DA,2543
|
400
402
|
model_compression_toolkit/qat/keras/quantizer/quantization_builder.py,sha256=HD0JIOiqnrpqj5qk6RyzuCsSGZsDUVohdCYSePmJBNQ,5872
|
401
403
|
model_compression_toolkit/qat/keras/quantizer/lsq/__init__.py,sha256=lNJ29DYxaLUPDstRDA1PGI5r9Fulq_hvrZMlhst1Z5g,697
|
@@ -405,9 +407,9 @@ model_compression_toolkit/qat/keras/quantizer/ste_rounding/__init__.py,sha256=cc
|
|
405
407
|
model_compression_toolkit/qat/keras/quantizer/ste_rounding/symmetric_ste.py,sha256=I4KlaGv17k71IyjuSG9M0OlXlD5P0pfvKa6oCyRQ5FE,13517
|
406
408
|
model_compression_toolkit/qat/keras/quantizer/ste_rounding/uniform_ste.py,sha256=EED6LfqhX_OhDRJ9e4GwbpgNC9vq7hoXyJS2VPvG2qc,10789
|
407
409
|
model_compression_toolkit/qat/pytorch/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
408
|
-
model_compression_toolkit/qat/pytorch/quantization_facade.py,sha256=
|
410
|
+
model_compression_toolkit/qat/pytorch/quantization_facade.py,sha256=1eg0jMgFzRLYIFnG9GJnJ8U3W4IOM-4Z27s9Wq-JeOQ,13452
|
409
411
|
model_compression_toolkit/qat/pytorch/quantizer/__init__.py,sha256=xYa4C8pr9cG1f3mQQcBXO_u3IdJN-zl7leZxuXDs86w,1003
|
410
|
-
model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_quantizer.py,sha256=
|
412
|
+
model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_quantizer.py,sha256=WQSrtoWmRhyJnABrO6lwUtJruwLFZjBzLxbYh3banYI,2213
|
411
413
|
model_compression_toolkit/qat/pytorch/quantizer/quantization_builder.py,sha256=sFWGu76PZ9dSRf3L0uZI6YwLIs0biBND1tl76I1piBQ,5721
|
412
414
|
model_compression_toolkit/qat/pytorch/quantizer/quantizer_utils.py,sha256=nO7IrDRo5b9Asf21WJacE4vf5voD3UzF_oGjBoGusD4,5335
|
413
415
|
model_compression_toolkit/qat/pytorch/quantizer/lsq/__init__.py,sha256=huHoBUcKNB6BnY6YaUCcFvdyBtBI172ZoUD8ZYeNc6o,696
|
@@ -436,50 +438,50 @@ model_compression_toolkit/target_platform_capabilities/target_platform/targetpla
|
|
436
438
|
model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
437
439
|
model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py,sha256=CWind2Kd91lzBTRAh1A9sHuNw17xXhMb3gV436RpK8c,3033
|
438
440
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__init__.py,sha256=lNJ29DYxaLUPDstRDA1PGI5r9Fulq_hvrZMlhst1Z5g,697
|
439
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py,sha256=
|
440
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py,sha256=
|
441
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py,sha256=yIWwvfTpiT0wRf7GwPgK9elKbGh46jxCrkcLVEjvesU,6081
|
442
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py,sha256=eVIRpx5O0JQI7TSdw5JAWtwrG3MQ8-7hYThQvB9da5c,1528
|
441
443
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/__init__.py,sha256=1mMOREEMoNHu_KTMGDp4crN61opKWX6aFn1DrDLvqcc,717
|
442
444
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py,sha256=6mbv-fNVz559j5XCSX5e8aENUJACYuJzQcZBLPh12gU,11057
|
443
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py,sha256=
|
445
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py,sha256=Ffsr6g_E_3GzrmZ2PKl2D4bC0Czo0OtQPxlGHg1fdew,6490
|
444
446
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_pytorch.py,sha256=iCBfBmIRozoeGVPC3MjZpVyp-Nx4fC94_PKILC82K-Y,5731
|
445
447
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/__init__.py,sha256=vFDyiMymNZSRCdTgAyWn4A-tZD3vzze_PTLBSF2OYe8,721
|
446
448
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py,sha256=bx5lPJCsC5KsIg4noYycWTvbZwyPOepHDpkS6MLnX7E,10793
|
447
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py,sha256=
|
449
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py,sha256=Ucan5bShJPGzxEI2r8aG1ArRS2cIdc5FF6KluRVDjtI,6499
|
448
450
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_pytorch.py,sha256=09fbd5vEnSQDWfCkMRtYZYy7kIYiWkXDcH_dT1cAmoY,5739
|
449
451
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/__init__.py,sha256=NUuczImqUxzdfflqSdqkeAN8aCU6Tuiu6U0Fnj9Tzmw,721
|
450
452
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py,sha256=ypbOiVR0ZVHw78g6z9YIoPH0BZut6mPzqgrl6EOpIDI,10543
|
451
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py,sha256=
|
453
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py,sha256=XyMjVY9APnzqf1A-tzSy-OcNyhoIQsAQKxOiUCx5DFE,6511
|
452
454
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_pytorch.py,sha256=X853xDEF-3rcPoqxbrlYN28vvW3buSdM36c_eN_LKx8,5758
|
453
455
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/__init__.py,sha256=vKWAoQ2KkhuptS5HZB50zHG6KY8wHpHTxPugw_nGCRo,717
|
454
456
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tp_model.py,sha256=NI-QPOmg7YqPCQg8X5P1doP_mFIZ2kXm8NxcvzAg7aA,11132
|
455
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py,sha256=
|
457
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py,sha256=J2lkRjmb-BXXpaHZ_OZDS9bbDKGY-Q1Inx_1asXElwo,6593
|
456
458
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_pytorch.py,sha256=jAyTXhcChO124odtWC3bYKRH4ZyqLPkKQluJFOoyPIM,5726
|
457
459
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/__init__.py,sha256=wUk4Xsg7jpxOWYjq2K3WUwLcI185p_sVPK-ttG0ydhA,721
|
458
460
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tp_model.py,sha256=T8o20d-Kerr91l4RR09MFbqoTWAXgqjVUyW-nE43zDg,10865
|
459
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py,sha256=
|
461
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py,sha256=EgDKcY-ba9cBmQmh0-sv45GLm-HP6Cc4Rgf-KxZXTgM,6601
|
460
462
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_pytorch.py,sha256=dFQjzFlLDwoUqKNP1at1fS1N1WJadSSasRyzHl6vaB8,5733
|
461
463
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/__init__.py,sha256=gAeebYCKyIXH9-Qwze7FwvTihudzAHk_Qsg94fQbkjQ,717
|
462
464
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tp_model.py,sha256=ChprWTT6hLoKBM7iTVhQWQZYAXM_XOMHaK8PC8GEu30,12018
|
463
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py,sha256=
|
465
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py,sha256=gMQ2qNm7T5FukkR_3DwVB1B41CMEW-KnrT-mPDMfCL8,6593
|
464
466
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_pytorch.py,sha256=HRo0W5l4IJesr_np4ZhXoMk_xfdiV53LgamquQIryJA,5800
|
465
467
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/__init__.py,sha256=C2kwyDE1-rtukkbNSoKRv9q8Nt2GOCaBbl0BdOr3goA,721
|
466
468
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tp_model.py,sha256=YANvT38YiwO9jE3dC04wHDZBGJQ34hGTvKygHwwbI_U,11751
|
467
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py,sha256=
|
469
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py,sha256=XM6qBLIvzsmdFf-AZq5WOlORK2GXC_X-gulReNxHb9E,6601
|
468
470
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_pytorch.py,sha256=nP05jqvh6uaj30a3W7zEkJfKtqfP0Nz5bobwRqbYrdM,5807
|
469
471
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/__init__.py,sha256=tHTUvsaerSfbe22pU0kIDauPpFD7Pq5EmZytVIDkHz4,717
|
470
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py,sha256=
|
471
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_keras.py,sha256=
|
472
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_pytorch.py,sha256=
|
472
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py,sha256=purcM7kLdh2HyJaxzROAoVSwz1Xlo6GPEe8JQKfMcuM,12911
|
473
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_keras.py,sha256=j57CrY5w4Bxpwx35yi3pYJtLyDgq3YOq_crTmSKarUY,6803
|
474
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_pytorch.py,sha256=DVBWc_97B0s9PHHPYRoT5FFYs8tcGY7LC3GU1TqP88c,5986
|
473
475
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
474
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py,sha256=
|
475
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py,sha256=
|
476
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py,sha256=is00rNrDmmirYsyMtMkWz0DwOA92-x7hAJwpd6z1n2E,2806
|
477
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py,sha256=CXC-HQolSDu7j8V-Xm-SWGCd74gXB3XnAkEhI_TVbIQ,1516
|
476
478
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/__init__.py,sha256=t4JKsPcor-7KSCKzIwuaBv0NLNwfhuewAQGlDl6iBeo,717
|
477
479
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tp_model.py,sha256=k1cYUXpVNAvuBVUinSZGu_wDZQvUGAp8e4x9xHBUAOE,8275
|
478
480
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_keras.py,sha256=h_hePXCggG2qktLuoNAOE1XNtc0qEwMyky7om1c8eC8,4483
|
479
481
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_pytorch.py,sha256=65WJPRCjliXEUL4AjZRxcyVS3y7KHTMDdkqy6D95kRw,3814
|
480
482
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__init__.py,sha256=cco4TmeIDIh32nj9ZZXVkws4dd9F2UDrmjKzTN8G0V0,697
|
481
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py,sha256=
|
482
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py,sha256=
|
483
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py,sha256=_tf41m40fbax27y5A5JoGHw4p5NY-Kb3c8oxSTnRD_E,2802
|
484
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py,sha256=LIUUQn42YU7oD2YfnEgP0gfqm7Hq9e0fD_8418aKzKI,1511
|
483
485
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/__init__.py,sha256=t4JKsPcor-7KSCKzIwuaBv0NLNwfhuewAQGlDl6iBeo,717
|
484
486
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py,sha256=rxDkISGCxTB2RaVm59zJWxaJKxGgt4uceDgQ_9E_RmI,10033
|
485
487
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_keras.py,sha256=-4vNf2Q6c_rgaac19AFO8hG4ANaPfgNPf0kN44mL6TQ,6830
|
@@ -493,13 +495,13 @@ model_compression_toolkit/trainable_infrastructure/common/get_quantizers.py,sha2
|
|
493
495
|
model_compression_toolkit/trainable_infrastructure/common/quant_utils.py,sha256=zdiew1jwR7tUKm9XWlHnAPxIZsAdKqbzzC2vH02j5wA,1505
|
494
496
|
model_compression_toolkit/trainable_infrastructure/common/trainable_quantizer_config.py,sha256=My5Wz34jPOyh8z33OTpKnOobRB0cpO_Qgmtsd5lizHo,4791
|
495
497
|
model_compression_toolkit/trainable_infrastructure/keras/__init__.py,sha256=huHoBUcKNB6BnY6YaUCcFvdyBtBI172ZoUD8ZYeNc6o,696
|
496
|
-
model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py,sha256=
|
498
|
+
model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py,sha256=9_6ztYvXOBB7_PNf1Syi5zPTwLi5xfbYiKd_UYJ6hwo,4113
|
497
499
|
model_compression_toolkit/trainable_infrastructure/keras/config_serialization.py,sha256=txdWXdZoHazg-3MDPb9P-oXRM92LRn2G_8woEplwKaI,4360
|
498
|
-
model_compression_toolkit/trainable_infrastructure/keras/load_model.py,sha256
|
499
|
-
model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py,sha256=
|
500
|
+
model_compression_toolkit/trainable_infrastructure/keras/load_model.py,sha256=DJHibcLo-UCuHV6UPLeVd7dKmPfkGXEiLqCCqvQrISM,3769
|
501
|
+
model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py,sha256=aBtXxCAbnqn4PUa3wP55M0W5gKIQVGppLtfgFQ48T6s,5585
|
500
502
|
model_compression_toolkit/trainable_infrastructure/keras/quantizer_utils.py,sha256=MVwXNymmFRB2NXIBx4e2mdJ1RfoHxRPYRgjb1MQP5kY,1797
|
501
503
|
model_compression_toolkit/trainable_infrastructure/pytorch/__init__.py,sha256=huHoBUcKNB6BnY6YaUCcFvdyBtBI172ZoUD8ZYeNc6o,696
|
502
|
-
model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py,sha256=
|
504
|
+
model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py,sha256=hbE_KV3IrBl4XZPgat5gMM0j1Nkv6iwPXzYhonmXBAE,2902
|
503
505
|
model_compression_toolkit/xquant/__init__.py,sha256=vdmr8sQw3jIBLF9ck7qrskPoXzDKtksHWlMOkU1JUnQ,1003
|
504
506
|
model_compression_toolkit/xquant/common/__init__.py,sha256=ycb1Xt7PtixY2Uabr94JGSwBMcct66O8ZMVf3Qa3ud8,719
|
505
507
|
model_compression_toolkit/xquant/common/constants.py,sha256=k-9LOEv1n_m8dV4chX0dNOTWyhhF7S00E0lkUxtO84E,1592
|
@@ -507,27 +509,27 @@ model_compression_toolkit/xquant/common/core_report_generator.py,sha256=GHnJJpK6
|
|
507
509
|
model_compression_toolkit/xquant/common/dataset_utils.py,sha256=91uXF9UwxdY7BvUT0FNkFm8a69c8oK8Xdl-y7lbuJxk,1649
|
508
510
|
model_compression_toolkit/xquant/common/framework_report_utils.py,sha256=YE49232ESflW6ZaUABF1pk_GGHBxa_F1X5oRN2Jogys,3734
|
509
511
|
model_compression_toolkit/xquant/common/model_analyzer.py,sha256=T_8OetIQNqR0nkfSatWsEceXSPYpHfYjboBPIyR03-w,3953
|
510
|
-
model_compression_toolkit/xquant/common/model_folding_utils.py,sha256=
|
512
|
+
model_compression_toolkit/xquant/common/model_folding_utils.py,sha256=7XMNmsngJgCPVjsuMNt6g4hzhkviB45qUmNRe9jQE7g,4815
|
511
513
|
model_compression_toolkit/xquant/common/similarity_calculator.py,sha256=yCs_vlOThLzq7z-u2PkcEErLj7N7qCBPpRa6_5h34J8,10460
|
512
514
|
model_compression_toolkit/xquant/common/similarity_functions.py,sha256=Atah1otdX9oUUch2JK-p-e291QHtkP_c4DfLG9WWo1Y,2935
|
513
515
|
model_compression_toolkit/xquant/common/tensorboard_utils.py,sha256=85ABGQGKPZzctyZCHLazK0GxZ2ZUtQA3hZ_9fPiuMs0,6533
|
514
516
|
model_compression_toolkit/xquant/common/xquant_config.py,sha256=Qt56cra2tU1PeHlLx_Cqztf5q-ED8MPelhb8coSumFw,1675
|
515
517
|
model_compression_toolkit/xquant/keras/__init__.py,sha256=zbtceCVRsi-Gvl_pOmq5laqVqu55vAU1ie2FR2RK1Po,709
|
516
518
|
model_compression_toolkit/xquant/keras/dataset_utils.py,sha256=quvVymhvpcPIOneCu5J6K_QAqBHOCIj8IxZxSN2fItA,2258
|
517
|
-
model_compression_toolkit/xquant/keras/facade_xquant_report.py,sha256=
|
519
|
+
model_compression_toolkit/xquant/keras/facade_xquant_report.py,sha256=7pf3PUMAj7BCsbRc6Up6KOWk1g_9wVXwoGUbtrSgX7Y,3502
|
518
520
|
model_compression_toolkit/xquant/keras/keras_report_utils.py,sha256=zUvhqehKKRHEkk6y8g1xQH47b6fTMuPy6stGEZ6mI24,3081
|
519
521
|
model_compression_toolkit/xquant/keras/model_analyzer.py,sha256=WXi9BPI9_TzRWn50lM1i-6cwPPRW0p43Shg_xpHFclU,6521
|
520
522
|
model_compression_toolkit/xquant/keras/similarity_functions.py,sha256=P2qMJAo94Sz_BCao-bnhEeewKtjeLLDDH2r9luDXJ04,2710
|
521
523
|
model_compression_toolkit/xquant/keras/tensorboard_utils.py,sha256=635ZcK6_5jdpa7G6Tjq0hkveEYLJQyYRXCFCKL0EioM,9163
|
522
524
|
model_compression_toolkit/xquant/pytorch/__init__.py,sha256=ycb1Xt7PtixY2Uabr94JGSwBMcct66O8ZMVf3Qa3ud8,719
|
523
525
|
model_compression_toolkit/xquant/pytorch/dataset_utils.py,sha256=KFKiFkhIPpEr1ZH5jekZFrgs20VzzKVxSV9YMgH68yI,2894
|
524
|
-
model_compression_toolkit/xquant/pytorch/facade_xquant_report.py,sha256=
|
526
|
+
model_compression_toolkit/xquant/pytorch/facade_xquant_report.py,sha256=sr_7TkmkRE0FhdJ7BwXGLFELmR4l_nK7IlTys6oYgoU,3179
|
525
527
|
model_compression_toolkit/xquant/pytorch/model_analyzer.py,sha256=b93o800yVB3Z-ihJBLy5Cic-MQiUM_ZGV6SCXoNdscE,5549
|
526
528
|
model_compression_toolkit/xquant/pytorch/pytorch_report_utils.py,sha256=bOc-hFL3gdoSM1Th_S2N_-9JJSlPGpZCTx_QLJHS6lg,3388
|
527
529
|
model_compression_toolkit/xquant/pytorch/similarity_functions.py,sha256=CERxq5K8rqaiE-DlwhZBTUd9x69dtYJlkHOPLB54vm8,2354
|
528
530
|
model_compression_toolkit/xquant/pytorch/tensorboard_utils.py,sha256=yjghWXxqOtT-QXoXBOuJyh45yUpFI0pKjdDegum2i68,9705
|
529
|
-
mct_nightly-2.1.0.
|
530
|
-
mct_nightly-2.1.0.
|
531
|
-
mct_nightly-2.1.0.
|
532
|
-
mct_nightly-2.1.0.
|
533
|
-
mct_nightly-2.1.0.
|
531
|
+
mct_nightly-2.1.0.20240813.442.dist-info/LICENSE.md,sha256=aYSSIb-5AFPeITTvXm1UAoe0uYBiMmSS8flvXaaFUks,10174
|
532
|
+
mct_nightly-2.1.0.20240813.442.dist-info/METADATA,sha256=BuAU5P_gzUVjd4HUhpx1TKL9kRd878YqLWwXvz8pglY,19718
|
533
|
+
mct_nightly-2.1.0.20240813.442.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
|
534
|
+
mct_nightly-2.1.0.20240813.442.dist-info/top_level.txt,sha256=gsYA8juk0Z-ZmQRKULkb3JLGdOdz8jW_cMRjisn9ga4,26
|
535
|
+
mct_nightly-2.1.0.20240813.442.dist-info/RECORD,,
|
@@ -27,4 +27,4 @@ from model_compression_toolkit import data_generation
|
|
27
27
|
from model_compression_toolkit import pruning
|
28
28
|
from model_compression_toolkit.trainable_infrastructure.keras.load_model import keras_load_quantized_model
|
29
29
|
|
30
|
-
__version__ = "2.1.0.
|
30
|
+
__version__ = "2.1.0.20240813.000442"
|
@@ -13,17 +13,10 @@
|
|
13
13
|
# limitations under the License.
|
14
14
|
# ==============================================================================
|
15
15
|
|
16
|
-
import importlib
|
17
16
|
|
18
17
|
# Supported frameworks in MCT:
|
19
18
|
TENSORFLOW = 'tensorflow'
|
20
19
|
PYTORCH = 'pytorch'
|
21
|
-
FOUND_TF = importlib.util.find_spec(TENSORFLOW) is not None
|
22
|
-
FOUND_TORCH = importlib.util.find_spec("torch") is not None
|
23
|
-
FOUND_TORCHVISION = importlib.util.find_spec("torchvision") is not None
|
24
|
-
FOUND_ONNX = importlib.util.find_spec("onnx") is not None
|
25
|
-
FOUND_ONNXRUNTIME = importlib.util.find_spec("onnxruntime") is not None
|
26
|
-
FOUND_SONY_CUSTOM_LAYERS = importlib.util.find_spec('sony_custom_layers') is not None
|
27
20
|
|
28
21
|
# Metadata fields
|
29
22
|
MCT_VERSION = 'mct_version'
|
@@ -19,6 +19,7 @@ from model_compression_toolkit.core.common.quantization.debug_config import Debu
|
|
19
19
|
from model_compression_toolkit.core.common.quantization import quantization_config
|
20
20
|
from model_compression_toolkit.core.common.mixed_precision import mixed_precision_quantization_config
|
21
21
|
from model_compression_toolkit.core.common.quantization.quantization_config import QuantizationConfig, QuantizationErrorMethod, DEFAULTCONFIG
|
22
|
+
from model_compression_toolkit.core.common.quantization.bit_width_config import BitWidthConfig
|
22
23
|
from model_compression_toolkit.core.common.quantization.core_config import CoreConfig
|
23
24
|
from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization import ResourceUtilization
|
24
25
|
from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import MixedPrecisionQuantizationConfig
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from typing import Dict, Any, Tuple, Type, List, Union
|
2
2
|
|
3
|
-
from model_compression_toolkit.
|
3
|
+
from model_compression_toolkit.verify_packages import FOUND_TF
|
4
4
|
from model_compression_toolkit.core.common.graph.base_node import BaseNode
|
5
5
|
import numpy as np
|
6
6
|
|
@@ -67,6 +67,7 @@ def compute_resource_utilization_data(in_model: Any,
|
|
67
67
|
fw_info,
|
68
68
|
fw_impl,
|
69
69
|
tpc,
|
70
|
+
bit_width_config=core_config.bit_width_config,
|
70
71
|
mixed_precision_enable=mixed_precision_enable)
|
71
72
|
|
72
73
|
# Compute parameters sum
|
@@ -227,6 +228,7 @@ def requires_mixed_precision(in_model: Any,
|
|
227
228
|
fw_info,
|
228
229
|
fw_impl,
|
229
230
|
tpc,
|
231
|
+
bit_width_config=core_config.bit_width_config,
|
230
232
|
mixed_precision_enable=False)
|
231
233
|
# Compute max weights memory in bytes
|
232
234
|
weights_memory_by_layer_bytes, _ = compute_nodes_weights_params(transformed_graph, fw_info)
|
@@ -0,0 +1,91 @@
|
|
1
|
+
# Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
# ==============================================================================
|
15
|
+
from typing import List, Union, Dict
|
16
|
+
|
17
|
+
from model_compression_toolkit.core.common import Graph
|
18
|
+
from model_compression_toolkit.core.common.matchers.node_matcher import BaseNodeMatcher
|
19
|
+
from model_compression_toolkit.logger import Logger
|
20
|
+
|
21
|
+
|
22
|
+
class ManualBitWidthSelection:
|
23
|
+
"""
|
24
|
+
Class to encapsulate the manual bit width selection configuration for a specific filter.
|
25
|
+
|
26
|
+
Attributes:
|
27
|
+
filter (BaseNodeMatcher): The filter used to select nodes for bit width manipulation.
|
28
|
+
bit_width (int): The bit width to be applied to the selected nodes.
|
29
|
+
"""
|
30
|
+
def __init__(self,
|
31
|
+
filter: BaseNodeMatcher,
|
32
|
+
bit_width: int):
|
33
|
+
self.filter = filter
|
34
|
+
self.bit_width = bit_width
|
35
|
+
|
36
|
+
|
37
|
+
class BitWidthConfig:
|
38
|
+
"""
|
39
|
+
Class to manage manual bit-width configurations.
|
40
|
+
|
41
|
+
Attributes:
|
42
|
+
manual_activation_bit_width_selection_list (List[ManualBitWidthSelection]): A list of ManualBitWidthSelection objects defining manual bit-width configurations.
|
43
|
+
"""
|
44
|
+
def __init__(self,
|
45
|
+
manual_activation_bit_width_selection_list: List[ManualBitWidthSelection] = None):
|
46
|
+
self.manual_activation_bit_width_selection_list = [] if manual_activation_bit_width_selection_list is None else manual_activation_bit_width_selection_list
|
47
|
+
|
48
|
+
def __repr__(self):
|
49
|
+
# Used for debugging, thus no cover.
|
50
|
+
return str(self.__dict__) # pragma: no cover
|
51
|
+
|
52
|
+
def set_manual_activation_bit_width(self,
|
53
|
+
filters: Union[List[BaseNodeMatcher], BaseNodeMatcher],
|
54
|
+
bit_widths: Union[List[int], int]):
|
55
|
+
"""
|
56
|
+
Add a manual bit-width selection to the configuration.
|
57
|
+
|
58
|
+
Args:
|
59
|
+
filter (Union[List[BaseNodeMatcher], BaseNodeMatcher]): The filters used to select nodes for bit-width manipulation.
|
60
|
+
bit_width (Union[List[int], int]): The bit widths to be applied to the selected nodes.
|
61
|
+
If a single value is given it will be applied to all the filters
|
62
|
+
"""
|
63
|
+
filters = [filters] if not isinstance(filters, list) else filters
|
64
|
+
bit_widths = [bit_widths] if not isinstance(bit_widths, list) else bit_widths
|
65
|
+
if len(bit_widths) > 1 and len(bit_widths) != len(filters):
|
66
|
+
Logger.critical(f"Configuration Error: The number of provided bit_width values {len(bit_widths)} "
|
67
|
+
f"must match the number of filters {len(filters)}, or a single bit_width value "
|
68
|
+
f"should be provided for all filters.")
|
69
|
+
elif len(bit_widths) == 1 and len(filters) > 1:
|
70
|
+
bit_widths = [bit_widths[0] for f in filters]
|
71
|
+
for bit_width, filter in zip (bit_widths, filters):
|
72
|
+
self.manual_activation_bit_width_selection_list += [ManualBitWidthSelection(filter, bit_width)]
|
73
|
+
|
74
|
+
def get_nodes_to_manipulate_bit_widths(self, graph: Graph) -> Dict:
|
75
|
+
"""
|
76
|
+
Retrieve nodes from the graph that need their bit-widths changed according to the manual bit-width selections.
|
77
|
+
|
78
|
+
Args:
|
79
|
+
graph (Graph): The graph containing the nodes to be filtered and manipulated.
|
80
|
+
|
81
|
+
Returns:
|
82
|
+
Dict: A dictionary mapping nodes to their new bit-widths.
|
83
|
+
"""
|
84
|
+
nodes_to_change_bit_width = {}
|
85
|
+
for manual_bit_width_selection in self.manual_activation_bit_width_selection_list:
|
86
|
+
filtered_nodes = graph.filter(manual_bit_width_selection.filter)
|
87
|
+
if len(filtered_nodes) == 0:
|
88
|
+
Logger.critical(f"Node Filtering Error: No nodes found in the graph for filter {manual_bit_width_selection.filter.__dict__} "
|
89
|
+
f"to change their bit width to {manual_bit_width_selection.bit_width}.")
|
90
|
+
nodes_to_change_bit_width.update({n: manual_bit_width_selection.bit_width for n in filtered_nodes})
|
91
|
+
return nodes_to_change_bit_width
|
@@ -12,6 +12,7 @@
|
|
12
12
|
# See the License for the specific language governing permissions and
|
13
13
|
# limitations under the License.
|
14
14
|
# ==============================================================================
|
15
|
+
from model_compression_toolkit.core.common.quantization.bit_width_config import BitWidthConfig
|
15
16
|
from model_compression_toolkit.core.common.quantization.quantization_config import QuantizationConfig
|
16
17
|
from model_compression_toolkit.core.common.quantization.debug_config import DebugConfig
|
17
18
|
from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import MixedPrecisionQuantizationConfig
|
@@ -22,9 +23,10 @@ class CoreConfig:
|
|
22
23
|
A class to hold the configurations classes of the MCT-core.
|
23
24
|
"""
|
24
25
|
def __init__(self,
|
25
|
-
quantization_config: QuantizationConfig =
|
26
|
+
quantization_config: QuantizationConfig = None,
|
26
27
|
mixed_precision_config: MixedPrecisionQuantizationConfig = None,
|
27
|
-
|
28
|
+
bit_width_config: BitWidthConfig = None,
|
29
|
+
debug_config: DebugConfig = None
|
28
30
|
):
|
29
31
|
"""
|
30
32
|
|
@@ -32,10 +34,12 @@ class CoreConfig:
|
|
32
34
|
quantization_config (QuantizationConfig): Config for quantization.
|
33
35
|
mixed_precision_config (MixedPrecisionQuantizationConfig): Config for mixed precision quantization.
|
34
36
|
If None, a default MixedPrecisionQuantizationConfig is used.
|
37
|
+
bit_width_config (BitWidthConfig): Config for manual bit-width selection.
|
35
38
|
debug_config (DebugConfig): Config for debugging and editing the network quantization process.
|
36
39
|
"""
|
37
|
-
self.quantization_config = quantization_config
|
38
|
-
self.
|
40
|
+
self.quantization_config = QuantizationConfig() if quantization_config is None else quantization_config
|
41
|
+
self.bit_width_config = BitWidthConfig() if bit_width_config is None else bit_width_config
|
42
|
+
self.debug_config = DebugConfig() if debug_config is None else debug_config
|
39
43
|
|
40
44
|
if mixed_precision_config is None:
|
41
45
|
self.mixed_precision_config = MixedPrecisionQuantizationConfig()
|
@@ -56,7 +56,7 @@ class QuantizationConfig:
|
|
56
56
|
weights_second_moment_correction: bool = False,
|
57
57
|
input_scaling: bool = False,
|
58
58
|
softmax_shift: bool = False,
|
59
|
-
shift_negative_activation_correction: bool =
|
59
|
+
shift_negative_activation_correction: bool = True,
|
60
60
|
activation_channel_equalization: bool = False,
|
61
61
|
z_threshold: float = math.inf,
|
62
62
|
min_threshold: float = MIN_THRESHOLD,
|