mct-nightly 2.2.0.20250113.134913__tar.gz → 2.2.0.20250114.134534__tar.gz
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.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/PKG-INFO +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/mct_nightly.egg-info/PKG-INFO +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/mct_nightly.egg-info/SOURCES.txt +15 -17
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/__init__.py +2 -2
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/framework_info.py +1 -3
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/fusion/layer_fusing.py +6 -5
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/base_graph.py +20 -21
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/base_node.py +44 -17
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_candidates_filter.py +7 -6
- mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/core/common/mixed_precision/mixed_precision_ru_helper.py +187 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_facade.py +0 -6
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_manager.py +35 -162
- mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization.py +100 -0
- mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_calculator.py +668 -0
- mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py +140 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/search_methods/linear_programming.py +74 -51
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/sensitivity_evaluation.py +3 -5
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/solution_refinement_procedure.py +2 -2
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/greedy_mask_calculator.py +7 -6
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/mask/per_channel_mask.py +0 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/mask/per_simd_group_mask.py +0 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/pruner.py +5 -3
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/bit_width_config.py +6 -12
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/filter_nodes_candidates.py +1 -2
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/node_quantization_config.py +2 -2
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_config.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_fn_selection.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_fn_selection.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_generation/error_functions.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_generation/power_of_two_selection.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_activations_computation.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_generation/symmetric_selection.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_generation/uniform_selection.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +15 -14
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/batchnorm_reconstruction.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/batchnorm_refusing.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/shift_negative_activation.py +5 -5
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/graph_prep_runner.py +12 -11
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/default_framework_info.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/mixed_precision/configurable_weights_quantizer.py +1 -2
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/resource_utilization_data_facade.py +5 -6
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/back2framework/pytorch_model_builder.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/default_framework_info.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_activation_quantizer.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_weights_quantizer.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py +4 -5
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/runner.py +33 -60
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/keras/builder/node_to_quantizer.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/node_to_quantizer.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/quantization_facade.py +8 -9
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/symmetric_soft_quantizer.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/uniform_soft_quantizer.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/symmetric_ste.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/quantization_facade.py +8 -9
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/symmetric_soft_quantizer.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/uniform_soft_quantizer.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/symmetric_ste.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/metadata.py +11 -10
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/pruning/keras/pruning_facade.py +5 -6
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/pruning/pytorch/pruning_facade.py +6 -7
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/ptq/keras/quantization_facade.py +8 -9
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/ptq/pytorch/quantization_facade.py +8 -9
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/quantization_facade.py +5 -6
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/quantizer/lsq/symmetric_lsq.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/symmetric_ste.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/pytorch/quantization_facade.py +5 -9
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/pytorch/quantizer/lsq/symmetric_lsq.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/pytorch/quantizer/lsq/uniform_lsq.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/symmetric_ste.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/uniform_ste.py +1 -1
- {mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/target_platform → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities}/__init__.py +7 -7
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/constants.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/schema/mct_current_schema.py +2 -2
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/schema/schema_functions.py +18 -18
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/schema/v1.py +13 -13
- {mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/target_platform → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities}/targetplatform2framework/__init__.py +6 -6
- {mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/target_platform → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities}/targetplatform2framework/attach2fw.py +10 -10
- {mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/target_platform → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities}/targetplatform2framework/attach2keras.py +3 -3
- {mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/target_platform → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities}/targetplatform2framework/attach2pytorch.py +3 -2
- {mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/target_platform → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities}/targetplatform2framework/current_tpc.py +8 -8
- mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/framework_quantization_capabilities.py +40 -40
- mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities_component.py → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/framework_quantization_capabilities_component.py +2 -2
- {mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/target_platform → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities}/targetplatform2framework/layer_filter_params.py +0 -1
- {mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/target_platform → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities}/targetplatform2framework/operations_to_layers.py +8 -8
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/tpc_io_handler.py +24 -24
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py +18 -18
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py +3 -3
- mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc.py +31 -32
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py +3 -3
- mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tp_model.py → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc.py +27 -27
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py +4 -4
- mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc.py +27 -27
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/common/get_quantizers.py +1 -2
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/common/trainable_quantizer_config.py +2 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/symmetric_lsq.py +1 -2
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/config_serialization.py +1 -1
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/common/model_folding_utils.py +7 -6
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/keras/keras_report_utils.py +4 -4
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/pytorch/pytorch_report_utils.py +3 -3
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/tests/test_suite.py +3 -3
- mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization.py +0 -126
- mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py +0 -317
- mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_aggregation_methods.py +0 -105
- mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_functions_mapping.py +0 -33
- mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_methods.py +0 -528
- mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__init__.py +0 -14
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/LICENSE.md +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/README.md +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/mct_nightly.egg-info/dependency_links.txt +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/mct_nightly.egg-info/requires.txt +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/mct_nightly.egg-info/top_level.txt +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/constants.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/analyzer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/back2framework/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/back2framework/base_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/base_substitutions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/collectors/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/collectors/base_collector.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/collectors/histogram_collector.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/collectors/mean_collector.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/collectors/min_max_per_channel_collector.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/collectors/statistics_collector.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/framework_implementation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/fusion/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/fusion/graph_fuser.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/edge.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/functional_node.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/graph_matchers.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/graph_searches.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/memory_graph/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/memory_graph/bipartite_graph.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/memory_graph/compute_graph_max_cut.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/memory_graph/cut.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/memory_graph/max_cut_astar.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/memory_graph/memory_element.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/memory_graph/memory_graph.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/graph/virtual_activation_weights_node.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/hessian/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/hessian/hessian_info_service.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/hessian/hessian_info_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/hessian/hessian_scores_calculator.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/hessian/hessian_scores_request.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/matchers/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/matchers/base_graph_filter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/matchers/base_matcher.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/matchers/edge_matcher.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/matchers/function.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/matchers/node_matcher.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/matchers/walk_matcher.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/memory_computation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/bit_width_setter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/configurable_quant_id.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/configurable_quantizer_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/distance_weighting.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_quantization_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/search_methods/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/mixed_precision/set_layer_to_bitwidth.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/model_builder_mode.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/model_collector.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/model_validation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/network_editors/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/network_editors/actions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/network_editors/edit_network.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/network_editors/node_filters.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/node_prior_info.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/channels_grouping.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/importance_metrics/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/importance_metrics/base_importance_metric.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/importance_metrics/importance_metric_factory.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/importance_metrics/lfh_importance_metric.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/mask/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/memory_calculator.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/prune_graph.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/pruning_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/pruning_framework_implementation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/pruning_info.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/pruning/pruning_section.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/candidate_node_quantization_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/core_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/debug_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_generation/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_generation/lut_kmeans_params.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_generation/outlier_filter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_computation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_search.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_weights_computation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantize_graph_weights.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantize_node.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantizers/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantizers/lut_kmeans_quantizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantizers/quantizers_helpers.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/quantization/quantizers/uniform_quantizers.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/similarity_analyzer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/statistics_correction/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/statistics_correction/apply_activation_bias_correction_to_graph.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/statistics_correction/apply_bias_correction_to_graph.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/statistics_correction/apply_second_moment_correction_to_graph.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/statistics_correction/compute_activation_bias_correction_of_graph.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/statistics_correction/compute_bias_correction_of_graph.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/statistics_correction/statistics_correction.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/apply_substitutions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/batchnorm_folding.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/linear_collapsing.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/linear_collapsing_substitution.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/remove_identity.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/residual_collapsing.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/scale_equalization.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/softmax_shift.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/substitutions/weights_activation_split.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/user_info.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/visualization/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/visualization/final_config_visualizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/visualization/nn_visualizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/common/visualization/tensorboard_writer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/back2framework/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/back2framework/factory_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/back2framework/float_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/back2framework/instance_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/back2framework/keras_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/back2framework/mixed_precision_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/back2framework/quantized_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/constants.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/custom_layer_validation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/data_util.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/activation_decomposition.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/conv_funcs_to_layer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/dwconv_to_conv.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/input_scaling.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/linear_collapsing.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/matmul_substitution.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/remove_identity.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/residual_collapsing.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/scale_equalization.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/separableconv_decomposition.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/sigmoid_mul_to_swish.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/softmax_shift.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/weights_activation_split.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/hessian/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/hessian/activation_hessian_scores_calculator_keras.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/hessian/hessian_scores_calculator_keras.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/hessian/weights_hessian_scores_calculator_keras.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/keras_implementation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/keras_model_validation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/keras_node_prior_info.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/mixed_precision/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/mixed_precision/configurable_activation_quantizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/pruning/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/pruning/pruning_keras_implementation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/quantizer/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/quantizer/fake_quant_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/quantizer/lut_fake_quant.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/reader/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/reader/common.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/reader/connectivity_handler.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/reader/nested_model/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/reader/nested_model/edges_merger.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/reader/nested_model/nested_model_handler.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/reader/nested_model/nodes_merger.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/reader/nested_model/outputs_merger.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/reader/node_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/reader/reader.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/statistics_correction/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/statistics_correction/apply_second_moment_correction.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/statistics_correction/keras_compute_activation_bias_correction_of_graph.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/tf_tensor_numpy.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/keras/visualization/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/back2framework/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/back2framework/factory_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/back2framework/float_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/back2framework/instance_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/back2framework/mixed_precision_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/quantized_layer_wrapper.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/wrapper_quantize_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/back2framework/quantized_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/constants.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/data_util.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/const_holder_conv.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_batch_norm.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_layer_norm.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_linear.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/linear_collapsing.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/matmul_decomposition.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/remove_identity.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/reshape_with_static_shapes.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/residual_collapsing.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scale_equalization.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scaled_dot_product_attention.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/softmax_shift.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/transform_function_call_method.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/weights_activation_split.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/hessian/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/hessian/activation_hessian_scores_calculator_pytorch.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/hessian/hessian_scores_calculator_pytorch.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/hessian/weights_hessian_scores_calculator_pytorch.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/mixed_precision/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/pruning/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/pruning/pruning_pytorch_implementation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/pytorch_device_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/pytorch_implementation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/pytorch_node_prior_info.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/quantizer/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/quantizer/fake_quant_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/quantizer/lut_fake_quant.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/reader/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/reader/graph_builders.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/reader/node_holders.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/reader/reader.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/statistics_correction/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/statistics_correction/apply_second_moment_correction.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/statistics_correction/pytorch_compute_activation_bias_correction_of_graph.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/pytorch/utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/core/quantization_prep_runner.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/common/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/common/constants.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/common/data_generation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/common/data_generation_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/common/enums.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/common/image_pipeline.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/common/model_info_exctractors.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/common/optimization_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/constants.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/image_operations.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/image_pipeline.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/keras_data_generation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/model_info_exctractors.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/optimization_functions/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/optimization_functions/batchnorm_alignment_functions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/optimization_functions/bn_layer_weighting_functions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/optimization_functions/image_initilization.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/optimization_functions/lr_scheduler.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/optimization_functions/output_loss_functions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/optimization_functions/scheduler_step_functions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/keras/optimization_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/constants.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/image_operations.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/image_pipeline.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/model_info_exctractors.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/optimization_functions/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/optimization_functions/batchnorm_alignment_functions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/optimization_functions/bn_layer_weighting_functions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/optimization_functions/image_initilization.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/optimization_functions/lr_scheduler.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/optimization_functions/output_loss_functions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/optimization_functions/scheduler_step_functions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/optimization_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/defaultdict.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/exporter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/quantization_format.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/keras/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/keras/base_keras_exporter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/keras/export_serialization_format.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_keras_exporter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_tflite_exporter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/keras/int8_tflite_exporter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/keras/mctq_keras_exporter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/pytorch/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/pytorch/base_pytorch_exporter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/pytorch/export_serialization_format.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_torchscript_pytorch_exporter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/get_inferable_quantizers.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/keras/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/keras/builder/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/pytorch/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/common/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/common/gptq_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/common/gptq_constants.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/common/gptq_framework_implementation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/common/gptq_graph.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/common/gptq_training.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/common/gradual_activation_quantization.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/common/regularization_factory.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/gptq_keras_implementation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/gptq_loss.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/gptq_training.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/graph_info.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/quantizer/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/quantizer/quant_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/quantizer/quantization_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/gptq_loss.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/gptq_pytorch_implementation.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/gptq_training.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/graph_info.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/quantizer/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/quantizer/quant_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/quantizer/quantization_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/gptq/runner.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/logger.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/pruning/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/pruning/keras/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/pruning/pytorch/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/ptq/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/ptq/keras/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/ptq/pytorch/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/ptq/runner.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/common/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/common/qat_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/quantizer/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/quantizer/base_keras_qat_weight_quantizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/quantizer/lsq/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/quantizer/lsq/uniform_lsq.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/quantizer/quant_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/quantizer/quantization_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/uniform_ste.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/pytorch/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/pytorch/quantizer/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_weight_quantizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/pytorch/quantizer/lsq/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/pytorch/quantizer/quantization_builder.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/immutable.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/schema/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/target_platform → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities}/targetplatform2framework/attribute_filter.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc}/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc → mct_nightly-2.2.0.20250114.134534/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc}/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/common/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/common/annealing_schedulers.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/common/base_trainable_quantizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/common/constants.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/common/get_quantizer_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/common/quant_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/common/training_method.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/common/util.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/base_activation_quantizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/uniform_lsq.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/symmetric_ste.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/uniform_ste.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/annealing_schedulers.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/load_model.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/keras/quantizer_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/base_activation_quantizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/symmetric_lsq.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/uniform_lsq.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/symmetric_ste.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/uniform_ste.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/annealing_schedulers.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/trainable_infrastructure/pytorch/quantizer_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/verify_packages.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/common/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/common/constants.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/common/core_report_generator.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/common/dataset_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/common/framework_report_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/common/model_analyzer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/common/similarity_calculator.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/common/similarity_functions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/common/tensorboard_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/common/xquant_config.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/keras/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/keras/dataset_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/keras/facade_xquant_report.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/keras/model_analyzer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/keras/similarity_functions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/keras/tensorboard_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/pytorch/__init__.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/pytorch/dataset_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/pytorch/facade_xquant_report.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/pytorch/model_analyzer.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/pytorch/similarity_functions.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/model_compression_toolkit/xquant/pytorch/tensorboard_utils.py +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/setup.cfg +0 -0
- {mct_nightly-2.2.0.20250113.134913 → mct_nightly-2.2.0.20250114.134534}/setup.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: mct-nightly
|
3
|
-
Version: 2.2.0.
|
3
|
+
Version: 2.2.0.20250114.134534
|
4
4
|
Summary: A Model Compression Toolkit for neural networks
|
5
5
|
Classifier: Programming Language :: Python :: 3
|
6
6
|
Classifier: License :: OSI Approved :: Apache Software License
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: mct-nightly
|
3
|
-
Version: 2.2.0.
|
3
|
+
Version: 2.2.0.20250114.134534
|
4
4
|
Summary: A Model Compression Toolkit for neural networks
|
5
5
|
Classifier: Programming Language :: Python :: 3
|
6
6
|
Classifier: License :: OSI Approved :: Apache Software License
|
@@ -74,6 +74,7 @@ model_compression_toolkit/core/common/mixed_precision/configurable_quantizer_uti
|
|
74
74
|
model_compression_toolkit/core/common/mixed_precision/distance_weighting.py
|
75
75
|
model_compression_toolkit/core/common/mixed_precision/mixed_precision_candidates_filter.py
|
76
76
|
model_compression_toolkit/core/common/mixed_precision/mixed_precision_quantization_config.py
|
77
|
+
model_compression_toolkit/core/common/mixed_precision/mixed_precision_ru_helper.py
|
77
78
|
model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_facade.py
|
78
79
|
model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_manager.py
|
79
80
|
model_compression_toolkit/core/common/mixed_precision/sensitivity_evaluation.py
|
@@ -81,10 +82,8 @@ model_compression_toolkit/core/common/mixed_precision/set_layer_to_bitwidth.py
|
|
81
82
|
model_compression_toolkit/core/common/mixed_precision/solution_refinement_procedure.py
|
82
83
|
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/__init__.py
|
83
84
|
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization.py
|
85
|
+
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_calculator.py
|
84
86
|
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py
|
85
|
-
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_aggregation_methods.py
|
86
|
-
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_functions_mapping.py
|
87
|
-
model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_methods.py
|
88
87
|
model_compression_toolkit/core/common/mixed_precision/search_methods/__init__.py
|
89
88
|
model_compression_toolkit/core/common/mixed_precision/search_methods/linear_programming.py
|
90
89
|
model_compression_toolkit/core/common/network_editors/__init__.py
|
@@ -445,31 +444,30 @@ model_compression_toolkit/target_platform_capabilities/schema/__init__.py
|
|
445
444
|
model_compression_toolkit/target_platform_capabilities/schema/mct_current_schema.py
|
446
445
|
model_compression_toolkit/target_platform_capabilities/schema/schema_functions.py
|
447
446
|
model_compression_toolkit/target_platform_capabilities/schema/v1.py
|
448
|
-
model_compression_toolkit/target_platform_capabilities/
|
449
|
-
model_compression_toolkit/target_platform_capabilities/
|
450
|
-
model_compression_toolkit/target_platform_capabilities/
|
451
|
-
model_compression_toolkit/target_platform_capabilities/
|
452
|
-
model_compression_toolkit/target_platform_capabilities/
|
453
|
-
model_compression_toolkit/target_platform_capabilities/
|
454
|
-
model_compression_toolkit/target_platform_capabilities/
|
455
|
-
model_compression_toolkit/target_platform_capabilities/
|
456
|
-
model_compression_toolkit/target_platform_capabilities/
|
457
|
-
model_compression_toolkit/target_platform_capabilities/
|
458
|
-
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities_component.py
|
447
|
+
model_compression_toolkit/target_platform_capabilities/targetplatform2framework/__init__.py
|
448
|
+
model_compression_toolkit/target_platform_capabilities/targetplatform2framework/attach2fw.py
|
449
|
+
model_compression_toolkit/target_platform_capabilities/targetplatform2framework/attach2keras.py
|
450
|
+
model_compression_toolkit/target_platform_capabilities/targetplatform2framework/attach2pytorch.py
|
451
|
+
model_compression_toolkit/target_platform_capabilities/targetplatform2framework/attribute_filter.py
|
452
|
+
model_compression_toolkit/target_platform_capabilities/targetplatform2framework/current_tpc.py
|
453
|
+
model_compression_toolkit/target_platform_capabilities/targetplatform2framework/framework_quantization_capabilities.py
|
454
|
+
model_compression_toolkit/target_platform_capabilities/targetplatform2framework/framework_quantization_capabilities_component.py
|
455
|
+
model_compression_toolkit/target_platform_capabilities/targetplatform2framework/layer_filter_params.py
|
456
|
+
model_compression_toolkit/target_platform_capabilities/targetplatform2framework/operations_to_layers.py
|
459
457
|
model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py
|
460
458
|
model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py
|
461
459
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__init__.py
|
462
460
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py
|
463
461
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/__init__.py
|
464
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/
|
462
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc.py
|
465
463
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/__init__.py
|
466
464
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py
|
467
465
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/__init__.py
|
468
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/
|
466
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc.py
|
469
467
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__init__.py
|
470
468
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py
|
471
469
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/__init__.py
|
472
|
-
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/
|
470
|
+
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc.py
|
473
471
|
model_compression_toolkit/trainable_infrastructure/__init__.py
|
474
472
|
model_compression_toolkit/trainable_infrastructure/common/__init__.py
|
475
473
|
model_compression_toolkit/trainable_infrastructure/common/annealing_schedulers.py
|
@@ -14,7 +14,7 @@
|
|
14
14
|
# ==============================================================================
|
15
15
|
|
16
16
|
from model_compression_toolkit.defaultdict import DefaultDict
|
17
|
-
from model_compression_toolkit
|
17
|
+
from model_compression_toolkit import target_platform_capabilities
|
18
18
|
from model_compression_toolkit.target_platform_capabilities.tpc_models.get_target_platform_capabilities import get_target_platform_capabilities
|
19
19
|
from model_compression_toolkit import core
|
20
20
|
from model_compression_toolkit.logger import set_log_folder
|
@@ -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.2.0.
|
30
|
+
__version__ = "2.2.0.20250114.134534"
|
@@ -18,10 +18,8 @@ from collections.abc import Callable
|
|
18
18
|
from enum import Enum
|
19
19
|
from typing import Dict, Any, List
|
20
20
|
|
21
|
-
|
22
|
-
|
21
|
+
from mct_quantizers import QuantizationMethod
|
23
22
|
from model_compression_toolkit.defaultdict import DefaultDict
|
24
|
-
from model_compression_toolkit.target_platform_capabilities.target_platform import QuantizationMethod
|
25
23
|
|
26
24
|
|
27
25
|
class ChannelAxis(Enum):
|
@@ -16,8 +16,9 @@ import copy
|
|
16
16
|
from typing import Any, List
|
17
17
|
from model_compression_toolkit.core.common.graph.base_graph import Graph
|
18
18
|
from model_compression_toolkit.core.common.graph.base_node import BaseNode
|
19
|
-
from model_compression_toolkit.target_platform_capabilities.
|
20
|
-
|
19
|
+
from model_compression_toolkit.target_platform_capabilities.targetplatform2framework.framework_quantization_capabilities import \
|
20
|
+
FrameworkQuantizationCapabilities
|
21
|
+
from model_compression_toolkit.target_platform_capabilities.targetplatform2framework.layer_filter_params import LayerFilterParams
|
21
22
|
|
22
23
|
|
23
24
|
def filter_fusing_patterns(fusing_patterns: List[List[Any]], node: BaseNode, idx: int = 0) -> List[List[Any]]:
|
@@ -77,18 +78,18 @@ def disable_nodes_activation_quantization(nodes: List[BaseNode]):
|
|
77
78
|
qc.activation_quantization_cfg.enable_activation_quantization = False
|
78
79
|
|
79
80
|
|
80
|
-
def fusion(graph: Graph,
|
81
|
+
def fusion(graph: Graph, fqc: FrameworkQuantizationCapabilities) -> Graph:
|
81
82
|
"""
|
82
83
|
Fusing defines a list of operators that should be combined and treated as a single operator,
|
83
84
|
hence no quantization is applied between them when they appear in the graph.
|
84
85
|
This function search and disable quantization for such patterns.
|
85
86
|
Args:
|
86
87
|
graph: Graph we apply the fusion on.
|
87
|
-
|
88
|
+
fqc: FrameworkQuantizationCapabilities object that describes the desired inference target platform (includes fusing patterns MCT should handle).
|
88
89
|
Returns:
|
89
90
|
Graph after applying fusion activation marking.
|
90
91
|
"""
|
91
|
-
fusing_patterns =
|
92
|
+
fusing_patterns = fqc.get_fusing_patterns()
|
92
93
|
if len(fusing_patterns) == 0:
|
93
94
|
return graph
|
94
95
|
|
@@ -32,8 +32,9 @@ from model_compression_toolkit.core.common.collectors.statistics_collector impor
|
|
32
32
|
from model_compression_toolkit.core.common.pruning.pruning_section import PruningSection
|
33
33
|
from model_compression_toolkit.core.common.user_info import UserInformation
|
34
34
|
from model_compression_toolkit.logger import Logger
|
35
|
-
from model_compression_toolkit.target_platform_capabilities.
|
36
|
-
|
35
|
+
from model_compression_toolkit.target_platform_capabilities.targetplatform2framework import LayerFilterParams
|
36
|
+
from model_compression_toolkit.target_platform_capabilities.targetplatform2framework.framework_quantization_capabilities import \
|
37
|
+
FrameworkQuantizationCapabilities
|
37
38
|
|
38
39
|
OutTensor = namedtuple('OutTensor', 'node node_out_index')
|
39
40
|
|
@@ -86,29 +87,29 @@ class Graph(nx.MultiDiGraph, GraphSearches):
|
|
86
87
|
|
87
88
|
self.fw_info = fw_info
|
88
89
|
|
89
|
-
def
|
90
|
-
|
90
|
+
def set_fqc(self,
|
91
|
+
fqc: FrameworkQuantizationCapabilities):
|
91
92
|
"""
|
92
|
-
Set the graph's
|
93
|
+
Set the graph's FQC.
|
93
94
|
Args:
|
94
|
-
|
95
|
+
fqc: FrameworkQuantizationCapabilities object.
|
95
96
|
"""
|
96
|
-
# validate graph nodes are either from the framework or a custom layer defined in the
|
97
|
-
# Validate graph nodes are either built-in layers from the framework or custom layers defined in the
|
98
|
-
|
99
|
-
|
97
|
+
# validate graph nodes are either from the framework or a custom layer defined in the FQC
|
98
|
+
# Validate graph nodes are either built-in layers from the framework or custom layers defined in the FQC
|
99
|
+
fqc_layers = fqc.op_sets_to_layers.get_layers()
|
100
|
+
fqc_filtered_layers = [layer for layer in fqc_layers if isinstance(layer, LayerFilterParams)]
|
100
101
|
for n in self.nodes:
|
101
|
-
|
102
|
-
any([n.is_match_filter_params(filtered_layer) for filtered_layer in
|
102
|
+
is_node_in_fqc = any([n.is_match_type(_type) for _type in fqc_layers]) or \
|
103
|
+
any([n.is_match_filter_params(filtered_layer) for filtered_layer in fqc_filtered_layers])
|
103
104
|
if n.is_custom:
|
104
|
-
if not
|
105
|
+
if not is_node_in_fqc:
|
105
106
|
Logger.critical(f'MCT does not support optimizing Keras custom layers. Found a layer of type {n.type}. '
|
106
|
-
' Please add the custom layer to
|
107
|
+
' Please add the custom layer to Framework Quantization Capabilities (FQC), or file a feature '
|
107
108
|
'request or an issue if you believe this should be supported.') # pragma: no cover
|
108
|
-
if any([qc.default_weight_attr_config.enable_weights_quantization for qc in n.get_qco(
|
109
|
+
if any([qc.default_weight_attr_config.enable_weights_quantization for qc in n.get_qco(fqc).quantization_configurations]):
|
109
110
|
Logger.critical(f'Layer identified: {n.type}. MCT does not support weight quantization for Keras custom layers.') # pragma: no cover
|
110
111
|
|
111
|
-
self.
|
112
|
+
self.fqc = fqc
|
112
113
|
|
113
114
|
def get_topo_sorted_nodes(self):
|
114
115
|
"""
|
@@ -544,10 +545,8 @@ class Graph(nx.MultiDiGraph, GraphSearches):
|
|
544
545
|
potential_conf_nodes = [n for n in list(self) if fw_info.is_kernel_op(n.type)]
|
545
546
|
|
546
547
|
def is_configurable(n):
|
547
|
-
|
548
|
-
return (n.
|
549
|
-
not n.is_all_weights_candidates_equal(kernel_attr) and
|
550
|
-
(not n.reuse or include_reused_nodes))
|
548
|
+
kernel_attrs = fw_info.get_kernel_op_attributes(n.type)
|
549
|
+
return any(n.is_configurable_weight(attr) for attr in kernel_attrs) and (not n.reuse or include_reused_nodes)
|
551
550
|
|
552
551
|
return [n for n in potential_conf_nodes if is_configurable(n)]
|
553
552
|
|
@@ -576,7 +575,7 @@ class Graph(nx.MultiDiGraph, GraphSearches):
|
|
576
575
|
Returns:
|
577
576
|
A list of nodes that their activation can be configured (namely, has one or more activation qc candidate).
|
578
577
|
"""
|
579
|
-
return [n for n in list(self) if n.
|
578
|
+
return [n for n in list(self) if n.has_configurable_activation()]
|
580
579
|
|
581
580
|
def get_sorted_activation_configurable_nodes(self) -> List[BaseNode]:
|
582
581
|
"""
|
@@ -25,7 +25,9 @@ from model_compression_toolkit.logger import Logger
|
|
25
25
|
from model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema import QuantizationConfigOptions, \
|
26
26
|
OpQuantizationConfig
|
27
27
|
from model_compression_toolkit.target_platform_capabilities.schema.schema_functions import max_input_activation_n_bits
|
28
|
-
from model_compression_toolkit.target_platform_capabilities.
|
28
|
+
from model_compression_toolkit.target_platform_capabilities.targetplatform2framework import LayerFilterParams
|
29
|
+
from model_compression_toolkit.target_platform_capabilities.targetplatform2framework.framework_quantization_capabilities import \
|
30
|
+
FrameworkQuantizationCapabilities
|
29
31
|
|
30
32
|
|
31
33
|
class BaseNode:
|
@@ -150,6 +152,27 @@ class BaseNode:
|
|
150
152
|
|
151
153
|
return False
|
152
154
|
|
155
|
+
def is_configurable_weight(self, attr_name: str) -> bool:
|
156
|
+
"""
|
157
|
+
Checks whether the specific weight attribute has a configurable quantization.
|
158
|
+
|
159
|
+
Args:
|
160
|
+
attr_name: weight attribute name.
|
161
|
+
|
162
|
+
Returns:
|
163
|
+
Whether the weight attribute is configurable.
|
164
|
+
"""
|
165
|
+
return self.is_weights_quantization_enabled(attr_name) and not self.is_all_weights_candidates_equal(attr_name)
|
166
|
+
|
167
|
+
def has_configurable_activation(self) -> bool:
|
168
|
+
"""
|
169
|
+
Checks whether the activation has a configurable quantization.
|
170
|
+
|
171
|
+
Returns:
|
172
|
+
Whether the activation has a configurable quantization.
|
173
|
+
"""
|
174
|
+
return self.is_activation_quantization_enabled() and not self.is_all_activation_candidates_equal()
|
175
|
+
|
153
176
|
def __repr__(self):
|
154
177
|
"""
|
155
178
|
|
@@ -420,11 +443,15 @@ class BaseNode:
|
|
420
443
|
|
421
444
|
Returns: Output size.
|
422
445
|
"""
|
423
|
-
|
446
|
+
# shape can be tuple or list, and multiple shapes can be packed in list or tuple
|
447
|
+
if self.output_shape and isinstance(self.output_shape[0], (tuple, list)):
|
448
|
+
output_shapes = self.output_shape
|
449
|
+
else:
|
450
|
+
output_shapes = [self.output_shape]
|
424
451
|
|
425
452
|
# remove batch size (first element) from output shape
|
426
453
|
output_shapes = [s[1:] for s in output_shapes]
|
427
|
-
|
454
|
+
# for scalar shape (None,) prod returns 1
|
428
455
|
return sum([np.prod([x for x in output_shape if x is not None]) for output_shape in output_shapes])
|
429
456
|
|
430
457
|
def find_min_candidates_indices(self) -> List[int]:
|
@@ -536,34 +563,34 @@ class BaseNode:
|
|
536
563
|
# the inner method would log an exception.
|
537
564
|
return [c.weights_quantization_cfg.get_attr_config(attr) for c in self.candidates_quantization_cfg]
|
538
565
|
|
539
|
-
def get_qco(self,
|
566
|
+
def get_qco(self, fqc: FrameworkQuantizationCapabilities) -> QuantizationConfigOptions:
|
540
567
|
"""
|
541
568
|
Get the QuantizationConfigOptions of the node according
|
542
|
-
to the mappings from layers/LayerFilterParams to the OperatorsSet in the
|
569
|
+
to the mappings from layers/LayerFilterParams to the OperatorsSet in the TargetPlatformCapabilities.
|
543
570
|
|
544
571
|
Args:
|
545
|
-
|
572
|
+
fqc: FQC to extract the QuantizationConfigOptions for the node.
|
546
573
|
|
547
574
|
Returns:
|
548
575
|
QuantizationConfigOptions of the node.
|
549
576
|
"""
|
550
577
|
|
551
|
-
if
|
552
|
-
Logger.critical(f'Can not retrieve QC options for None
|
578
|
+
if fqc is None:
|
579
|
+
Logger.critical(f'Can not retrieve QC options for None FQC') # pragma: no cover
|
553
580
|
|
554
|
-
for fl, qco in
|
581
|
+
for fl, qco in fqc.filterlayer2qco.items():
|
555
582
|
if self.is_match_filter_params(fl):
|
556
583
|
return qco
|
557
584
|
# Extract qco with is_match_type to overcome mismatch of function types in TF 2.15
|
558
|
-
matching_qcos = [_qco for _type, _qco in
|
585
|
+
matching_qcos = [_qco for _type, _qco in fqc.layer2qco.items() if self.is_match_type(_type)]
|
559
586
|
if matching_qcos:
|
560
587
|
if all([_qco == matching_qcos[0] for _qco in matching_qcos]):
|
561
588
|
return matching_qcos[0]
|
562
589
|
else:
|
563
590
|
Logger.critical(f"Found duplicate qco types for node '{self.name}' of type '{self.type}'!") # pragma: no cover
|
564
|
-
return tpc.
|
591
|
+
return fqc.tpc.default_qco
|
565
592
|
|
566
|
-
def filter_node_qco_by_graph(self,
|
593
|
+
def filter_node_qco_by_graph(self, fqc: FrameworkQuantizationCapabilities,
|
567
594
|
next_nodes: List, node_qc_options: QuantizationConfigOptions
|
568
595
|
) -> Tuple[OpQuantizationConfig, List[OpQuantizationConfig]]:
|
569
596
|
"""
|
@@ -573,7 +600,7 @@ class BaseNode:
|
|
573
600
|
filters out quantization config that don't comply to these attributes.
|
574
601
|
|
575
602
|
Args:
|
576
|
-
|
603
|
+
fqc: FQC to extract the QuantizationConfigOptions for the next nodes.
|
577
604
|
next_nodes: Output nodes of current node.
|
578
605
|
node_qc_options: Node's QuantizationConfigOptions.
|
579
606
|
|
@@ -584,7 +611,7 @@ class BaseNode:
|
|
584
611
|
_base_config = node_qc_options.base_config
|
585
612
|
_node_qc_options = node_qc_options.quantization_configurations
|
586
613
|
if len(next_nodes):
|
587
|
-
next_nodes_qc_options = [_node.get_qco(
|
614
|
+
next_nodes_qc_options = [_node.get_qco(fqc) for _node in next_nodes]
|
588
615
|
next_nodes_supported_input_bitwidth = min([max_input_activation_n_bits(op_cfg)
|
589
616
|
for qc_opts in next_nodes_qc_options
|
590
617
|
for op_cfg in qc_opts.quantization_configurations])
|
@@ -593,7 +620,7 @@ class BaseNode:
|
|
593
620
|
_node_qc_options = [_option for _option in _node_qc_options
|
594
621
|
if _option.activation_n_bits <= next_nodes_supported_input_bitwidth]
|
595
622
|
if len(_node_qc_options) == 0:
|
596
|
-
Logger.critical(f"Graph doesn't match
|
623
|
+
Logger.critical(f"Graph doesn't match FQC bit configurations: {self} -> {next_nodes}.") # pragma: no cover
|
597
624
|
|
598
625
|
# Verify base config match
|
599
626
|
if any([node_qc_options.base_config.activation_n_bits > max_input_activation_n_bits(qc_opt.base_config)
|
@@ -603,9 +630,9 @@ class BaseNode:
|
|
603
630
|
if len(_node_qc_options) > 0:
|
604
631
|
output_act_bitwidth = {qco.activation_n_bits: i for i, qco in enumerate(_node_qc_options)}
|
605
632
|
_base_config = _node_qc_options[output_act_bitwidth[max(output_act_bitwidth)]]
|
606
|
-
Logger.warning(f"Node {self} base quantization config changed to match Graph and
|
633
|
+
Logger.warning(f"Node {self} base quantization config changed to match Graph and FQC configuration.\nCause: {self} -> {next_nodes}.")
|
607
634
|
else:
|
608
|
-
Logger.critical(f"Graph doesn't match
|
635
|
+
Logger.critical(f"Graph doesn't match FQC bit configurations: {self} -> {next_nodes}.") # pragma: no cover
|
609
636
|
|
610
637
|
return _base_config, _node_qc_options
|
611
638
|
|
@@ -17,18 +17,19 @@ import numpy as np
|
|
17
17
|
from model_compression_toolkit.core import ResourceUtilization, FrameworkInfo
|
18
18
|
from model_compression_toolkit.core.common import Graph
|
19
19
|
from model_compression_toolkit.logger import Logger
|
20
|
-
from model_compression_toolkit.target_platform_capabilities.
|
20
|
+
from model_compression_toolkit.target_platform_capabilities.targetplatform2framework.framework_quantization_capabilities import \
|
21
|
+
FrameworkQuantizationCapabilities
|
21
22
|
|
22
23
|
|
23
24
|
def filter_candidates_for_mixed_precision(graph: Graph,
|
24
25
|
target_resource_utilization: ResourceUtilization,
|
25
26
|
fw_info: FrameworkInfo,
|
26
|
-
|
27
|
+
fqc: FrameworkQuantizationCapabilities):
|
27
28
|
"""
|
28
29
|
Filters out candidates in case of mixed precision search for only weights or activation compression.
|
29
30
|
For instance, if running only weights compression - filters out candidates of activation configurable nodes
|
30
31
|
such that only a single candidate would remain, with the bitwidth equal to the one defined in the matching layer's
|
31
|
-
base config in the
|
32
|
+
base config in the FQC.
|
32
33
|
|
33
34
|
Note: This function modifies the graph inplace!
|
34
35
|
|
@@ -36,7 +37,7 @@ def filter_candidates_for_mixed_precision(graph: Graph,
|
|
36
37
|
graph: A graph representation of the model to be quantized.
|
37
38
|
target_resource_utilization: The resource utilization of the target device.
|
38
39
|
fw_info: fw_info: Information needed for quantization about the specific framework.
|
39
|
-
|
40
|
+
fqc: FrameworkQuantizationCapabilities object that describes the desired inference target platform.
|
40
41
|
|
41
42
|
"""
|
42
43
|
|
@@ -50,7 +51,7 @@ def filter_candidates_for_mixed_precision(graph: Graph,
|
|
50
51
|
weights_conf = graph.get_weights_configurable_nodes(fw_info)
|
51
52
|
activation_configurable_nodes = [n for n in graph.get_activation_configurable_nodes() if n not in weights_conf]
|
52
53
|
for n in activation_configurable_nodes:
|
53
|
-
base_cfg_nbits = n.get_qco(
|
54
|
+
base_cfg_nbits = n.get_qco(fqc).base_config.activation_n_bits
|
54
55
|
filtered_conf = [c for c in n.candidates_quantization_cfg if
|
55
56
|
c.activation_quantization_cfg.enable_activation_quantization and
|
56
57
|
c.activation_quantization_cfg.activation_n_bits == base_cfg_nbits]
|
@@ -67,7 +68,7 @@ def filter_candidates_for_mixed_precision(graph: Graph,
|
|
67
68
|
weight_configurable_nodes = [n for n in graph.get_weights_configurable_nodes(fw_info) if n not in activation_conf]
|
68
69
|
for n in weight_configurable_nodes:
|
69
70
|
kernel_attr = graph.fw_info.get_kernel_op_attributes(n.type)[0]
|
70
|
-
base_cfg_nbits = n.get_qco(
|
71
|
+
base_cfg_nbits = n.get_qco(fqc).base_config.attr_weights_configs_mapping[kernel_attr].weights_n_bits
|
71
72
|
filtered_conf = [c for c in n.candidates_quantization_cfg if
|
72
73
|
c.weights_quantization_cfg.get_attr_config(kernel_attr).enable_weights_quantization and
|
73
74
|
c.weights_quantization_cfg.get_attr_config(kernel_attr).weights_n_bits == base_cfg_nbits]
|
@@ -0,0 +1,187 @@
|
|
1
|
+
# Copyright 2022 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, Set, Dict, Optional, Tuple, Any
|
16
|
+
|
17
|
+
import numpy as np
|
18
|
+
|
19
|
+
from model_compression_toolkit.core import FrameworkInfo
|
20
|
+
from model_compression_toolkit.core.common import Graph, BaseNode
|
21
|
+
from model_compression_toolkit.core.common.framework_implementation import FrameworkImplementation
|
22
|
+
from model_compression_toolkit.core.common.graph.virtual_activation_weights_node import VirtualActivationWeightsNode
|
23
|
+
from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization import \
|
24
|
+
RUTarget
|
25
|
+
from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization_calculator import \
|
26
|
+
ResourceUtilizationCalculator, BitwidthMode, TargetInclusionCriterion
|
27
|
+
from model_compression_toolkit.core.common.quantization.node_quantization_config import NodeWeightsQuantizationConfig, \
|
28
|
+
NodeActivationQuantizationConfig
|
29
|
+
|
30
|
+
|
31
|
+
# TODO take into account Virtual nodes. Are candidates defined with respect to virtual or original nodes?
|
32
|
+
# Can we use the virtual graph only for bops and the original graph for everything else?
|
33
|
+
|
34
|
+
class MixedPrecisionRUHelper:
|
35
|
+
""" Helper class for resource utilization computations for mixed precision optimization. """
|
36
|
+
|
37
|
+
def __init__(self, graph: Graph, fw_info: FrameworkInfo, fw_impl: FrameworkImplementation):
|
38
|
+
self.graph = graph
|
39
|
+
self.fw_info = fw_info
|
40
|
+
self.fw_impl = fw_impl
|
41
|
+
self.ru_calculator = ResourceUtilizationCalculator(graph, fw_impl, fw_info)
|
42
|
+
|
43
|
+
def compute_utilization(self, ru_targets: Set[RUTarget], mp_cfg: Optional[List[int]]) -> Dict[RUTarget, np.ndarray]:
|
44
|
+
"""
|
45
|
+
Compute utilization of requested targets for a specific configuration in the format expected by LP problem
|
46
|
+
formulation namely a vector of ru values for relevant memory elements (nodes or cuts) in a constant order
|
47
|
+
(between calls).
|
48
|
+
|
49
|
+
Args:
|
50
|
+
ru_targets: resource utilization targets to compute.
|
51
|
+
mp_cfg: a list of candidates indices for configurable layers.
|
52
|
+
|
53
|
+
Returns:
|
54
|
+
Dict of the computed utilization per target.
|
55
|
+
"""
|
56
|
+
|
57
|
+
ru = {}
|
58
|
+
act_qcs, w_qcs = self.get_quantization_candidates(mp_cfg) if mp_cfg else (None, None)
|
59
|
+
if RUTarget.WEIGHTS in ru_targets:
|
60
|
+
wu = self._weights_utilization(w_qcs)
|
61
|
+
ru[RUTarget.WEIGHTS] = np.array(list(wu.values()))
|
62
|
+
|
63
|
+
if RUTarget.ACTIVATION in ru_targets:
|
64
|
+
au = self._activation_utilization(act_qcs)
|
65
|
+
ru[RUTarget.ACTIVATION] = np.array(list(au.values()))
|
66
|
+
|
67
|
+
if RUTarget.BOPS in ru_targets:
|
68
|
+
ru[RUTarget.BOPS] = self._bops_utilization(mp_cfg)
|
69
|
+
|
70
|
+
if RUTarget.TOTAL in ru_targets:
|
71
|
+
raise ValueError('Total target should be computed based on weights and activations targets.')
|
72
|
+
|
73
|
+
assert len(ru) == len(ru_targets), (f'Mismatch between the number of computed and requested metrics.'
|
74
|
+
f'Requested {ru_targets}')
|
75
|
+
return ru
|
76
|
+
|
77
|
+
def get_quantization_candidates(self, mp_cfg) \
|
78
|
+
-> Tuple[Dict[BaseNode, NodeActivationQuantizationConfig], Dict[BaseNode, NodeWeightsQuantizationConfig]]:
|
79
|
+
"""
|
80
|
+
Retrieve quantization candidates objects for weights and activations from the configuration list.
|
81
|
+
|
82
|
+
Args:
|
83
|
+
mp_cfg: a list of candidates indices for configurable layers.
|
84
|
+
|
85
|
+
Returns:
|
86
|
+
A mapping between nodes to weights quantization config, and a mapping between nodes and activation
|
87
|
+
quantization config.
|
88
|
+
"""
|
89
|
+
mp_nodes = self.graph.get_configurable_sorted_nodes(self.fw_info)
|
90
|
+
node_qcs = {n: n.candidates_quantization_cfg[mp_cfg[i]] for i, n in enumerate(mp_nodes)}
|
91
|
+
act_qcs = {n: cfg.activation_quantization_cfg for n, cfg in node_qcs.items()}
|
92
|
+
w_qcs = {n: cfg.weights_quantization_cfg for n, cfg in node_qcs.items()}
|
93
|
+
return act_qcs, w_qcs
|
94
|
+
|
95
|
+
def _weights_utilization(self, w_qcs: Optional[Dict[BaseNode, NodeWeightsQuantizationConfig]]) -> Dict[BaseNode, float]:
|
96
|
+
"""
|
97
|
+
Compute weights utilization for configurable weights if configuration is passed,
|
98
|
+
or for non-configurable nodes otherwise.
|
99
|
+
|
100
|
+
Args:
|
101
|
+
w_qcs: nodes quantization configuration to compute, or None.
|
102
|
+
|
103
|
+
Returns:
|
104
|
+
Weight utilization per node.
|
105
|
+
"""
|
106
|
+
if w_qcs:
|
107
|
+
target_criterion = TargetInclusionCriterion.QConfigurable
|
108
|
+
bitwidth_mode = BitwidthMode.QCustom
|
109
|
+
else:
|
110
|
+
target_criterion = TargetInclusionCriterion.QNonConfigurable
|
111
|
+
bitwidth_mode = BitwidthMode.QDefaultSP
|
112
|
+
|
113
|
+
_, nodes_util, _ = self.ru_calculator.compute_weights_utilization(target_criterion=target_criterion,
|
114
|
+
bitwidth_mode=bitwidth_mode,
|
115
|
+
w_qcs=w_qcs)
|
116
|
+
nodes_util = {n: u.bytes for n, u in nodes_util.items()}
|
117
|
+
return nodes_util
|
118
|
+
|
119
|
+
def _activation_utilization(self, act_qcs: Optional[Dict[BaseNode, NodeActivationQuantizationConfig]]) \
|
120
|
+
-> Optional[Dict[Any, float]]:
|
121
|
+
"""
|
122
|
+
Compute activation utilization using MaxCut for all quantized nodes if configuration is passed.
|
123
|
+
|
124
|
+
Args:
|
125
|
+
act_qcs: nodes activation configuration or None.
|
126
|
+
|
127
|
+
Returns:
|
128
|
+
Activation utilization per cut, or empty dict if no configuration was passed.
|
129
|
+
"""
|
130
|
+
# Maxcut activation utilization is computed for all quantized nodes, so non-configurable memory is already
|
131
|
+
# covered by the computation of configurable activations.
|
132
|
+
if not act_qcs:
|
133
|
+
return {}
|
134
|
+
|
135
|
+
_, cuts_util, *_ = self.ru_calculator.compute_activation_utilization_by_cut(
|
136
|
+
TargetInclusionCriterion.AnyQuantized, bitwidth_mode=BitwidthMode.QCustom, act_qcs=act_qcs)
|
137
|
+
cuts_util = {c: u.bytes for c, u in cuts_util.items()}
|
138
|
+
return cuts_util
|
139
|
+
|
140
|
+
def _bops_utilization(self, mp_cfg: List[int]) -> np.ndarray:
|
141
|
+
"""
|
142
|
+
Computes a resource utilization vector with the respective bit-operations (BOPS) count for each configurable node,
|
143
|
+
according to the given mixed-precision configuration of a virtual graph with composed nodes.
|
144
|
+
|
145
|
+
Args:
|
146
|
+
mp_cfg: A mixed-precision configuration (list of candidates index for each configurable node)
|
147
|
+
|
148
|
+
Returns:
|
149
|
+
A vector of node's BOPS count.
|
150
|
+
"""
|
151
|
+
# bops is computed for all nodes, so non-configurable memory is already covered by the computation of
|
152
|
+
# configurable nodes
|
153
|
+
if not mp_cfg:
|
154
|
+
return np.array([])
|
155
|
+
|
156
|
+
# TODO keeping old implementation for now
|
157
|
+
virtual_bops_nodes = [n for n in self.graph.get_topo_sorted_nodes() if isinstance(n, VirtualActivationWeightsNode)]
|
158
|
+
|
159
|
+
mp_nodes = self.graph.get_configurable_sorted_nodes_names(self.fw_info)
|
160
|
+
|
161
|
+
bops = [n.get_bops_count(self.fw_impl, self.fw_info, candidate_idx=_get_node_cfg_idx(n, mp_cfg, mp_nodes))
|
162
|
+
for n in virtual_bops_nodes]
|
163
|
+
|
164
|
+
return np.array(bops)
|
165
|
+
|
166
|
+
|
167
|
+
def _get_node_cfg_idx(node: BaseNode, mp_cfg: List[int], sorted_configurable_nodes_names: List[str]) -> int:
|
168
|
+
"""
|
169
|
+
Returns the index of a node's quantization configuration candidate according to the given
|
170
|
+
mixed-precision configuration. If the node is not configurable, then it must have a single configuration,
|
171
|
+
therefore, the index 0 is returned.
|
172
|
+
|
173
|
+
Args:
|
174
|
+
node: A node to get its candidate configuration index.
|
175
|
+
mp_cfg: A mixed-precision configuration (list of candidates index for each configurable node)
|
176
|
+
sorted_configurable_nodes_names: A list of configurable nodes names.
|
177
|
+
|
178
|
+
Returns: An index (integer) of a node's quantization configuration candidate.
|
179
|
+
"""
|
180
|
+
|
181
|
+
if node.name in sorted_configurable_nodes_names:
|
182
|
+
node_idx = sorted_configurable_nodes_names.index(node.name)
|
183
|
+
return mp_cfg[node_idx]
|
184
|
+
else: # pragma: no cover
|
185
|
+
assert len(node.candidates_quantization_cfg) > 0, \
|
186
|
+
"Any node should have at least one candidate configuration."
|
187
|
+
return 0
|
@@ -22,7 +22,6 @@ from model_compression_toolkit.core import MixedPrecisionQuantizationConfig
|
|
22
22
|
from model_compression_toolkit.core.common import Graph
|
23
23
|
from model_compression_toolkit.core.common.hessian import HessianInfoService
|
24
24
|
from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization import ResourceUtilization, RUTarget
|
25
|
-
from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.ru_functions_mapping import ru_functions_mapping
|
26
25
|
from model_compression_toolkit.core.common.framework_implementation import FrameworkImplementation
|
27
26
|
from model_compression_toolkit.core.common.mixed_precision.mixed_precision_search_manager import MixedPrecisionSearchManager
|
28
27
|
from model_compression_toolkit.core.common.mixed_precision.search_methods.linear_programming import \
|
@@ -105,16 +104,11 @@ def search_bit_width(graph_to_search_cfg: Graph,
|
|
105
104
|
disable_activation_for_metric=disable_activation_for_metric,
|
106
105
|
hessian_info_service=hessian_info_service)
|
107
106
|
|
108
|
-
# Each pair of (resource utilization method, resource utilization aggregation) should match to a specific
|
109
|
-
# provided target resource utilization
|
110
|
-
ru_functions = ru_functions_mapping
|
111
|
-
|
112
107
|
# Instantiate a manager object
|
113
108
|
search_manager = MixedPrecisionSearchManager(graph,
|
114
109
|
fw_info,
|
115
110
|
fw_impl,
|
116
111
|
se,
|
117
|
-
ru_functions,
|
118
112
|
target_resource_utilization,
|
119
113
|
original_graph=graph_to_search_cfg)
|
120
114
|
|