mct-nightly 2.2.0.20241221.519__tar.gz → 2.2.0.20241223.525__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.20241221.519 → mct-nightly-2.2.0.20241223.525}/PKG-INFO +1 -1
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/mct_nightly.egg-info/PKG-INFO +1 -1
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/mct_nightly.egg-info/SOURCES.txt +0 -2
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/__init__.py +1 -1
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/base_graph.py +1 -1
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/base_node.py +3 -3
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +4 -4
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/shift_negative_activation.py +2 -2
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/schema/mct_current_schema.py +1 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/schema/schema_functions.py +4 -5
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/schema/v1.py +63 -170
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/target_platform/__init__.py +0 -1
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/operations_to_layers.py +1 -1
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py +7 -4
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py +50 -51
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py +54 -52
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py +57 -53
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tp_model.py +52 -51
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tp_model.py +53 -51
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tp_model.py +59 -57
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tp_model.py +54 -52
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py +90 -83
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tp_model.py +26 -24
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py +57 -55
- mct-nightly-2.2.0.20241221.519/model_compression_toolkit/target_platform_capabilities/target_platform/current_tp_model.py +0 -67
- mct-nightly-2.2.0.20241221.519/model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model.py +0 -30
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/LICENSE.md +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/README.md +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/mct_nightly.egg-info/dependency_links.txt +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/mct_nightly.egg-info/requires.txt +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/mct_nightly.egg-info/top_level.txt +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/constants.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/analyzer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/back2framework/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/back2framework/base_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/base_substitutions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/collectors/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/collectors/base_collector.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/collectors/histogram_collector.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/collectors/mean_collector.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/collectors/min_max_per_channel_collector.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/collectors/statistics_collector.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/framework_implementation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/framework_info.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/fusion/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/fusion/graph_fuser.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/fusion/layer_fusing.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/edge.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/functional_node.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/graph_matchers.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/graph_searches.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/memory_graph/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/memory_graph/bipartite_graph.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/memory_graph/compute_graph_max_cut.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/memory_graph/cut.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/memory_graph/max_cut_astar.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/memory_graph/memory_element.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/memory_graph/memory_graph.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/graph/virtual_activation_weights_node.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/hessian/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/hessian/hessian_info_service.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/hessian/hessian_info_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/hessian/hessian_scores_calculator.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/hessian/hessian_scores_request.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/matchers/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/matchers/base_graph_filter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/matchers/base_matcher.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/matchers/edge_matcher.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/matchers/function.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/matchers/node_matcher.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/matchers/walk_matcher.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/memory_computation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/bit_width_setter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/configurable_quant_id.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/configurable_quantizer_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/distance_weighting.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_candidates_filter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_quantization_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_manager.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_aggregation_methods.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_functions_mapping.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_methods.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/search_methods/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/search_methods/linear_programming.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/sensitivity_evaluation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/set_layer_to_bitwidth.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/mixed_precision/solution_refinement_procedure.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/model_builder_mode.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/model_collector.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/model_validation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/network_editors/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/network_editors/actions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/network_editors/edit_network.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/network_editors/node_filters.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/node_prior_info.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/channels_grouping.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/greedy_mask_calculator.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/importance_metrics/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/importance_metrics/base_importance_metric.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/importance_metrics/importance_metric_factory.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/importance_metrics/lfh_importance_metric.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/mask/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/mask/per_channel_mask.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/mask/per_simd_group_mask.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/memory_calculator.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/prune_graph.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/pruner.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/pruning_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/pruning_framework_implementation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/pruning_info.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/pruning/pruning_section.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/bit_width_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/candidate_node_quantization_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/core_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/debug_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/filter_nodes_candidates.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/node_quantization_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_fn_selection.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_fn_selection.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_generation/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_generation/error_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_generation/lut_kmeans_params.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_generation/outlier_filter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_generation/power_of_two_selection.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_activations_computation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_computation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_search.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_weights_computation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_generation/symmetric_selection.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantization_params_generation/uniform_selection.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantize_graph_weights.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantize_node.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantizers/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantizers/lut_kmeans_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantizers/quantizers_helpers.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/quantization/quantizers/uniform_quantizers.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/similarity_analyzer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/statistics_correction/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/statistics_correction/apply_activation_bias_correction_to_graph.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/statistics_correction/apply_bias_correction_to_graph.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/statistics_correction/apply_second_moment_correction_to_graph.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/statistics_correction/compute_activation_bias_correction_of_graph.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/statistics_correction/compute_bias_correction_of_graph.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/statistics_correction/statistics_correction.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/apply_substitutions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/batchnorm_folding.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/batchnorm_reconstruction.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/batchnorm_refusing.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/linear_collapsing.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/linear_collapsing_substitution.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/remove_identity.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/residual_collapsing.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/scale_equalization.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/softmax_shift.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/substitutions/weights_activation_split.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/user_info.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/visualization/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/visualization/final_config_visualizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/visualization/nn_visualizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/common/visualization/tensorboard_writer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/graph_prep_runner.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/back2framework/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/back2framework/factory_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/back2framework/float_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/back2framework/instance_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/back2framework/keras_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/back2framework/mixed_precision_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/back2framework/quantized_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/constants.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/custom_layer_validation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/data_util.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/default_framework_info.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/activation_decomposition.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/conv_funcs_to_layer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/dwconv_to_conv.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/input_scaling.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/linear_collapsing.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/matmul_substitution.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/remove_identity.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/residual_collapsing.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/scale_equalization.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/separableconv_decomposition.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/sigmoid_mul_to_swish.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/softmax_shift.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/weights_activation_split.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/hessian/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/hessian/activation_hessian_scores_calculator_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/hessian/hessian_scores_calculator_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/hessian/weights_hessian_scores_calculator_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/keras_implementation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/keras_model_validation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/keras_node_prior_info.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/mixed_precision/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/mixed_precision/configurable_activation_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/mixed_precision/configurable_weights_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/pruning/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/pruning/pruning_keras_implementation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/quantizer/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/quantizer/fake_quant_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/quantizer/lut_fake_quant.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/reader/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/reader/common.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/reader/connectivity_handler.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/reader/nested_model/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/reader/nested_model/edges_merger.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/reader/nested_model/nested_model_handler.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/reader/nested_model/nodes_merger.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/reader/nested_model/outputs_merger.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/reader/node_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/reader/reader.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/resource_utilization_data_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/statistics_correction/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/statistics_correction/apply_second_moment_correction.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/statistics_correction/keras_compute_activation_bias_correction_of_graph.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/tf_tensor_numpy.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/keras/visualization/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/back2framework/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/back2framework/factory_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/back2framework/float_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/back2framework/instance_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/back2framework/mixed_precision_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/back2framework/pytorch_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/quantized_layer_wrapper.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/wrapper_quantize_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/back2framework/quantized_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/constants.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/data_util.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/default_framework_info.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/const_holder_conv.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_batch_norm.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_layer_norm.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_linear.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/linear_collapsing.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/remove_identity.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/reshape_with_static_shapes.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/residual_collapsing.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scale_equalization.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scaled_dot_product_attention.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/softmax_shift.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/transform_function_call_method.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/weights_activation_split.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/hessian/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/hessian/activation_hessian_scores_calculator_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/hessian/hessian_scores_calculator_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/hessian/weights_hessian_scores_calculator_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/mixed_precision/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_activation_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_weights_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/pruning/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/pruning/pruning_pytorch_implementation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/pytorch_device_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/pytorch_implementation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/pytorch_node_prior_info.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/quantizer/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/quantizer/fake_quant_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/quantizer/lut_fake_quant.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/reader/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/reader/graph_builders.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/reader/node_holders.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/reader/reader.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/statistics_correction/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/statistics_correction/apply_second_moment_correction.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/statistics_correction/pytorch_compute_activation_bias_correction_of_graph.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/pytorch/utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/quantization_prep_runner.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/core/runner.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/common/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/common/constants.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/common/data_generation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/common/data_generation_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/common/enums.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/common/image_pipeline.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/common/model_info_exctractors.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/common/optimization_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/constants.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/image_operations.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/image_pipeline.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/keras_data_generation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/model_info_exctractors.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/optimization_functions/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/optimization_functions/batchnorm_alignment_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/optimization_functions/bn_layer_weighting_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/optimization_functions/image_initilization.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/optimization_functions/lr_scheduler.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/optimization_functions/output_loss_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/optimization_functions/scheduler_step_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/keras/optimization_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/constants.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/image_operations.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/image_pipeline.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/model_info_exctractors.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/optimization_functions/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/optimization_functions/batchnorm_alignment_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/optimization_functions/bn_layer_weighting_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/optimization_functions/image_initilization.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/optimization_functions/lr_scheduler.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/optimization_functions/output_loss_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/optimization_functions/scheduler_step_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/optimization_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/defaultdict.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/exporter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/quantization_format.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/keras/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/keras/base_keras_exporter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/keras/export_serialization_format.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_keras_exporter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_tflite_exporter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/keras/int8_tflite_exporter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/keras/mctq_keras_exporter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/pytorch/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/pytorch/base_pytorch_exporter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/pytorch/export_serialization_format.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_torchscript_pytorch_exporter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/get_inferable_quantizers.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/keras/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/keras/builder/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/keras/builder/node_to_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/pytorch/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/node_to_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/common/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/common/gptq_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/common/gptq_constants.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/common/gptq_framework_implementation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/common/gptq_graph.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/common/gptq_training.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/common/gradual_activation_quantization.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/common/regularization_factory.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/gptq_keras_implementation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/gptq_loss.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/gptq_training.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/graph_info.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/quantization_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/quantizer/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/quantizer/quant_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/quantizer/quantization_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/gptq_loss.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/gptq_pytorch_implementation.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/gptq_training.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/graph_info.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/quantization_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/quantizer/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/quantizer/quant_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/quantizer/quantization_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/gptq/runner.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/logger.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/metadata.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/pruning/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/pruning/keras/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/pruning/keras/pruning_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/pruning/pytorch/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/pruning/pytorch/pruning_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/ptq/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/ptq/keras/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/ptq/keras/quantization_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/ptq/pytorch/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/ptq/pytorch/quantization_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/ptq/runner.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/common/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/common/qat_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/quantization_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/quantizer/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/quantizer/base_keras_qat_weight_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/quantizer/lsq/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/quantizer/lsq/symmetric_lsq.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/quantizer/lsq/uniform_lsq.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/quantizer/quant_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/quantizer/quantization_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/uniform_ste.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/pytorch/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/pytorch/quantization_facade.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/pytorch/quantizer/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_weight_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/pytorch/quantizer/lsq/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/pytorch/quantizer/lsq/symmetric_lsq.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/pytorch/quantizer/lsq/uniform_lsq.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/pytorch/quantizer/quantization_builder.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/uniform_ste.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/constants.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/immutable.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/schema/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attribute_filter.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/current_tpc.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/layer_filter_params.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities_component.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_keras.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_pytorch.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/common/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/common/annealing_schedulers.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/common/base_trainable_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/common/constants.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/common/get_quantizer_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/common/get_quantizers.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/common/quant_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/common/trainable_quantizer_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/common/training_method.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/common/util.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/base_activation_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/symmetric_lsq.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/uniform_lsq.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/symmetric_ste.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/uniform_ste.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/annealing_schedulers.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/config_serialization.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/load_model.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/keras/quantizer_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/base_activation_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/symmetric_lsq.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/uniform_lsq.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/symmetric_ste.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/uniform_ste.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/annealing_schedulers.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/trainable_infrastructure/pytorch/quantizer_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/verify_packages.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/common/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/common/constants.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/common/core_report_generator.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/common/dataset_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/common/framework_report_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/common/model_analyzer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/common/model_folding_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/common/similarity_calculator.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/common/similarity_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/common/tensorboard_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/common/xquant_config.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/keras/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/keras/dataset_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/keras/facade_xquant_report.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/keras/keras_report_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/keras/model_analyzer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/keras/similarity_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/keras/tensorboard_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/pytorch/__init__.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/pytorch/dataset_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/pytorch/facade_xquant_report.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/pytorch/model_analyzer.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/pytorch/pytorch_report_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/pytorch/similarity_functions.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/model_compression_toolkit/xquant/pytorch/tensorboard_utils.py +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/setup.cfg +0 -0
- {mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/setup.py +0 -0
{mct-nightly-2.2.0.20241221.519 → mct-nightly-2.2.0.20241223.525}/mct_nightly.egg-info/SOURCES.txt
RENAMED
@@ -444,8 +444,6 @@ model_compression_toolkit/target_platform_capabilities/schema/mct_current_schema
|
|
444
444
|
model_compression_toolkit/target_platform_capabilities/schema/schema_functions.py
|
445
445
|
model_compression_toolkit/target_platform_capabilities/schema/v1.py
|
446
446
|
model_compression_toolkit/target_platform_capabilities/target_platform/__init__.py
|
447
|
-
model_compression_toolkit/target_platform_capabilities/target_platform/current_tp_model.py
|
448
|
-
model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model.py
|
449
447
|
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/__init__.py
|
450
448
|
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attribute_filter.py
|
451
449
|
model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/current_tpc.py
|
@@ -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.20241223.000525"
|
@@ -105,7 +105,7 @@ class Graph(nx.MultiDiGraph, GraphSearches):
|
|
105
105
|
Logger.critical(f'MCT does not support optimizing Keras custom layers. Found a layer of type {n.type}. '
|
106
106
|
' Please add the custom layer to Target Platform Capabilities (TPC), or file a feature '
|
107
107
|
'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(tpc).
|
108
|
+
if any([qc.default_weight_attr_config.enable_weights_quantization for qc in n.get_qco(tpc).quantization_configurations]):
|
109
109
|
Logger.critical(f'Layer identified: {n.type}. MCT does not support weight quantization for Keras custom layers.') # pragma: no cover
|
110
110
|
|
111
111
|
self.tpc = tpc
|
@@ -582,12 +582,12 @@ class BaseNode:
|
|
582
582
|
"""
|
583
583
|
# Filter quantization config options that don't match the graph.
|
584
584
|
_base_config = node_qc_options.base_config
|
585
|
-
_node_qc_options = node_qc_options.
|
585
|
+
_node_qc_options = node_qc_options.quantization_configurations
|
586
586
|
if len(next_nodes):
|
587
587
|
next_nodes_qc_options = [_node.get_qco(tpc) for _node in next_nodes]
|
588
588
|
next_nodes_supported_input_bitwidth = min([max_input_activation_n_bits(op_cfg)
|
589
589
|
for qc_opts in next_nodes_qc_options
|
590
|
-
for op_cfg in qc_opts.
|
590
|
+
for op_cfg in qc_opts.quantization_configurations])
|
591
591
|
|
592
592
|
# Filter node's QC options that match next nodes input bit-width.
|
593
593
|
_node_qc_options = [_option for _option in _node_qc_options
|
@@ -599,7 +599,7 @@ class BaseNode:
|
|
599
599
|
if any([node_qc_options.base_config.activation_n_bits > max_input_activation_n_bits(qc_opt.base_config)
|
600
600
|
for qc_opt in next_nodes_qc_options]):
|
601
601
|
# base_config activation bits doesn't match next node supported input bit-width -> replace with
|
602
|
-
# a qco from
|
602
|
+
# a qco from quantization_configurations with maximum activation bit-width.
|
603
603
|
if len(_node_qc_options) > 0:
|
604
604
|
output_act_bitwidth = {qco.activation_n_bits: i for i, qco in enumerate(_node_qc_options)}
|
605
605
|
_base_config = _node_qc_options[output_act_bitwidth[max(output_act_bitwidth)]]
|
@@ -101,7 +101,7 @@ def filter_node_qco_by_graph(node: BaseNode,
|
|
101
101
|
"""
|
102
102
|
# Filter quantization config options that don't match the graph.
|
103
103
|
_base_config = node_qc_options.base_config
|
104
|
-
_node_qc_options = node_qc_options.
|
104
|
+
_node_qc_options = node_qc_options.quantization_configurations
|
105
105
|
|
106
106
|
# Build next_nodes list by appending to the node's next nodes list all nodes that are quantization preserving.
|
107
107
|
_next_nodes = graph.get_next_nodes(node)
|
@@ -109,7 +109,7 @@ def filter_node_qco_by_graph(node: BaseNode,
|
|
109
109
|
while len(_next_nodes):
|
110
110
|
n = _next_nodes.pop(0)
|
111
111
|
qco = n.get_qco(tpc)
|
112
|
-
qp = [qc.quantization_preserving for qc in qco.
|
112
|
+
qp = [qc.quantization_preserving for qc in qco.quantization_configurations]
|
113
113
|
if not all(qp) and any(qp):
|
114
114
|
Logger.error(f'Attribute "quantization_preserving" should be the same for all QuantizaionConfigOptions in {n}.')
|
115
115
|
if qp[0]:
|
@@ -120,7 +120,7 @@ def filter_node_qco_by_graph(node: BaseNode,
|
|
120
120
|
next_nodes_qc_options = [_node.get_qco(tpc) for _node in next_nodes]
|
121
121
|
next_nodes_supported_input_bitwidth = min([max_input_activation_n_bits(op_cfg)
|
122
122
|
for qc_opts in next_nodes_qc_options
|
123
|
-
for op_cfg in qc_opts.
|
123
|
+
for op_cfg in qc_opts.quantization_configurations])
|
124
124
|
|
125
125
|
# Filter node's QC options that match next nodes input bit-width.
|
126
126
|
_node_qc_options = [_option for _option in _node_qc_options
|
@@ -132,7 +132,7 @@ def filter_node_qco_by_graph(node: BaseNode,
|
|
132
132
|
if any([node_qc_options.base_config.activation_n_bits > max_input_activation_n_bits(qc_opt.base_config)
|
133
133
|
for qc_opt in next_nodes_qc_options]):
|
134
134
|
# base_config activation bits doesn't match next node supported input bit-width -> replace with
|
135
|
-
# a qco from
|
135
|
+
# a qco from quantization_configurations with maximum activation bit-width.
|
136
136
|
if len(_node_qc_options) > 0:
|
137
137
|
output_act_bitwidth = {qco.activation_n_bits: i for i, qco in enumerate(_node_qc_options)}
|
138
138
|
_base_config = _node_qc_options[output_act_bitwidth[max(output_act_bitwidth)]]
|
@@ -392,7 +392,7 @@ def shift_negative_function(graph: Graph,
|
|
392
392
|
bypass_candidate_qc.activation_quantization_cfg.activation_quantization_params[SIGNED] = False
|
393
393
|
graph.shift_stats_collector(bypass_node, np.array(shift_value))
|
394
394
|
|
395
|
-
add_node_qco = add_node.get_qco(graph.tpc).
|
395
|
+
add_node_qco = add_node.get_qco(graph.tpc).quantization_configurations
|
396
396
|
for op_qc_idx, candidate_qc in enumerate(add_node.candidates_quantization_cfg):
|
397
397
|
for attr in add_node.get_node_weights_attributes():
|
398
398
|
candidate_qc.weights_quantization_cfg.get_attr_config(attr).enable_weights_quantization = False
|
@@ -535,7 +535,7 @@ def apply_shift_negative_correction(graph: Graph,
|
|
535
535
|
# Skip substitution if QuantizationMethod is uniform.
|
536
536
|
node_qco = n.get_qco(graph.tpc)
|
537
537
|
if any([op_qc.activation_quantization_method is QuantizationMethod.UNIFORM
|
538
|
-
for op_qc in node_qco.
|
538
|
+
for op_qc in node_qco.quantization_configurations]):
|
539
539
|
continue
|
540
540
|
|
541
541
|
if snc_node_types.apply(n):
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import model_compression_toolkit.target_platform_capabilities.schema.v1 as schema
|
2
2
|
|
3
|
+
OperatorSetNames = schema.OperatorSetNames
|
3
4
|
Signedness = schema.Signedness
|
4
5
|
AttributeQuantizationConfig = schema.AttributeQuantizationConfig
|
5
6
|
OpQuantizationConfig = schema.OpQuantizationConfig
|
@@ -64,10 +64,10 @@ def get_default_op_quantization_config(tp_model: TargetPlatformModel) -> OpQuant
|
|
64
64
|
Raises:
|
65
65
|
AssertionError: If the default quantization configuration list contains more than one configuration option.
|
66
66
|
"""
|
67
|
-
assert len(tp_model.default_qco.
|
67
|
+
assert len(tp_model.default_qco.quantization_configurations) == 1, \
|
68
68
|
f"Default quantization configuration options must contain only one option, " \
|
69
|
-
f"but found {len(tp_model.default_qco.
|
70
|
-
return tp_model.default_qco.
|
69
|
+
f"but found {len(tp_model.default_qco.quantization_configurations)} configurations." # pragma: no cover
|
70
|
+
return tp_model.default_qco.quantization_configurations[0]
|
71
71
|
|
72
72
|
|
73
73
|
def is_opset_in_model(tp_model: TargetPlatformModel, opset_name: str) -> bool:
|
@@ -82,8 +82,7 @@ def is_opset_in_model(tp_model: TargetPlatformModel, opset_name: str) -> bool:
|
|
82
82
|
bool: True if an OperatorsSet with the given name exists in the target platform model,
|
83
83
|
otherwise False.
|
84
84
|
"""
|
85
|
-
return opset_name in [x.name for x in tp_model.operator_set]
|
86
|
-
|
85
|
+
return tp_model.operator_set is not None and opset_name in [x.name for x in tp_model.operator_set]
|
87
86
|
|
88
87
|
def get_opset_by_name(tp_model: TargetPlatformModel, opset_name: str) -> Optional[OperatorsSetBase]:
|
89
88
|
"""
|
@@ -21,8 +21,6 @@ from mct_quantizers import QuantizationMethod
|
|
21
21
|
from model_compression_toolkit.constants import FLOAT_BITWIDTH
|
22
22
|
from model_compression_toolkit.logger import Logger
|
23
23
|
from model_compression_toolkit.target_platform_capabilities.constants import OPS_SET_LIST
|
24
|
-
from model_compression_toolkit.target_platform_capabilities.target_platform.current_tp_model import \
|
25
|
-
_current_tp_model
|
26
24
|
|
27
25
|
class OperatorSetNames(Enum):
|
28
26
|
OPSET_CONV = "Conv"
|
@@ -61,7 +59,6 @@ class OperatorSetNames(Enum):
|
|
61
59
|
OPSET_DROPOUT = "Dropout"
|
62
60
|
OPSET_SPLIT = "Split"
|
63
61
|
OPSET_CHUNK = "Chunk"
|
64
|
-
OPSET_UNBIND = "Unbind"
|
65
62
|
OPSET_MAXPOOL = "MaxPool"
|
66
63
|
OPSET_SIZE = "Size"
|
67
64
|
OPSET_SHAPE = "Shape"
|
@@ -74,6 +71,7 @@ class OperatorSetNames(Enum):
|
|
74
71
|
OPSET_ZERO_PADDING2d = "ZeroPadding2D"
|
75
72
|
OPSET_CAST = "Cast"
|
76
73
|
OPSET_STRIDED_SLICE = "StridedSlice"
|
74
|
+
OPSET_SSD_POST_PROCESS = "SSDPostProcess"
|
77
75
|
|
78
76
|
@classmethod
|
79
77
|
def get_values(cls):
|
@@ -225,10 +223,10 @@ class QuantizationConfigOptions:
|
|
225
223
|
QuantizationConfigOptions wraps a set of quantization configurations to consider during the quantization of an operator.
|
226
224
|
|
227
225
|
Attributes:
|
228
|
-
|
226
|
+
quantization_configurations (Tuple[OpQuantizationConfig]): Tuple of possible OpQuantizationConfig to gather.
|
229
227
|
base_config (Optional[OpQuantizationConfig]): Fallback OpQuantizationConfig to use when optimizing the model in a non-mixed-precision manner.
|
230
228
|
"""
|
231
|
-
|
229
|
+
quantization_configurations: Tuple[OpQuantizationConfig]
|
232
230
|
base_config: Optional[OpQuantizationConfig] = None
|
233
231
|
|
234
232
|
def __post_init__(self):
|
@@ -236,32 +234,32 @@ class QuantizationConfigOptions:
|
|
236
234
|
Post-initialization processing for input validation.
|
237
235
|
|
238
236
|
Raises:
|
239
|
-
Logger critical if
|
237
|
+
Logger critical if quantization_configurations is not a tuple, contains invalid elements, or if base_config is not set correctly.
|
240
238
|
"""
|
241
|
-
# Validate `
|
242
|
-
if not isinstance(self.
|
239
|
+
# Validate `quantization_configurations`
|
240
|
+
if not isinstance(self.quantization_configurations, tuple):
|
243
241
|
Logger.critical(
|
244
|
-
f"'
|
245
|
-
for cfg in self.
|
242
|
+
f"'quantization_configurations' must be a tuple, but received: {type(self.quantization_configurations)}.") # pragma: no cover
|
243
|
+
for cfg in self.quantization_configurations:
|
246
244
|
if not isinstance(cfg, OpQuantizationConfig):
|
247
245
|
Logger.critical(
|
248
246
|
f"Each option must be an instance of 'OpQuantizationConfig', but found an object of type: {type(cfg)}.") # pragma: no cover
|
249
247
|
|
250
248
|
# Handle base_config
|
251
|
-
if len(self.
|
249
|
+
if len(self.quantization_configurations) > 1:
|
252
250
|
if self.base_config is None:
|
253
251
|
Logger.critical(f"For multiple configurations, a 'base_config' is required for non-mixed-precision optimization.") # pragma: no cover
|
254
|
-
if not any(self.base_config == cfg for cfg in self.
|
255
|
-
Logger.critical(f"'base_config' must be included in the quantization config options
|
256
|
-
elif len(self.
|
252
|
+
if not any(self.base_config == cfg for cfg in self.quantization_configurations):
|
253
|
+
Logger.critical(f"'base_config' must be included in the quantization config options.") # pragma: no cover
|
254
|
+
elif len(self.quantization_configurations) == 1:
|
257
255
|
if self.base_config is None:
|
258
|
-
object.__setattr__(self, 'base_config', self.
|
259
|
-
elif self.base_config != self.
|
256
|
+
object.__setattr__(self, 'base_config', self.quantization_configurations[0])
|
257
|
+
elif self.base_config != self.quantization_configurations[0]:
|
260
258
|
Logger.critical(
|
261
|
-
"'base_config' should be the same as the sole item in '
|
259
|
+
"'base_config' should be the same as the sole item in 'quantization_configurations'.") # pragma: no cover
|
262
260
|
|
263
|
-
elif len(self.
|
264
|
-
Logger.critical("'QuantizationConfigOptions' requires at least one 'OpQuantizationConfig'. The provided
|
261
|
+
elif len(self.quantization_configurations) == 0:
|
262
|
+
Logger.critical("'QuantizationConfigOptions' requires at least one 'OpQuantizationConfig'. The provided configurations is empty.") # pragma: no cover
|
265
263
|
|
266
264
|
def clone_and_edit(self, **kwargs) -> 'QuantizationConfigOptions':
|
267
265
|
"""
|
@@ -274,10 +272,10 @@ class QuantizationConfigOptions:
|
|
274
272
|
A new instance of QuantizationConfigOptions with updated configurations.
|
275
273
|
"""
|
276
274
|
updated_base_config = replace(self.base_config, **kwargs)
|
277
|
-
|
278
|
-
replace(cfg, **kwargs) for cfg in self.
|
275
|
+
updated_configs = [
|
276
|
+
replace(cfg, **kwargs) for cfg in self.quantization_configurations
|
279
277
|
]
|
280
|
-
return replace(self, base_config=updated_base_config,
|
278
|
+
return replace(self, base_config=updated_base_config, quantization_configurations=tuple(updated_configs))
|
281
279
|
|
282
280
|
def clone_and_edit_weight_attribute(self, attrs: List[str] = None, **kwargs) -> 'QuantizationConfigOptions':
|
283
281
|
"""
|
@@ -292,7 +290,7 @@ class QuantizationConfigOptions:
|
|
292
290
|
"""
|
293
291
|
updated_base_config = self.base_config
|
294
292
|
updated_configs = []
|
295
|
-
for qc in self.
|
293
|
+
for qc in self.quantization_configurations:
|
296
294
|
if attrs is None:
|
297
295
|
attrs_to_update = list(qc.attr_weights_configs_mapping.keys())
|
298
296
|
else:
|
@@ -300,7 +298,7 @@ class QuantizationConfigOptions:
|
|
300
298
|
# Ensure all attributes exist in the config
|
301
299
|
for attr in attrs_to_update:
|
302
300
|
if attr not in qc.attr_weights_configs_mapping:
|
303
|
-
Logger.critical(f"{attr} does not exist in {qc}.")
|
301
|
+
Logger.critical(f"{attr} does not exist in {qc}.") # pragma: no cover
|
304
302
|
updated_attr_mapping = {
|
305
303
|
attr: qc.attr_weights_configs_mapping[attr].clone_and_edit(**kwargs)
|
306
304
|
for attr in attrs_to_update
|
@@ -308,7 +306,7 @@ class QuantizationConfigOptions:
|
|
308
306
|
if qc == updated_base_config:
|
309
307
|
updated_base_config = replace(updated_base_config, attr_weights_configs_mapping=updated_attr_mapping)
|
310
308
|
updated_configs.append(replace(qc, attr_weights_configs_mapping=updated_attr_mapping))
|
311
|
-
return replace(self, base_config=updated_base_config,
|
309
|
+
return replace(self, base_config=updated_base_config, quantization_configurations=tuple(updated_configs))
|
312
310
|
|
313
311
|
def clone_and_map_weights_attr_keys(self, layer_attrs_mapping: Optional[Dict[str, str]]) -> 'QuantizationConfigOptions':
|
314
312
|
"""
|
@@ -322,7 +320,7 @@ class QuantizationConfigOptions:
|
|
322
320
|
"""
|
323
321
|
updated_configs = []
|
324
322
|
new_base_config = self.base_config
|
325
|
-
for qc in self.
|
323
|
+
for qc in self.quantization_configurations:
|
326
324
|
if layer_attrs_mapping is None:
|
327
325
|
new_attr_mapping = {}
|
328
326
|
else:
|
@@ -333,7 +331,7 @@ class QuantizationConfigOptions:
|
|
333
331
|
if qc == self.base_config:
|
334
332
|
new_base_config = replace(qc, attr_weights_configs_mapping=new_attr_mapping)
|
335
333
|
updated_configs.append(replace(qc, attr_weights_configs_mapping=new_attr_mapping))
|
336
|
-
return replace(self, base_config=new_base_config,
|
334
|
+
return replace(self, base_config=new_base_config, quantization_configurations=tuple(updated_configs))
|
337
335
|
|
338
336
|
def get_info(self) -> Dict[str, Any]:
|
339
337
|
"""
|
@@ -342,7 +340,7 @@ class QuantizationConfigOptions:
|
|
342
340
|
Returns:
|
343
341
|
dict: Information about the quantization configuration options as a dictionary.
|
344
342
|
"""
|
345
|
-
return {f'option {i}': cfg.get_info() for i, cfg in enumerate(self.
|
343
|
+
return {f'option {i}': cfg.get_info() for i, cfg in enumerate(self.quantization_configurations)}
|
346
344
|
|
347
345
|
|
348
346
|
@dataclass(frozen=True)
|
@@ -350,22 +348,7 @@ class TargetPlatformModelComponent:
|
|
350
348
|
"""
|
351
349
|
Component of TargetPlatformModel (Fusing, OperatorsSet, etc.).
|
352
350
|
"""
|
353
|
-
|
354
|
-
def __post_init__(self):
|
355
|
-
"""
|
356
|
-
Post-initialization to register the component with the current TargetPlatformModel.
|
357
|
-
"""
|
358
|
-
_current_tp_model.get().append_component(self)
|
359
|
-
|
360
|
-
def get_info(self) -> Dict[str, Any]:
|
361
|
-
"""
|
362
|
-
Get information about the component to display.
|
363
|
-
|
364
|
-
Returns:
|
365
|
-
Dict[str, Any]: Returns an empty dictionary. The actual component should override
|
366
|
-
this method to provide relevant information.
|
367
|
-
"""
|
368
|
-
return {}
|
351
|
+
pass
|
369
352
|
|
370
353
|
|
371
354
|
@dataclass(frozen=True)
|
@@ -374,12 +357,7 @@ class OperatorsSetBase(TargetPlatformModelComponent):
|
|
374
357
|
Base class to represent a set of a target platform model component of operator set types.
|
375
358
|
Inherits from TargetPlatformModelComponent.
|
376
359
|
"""
|
377
|
-
|
378
|
-
"""
|
379
|
-
Post-initialization to ensure the component is registered with the TargetPlatformModel.
|
380
|
-
Calls the parent class's __post_init__ method to append this component to the current TargetPlatformModel.
|
381
|
-
"""
|
382
|
-
super().__post_init__()
|
360
|
+
pass
|
383
361
|
|
384
362
|
|
385
363
|
@dataclass(frozen=True)
|
@@ -394,23 +372,9 @@ class OperatorsSet(OperatorsSetBase):
|
|
394
372
|
is_default (bool): Indicates whether this set is the default quantization configuration
|
395
373
|
for the TargetPlatformModel or a fusing set.
|
396
374
|
"""
|
397
|
-
name: str
|
375
|
+
name: Union[str, OperatorSetNames]
|
398
376
|
qc_options: QuantizationConfigOptions = None
|
399
377
|
|
400
|
-
def __post_init__(self):
|
401
|
-
"""
|
402
|
-
Post-initialization processing to mark the operator set as default if applicable.
|
403
|
-
|
404
|
-
Calls the parent class's __post_init__ method and sets `is_default` to True
|
405
|
-
if this set corresponds to the default quantization configuration for the
|
406
|
-
TargetPlatformModel or if it is a fusing set.
|
407
|
-
|
408
|
-
"""
|
409
|
-
super().__post_init__()
|
410
|
-
is_fusing_set = self.qc_options is None
|
411
|
-
is_default = _current_tp_model.get().default_qco == self.qc_options or is_fusing_set
|
412
|
-
object.__setattr__(self, 'is_default', is_default)
|
413
|
-
|
414
378
|
def get_info(self) -> Dict[str, Any]:
|
415
379
|
"""
|
416
380
|
Get information about the set as a dictionary.
|
@@ -419,83 +383,67 @@ class OperatorsSet(OperatorsSetBase):
|
|
419
383
|
Dict[str, Any]: A dictionary containing the set name and
|
420
384
|
whether it is the default quantization configuration.
|
421
385
|
"""
|
422
|
-
return {"name": self.name
|
423
|
-
"is_default_qc": self.is_default}
|
386
|
+
return {"name": self.name}
|
424
387
|
|
425
388
|
|
426
389
|
@dataclass(frozen=True)
|
427
390
|
class OperatorSetConcat(OperatorsSetBase):
|
428
391
|
"""
|
429
|
-
Concatenate a
|
392
|
+
Concatenate a tuple of operator sets to treat them similarly in different places (like fusing).
|
430
393
|
|
431
394
|
Attributes:
|
432
|
-
|
395
|
+
operators_set (Tuple[OperatorsSet]): Tuple of operator sets to group.
|
433
396
|
qc_options (None): Configuration options for the set, always None for concatenated sets.
|
434
|
-
name (str): Concatenated name generated from the names of the operator sets
|
397
|
+
name (str): Concatenated name generated from the names of the operator sets.
|
435
398
|
"""
|
436
|
-
|
399
|
+
operators_set: Tuple[OperatorsSet]
|
437
400
|
qc_options: None = field(default=None, init=False)
|
438
|
-
name: str = None
|
439
401
|
|
440
402
|
def __post_init__(self):
|
441
403
|
"""
|
442
404
|
Post-initialization processing to generate the concatenated name and set it as the `name` attribute.
|
443
405
|
|
444
406
|
Calls the parent class's __post_init__ method and creates a concatenated name
|
445
|
-
by joining the names of all operator sets in `
|
407
|
+
by joining the names of all operator sets in `operators_set`.
|
446
408
|
"""
|
447
|
-
super().__post_init__()
|
448
409
|
# Generate the concatenated name from the operator sets
|
449
|
-
concatenated_name = "_".join([op.name for op in self.
|
410
|
+
concatenated_name = "_".join([op.name.value if hasattr(op.name, "value") else op.name for op in self.operators_set])
|
450
411
|
# Set the inherited name attribute using `object.__setattr__` since the dataclass is frozen
|
451
412
|
object.__setattr__(self, "name", concatenated_name)
|
452
413
|
|
453
|
-
def get_info(self) -> Dict[str, Any]:
|
454
|
-
"""
|
455
|
-
Get information about the concatenated set as a dictionary.
|
456
|
-
|
457
|
-
Returns:
|
458
|
-
Dict[str, Any]: A dictionary containing the concatenated name and
|
459
|
-
the list of names of the operator sets in `op_set_list`.
|
460
|
-
"""
|
461
|
-
return {"name": self.name,
|
462
|
-
OPS_SET_LIST: [s.name for s in self.op_set_list]}
|
463
|
-
|
464
414
|
|
465
415
|
@dataclass(frozen=True)
|
466
416
|
class Fusing(TargetPlatformModelComponent):
|
467
417
|
"""
|
468
|
-
Fusing defines a
|
418
|
+
Fusing defines a tuple of operators that should be combined and treated as a single operator,
|
469
419
|
hence no quantization is applied between them.
|
470
420
|
|
471
421
|
Attributes:
|
472
|
-
|
422
|
+
operator_groups (Tuple[Union[OperatorsSet, OperatorSetConcat]]): A tuple of operator groups,
|
473
423
|
each being either an OperatorSetConcat or an OperatorsSet.
|
474
424
|
name (str): The name for the Fusing instance. If not provided, it is generated from the operator groups' names.
|
475
425
|
"""
|
476
|
-
|
477
|
-
name: str = None
|
426
|
+
operator_groups: Tuple[Union[OperatorsSet, OperatorSetConcat]]
|
478
427
|
|
479
428
|
def __post_init__(self):
|
480
429
|
"""
|
481
430
|
Post-initialization processing for input validation and name generation.
|
482
431
|
|
483
|
-
Calls the parent class's __post_init__ method, validates the
|
432
|
+
Calls the parent class's __post_init__ method, validates the operator_groups,
|
484
433
|
and generates the name if not explicitly provided.
|
485
434
|
|
486
435
|
Raises:
|
487
|
-
Logger critical if
|
436
|
+
Logger critical if operator_groups is not a tuple or if it contains fewer than two operators.
|
488
437
|
"""
|
489
|
-
|
490
|
-
|
491
|
-
if not isinstance(self.operator_groups_list, list):
|
438
|
+
# Validate the operator_groups
|
439
|
+
if not isinstance(self.operator_groups, tuple):
|
492
440
|
Logger.critical(
|
493
|
-
f"
|
494
|
-
if len(self.
|
441
|
+
f"Operator groups should be of type 'tuple' but is {type(self.operator_groups)}.") # pragma: no cover
|
442
|
+
if len(self.operator_groups) < 2:
|
495
443
|
Logger.critical("Fusing cannot be created for a single operator.") # pragma: no cover
|
496
444
|
|
497
445
|
# Generate the name from the operator groups if not provided
|
498
|
-
generated_name = '_'.join([x.name for x in self.
|
446
|
+
generated_name = '_'.join([x.name.value if hasattr(x.name, 'value') else x.name for x in self.operator_groups])
|
499
447
|
object.__setattr__(self, 'name', generated_name)
|
500
448
|
|
501
449
|
def contains(self, other: Any) -> bool:
|
@@ -512,11 +460,11 @@ class Fusing(TargetPlatformModelComponent):
|
|
512
460
|
return False
|
513
461
|
|
514
462
|
# Check for containment by comparing operator groups
|
515
|
-
for i in range(len(self.
|
516
|
-
for j in range(len(other.
|
517
|
-
if self.
|
518
|
-
isinstance(self.
|
519
|
-
other.
|
463
|
+
for i in range(len(self.operator_groups) - len(other.operator_groups) + 1):
|
464
|
+
for j in range(len(other.operator_groups)):
|
465
|
+
if self.operator_groups[i + j] != other.operator_groups[j] and not (
|
466
|
+
isinstance(self.operator_groups[i + j], OperatorSetConcat) and (
|
467
|
+
other.operator_groups[j] in self.operator_groups[i + j].operators_set)):
|
520
468
|
break
|
521
469
|
else:
|
522
470
|
# If all checks pass, the other Fusing instance is contained
|
@@ -534,8 +482,8 @@ class Fusing(TargetPlatformModelComponent):
|
|
534
482
|
or just the sequence of operator groups if no name is set.
|
535
483
|
"""
|
536
484
|
if self.name is not None:
|
537
|
-
return {self.name: ' -> '.join([x.name for x in self.
|
538
|
-
return ' -> '.join([x.name for x in self.
|
485
|
+
return {self.name: ' -> '.join([x.name for x in self.operator_groups])}
|
486
|
+
return ' -> '.join([x.name for x in self.operator_groups])
|
539
487
|
|
540
488
|
|
541
489
|
@dataclass(frozen=True)
|
@@ -550,8 +498,8 @@ class TargetPlatformModel:
|
|
550
498
|
tpc_platform_type (Optional[str]): Type of the platform for the Target Platform Configuration.
|
551
499
|
add_metadata (bool): Flag to determine if metadata should be added.
|
552
500
|
name (str): Name of the Target Platform Model.
|
553
|
-
operator_set (
|
554
|
-
fusing_patterns (
|
501
|
+
operator_set (Tuple[OperatorsSetBase]): Tuple of operator sets within the model.
|
502
|
+
fusing_patterns (Tuple[Fusing]): Tuple of fusing patterns for the model.
|
555
503
|
is_simd_padding (bool): Indicates if SIMD padding is applied.
|
556
504
|
SCHEMA_VERSION (int): Version of the schema for the Target Platform Model.
|
557
505
|
"""
|
@@ -561,8 +509,8 @@ class TargetPlatformModel:
|
|
561
509
|
tpc_platform_type: Optional[str]
|
562
510
|
add_metadata: bool = True
|
563
511
|
name: str = "default_tp_model"
|
564
|
-
operator_set:
|
565
|
-
fusing_patterns:
|
512
|
+
operator_set: Tuple[OperatorsSetBase] = None
|
513
|
+
fusing_patterns: Tuple[Fusing] = None
|
566
514
|
is_simd_padding: bool = False
|
567
515
|
|
568
516
|
SCHEMA_VERSION: int = 1
|
@@ -578,26 +526,12 @@ class TargetPlatformModel:
|
|
578
526
|
# Validate `default_qco`
|
579
527
|
if not isinstance(self.default_qco, QuantizationConfigOptions):
|
580
528
|
Logger.critical("'default_qco' must be an instance of QuantizationConfigOptions.") # pragma: no cover
|
581
|
-
if len(self.default_qco.
|
529
|
+
if len(self.default_qco.quantization_configurations) != 1:
|
582
530
|
Logger.critical("Default QuantizationConfigOptions must contain exactly one option.") # pragma: no cover
|
583
531
|
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
Args:
|
589
|
-
tp_model_component (TargetPlatformModelComponent): Component to attach to the model.
|
590
|
-
|
591
|
-
Raises:
|
592
|
-
Logger critical if the component is not an instance of Fusing or OperatorsSetBase.
|
593
|
-
"""
|
594
|
-
if isinstance(tp_model_component, Fusing):
|
595
|
-
self.fusing_patterns.append(tp_model_component)
|
596
|
-
elif isinstance(tp_model_component, OperatorsSetBase):
|
597
|
-
self.operator_set.append(tp_model_component)
|
598
|
-
else:
|
599
|
-
Logger.critical(
|
600
|
-
f"Attempted to append an unrecognized TargetPlatformModelComponent of type: {type(tp_model_component)}.") # pragma: no cover
|
532
|
+
opsets_names = [op.name.value if hasattr(op.name, "value") else op.name for op in self.operator_set] if self.operator_set else []
|
533
|
+
if len(set(opsets_names)) != len(opsets_names):
|
534
|
+
Logger.critical("Operator Sets must have unique names.") # pragma: no cover
|
601
535
|
|
602
536
|
def get_info(self) -> Dict[str, Any]:
|
603
537
|
"""
|
@@ -608,51 +542,10 @@ class TargetPlatformModel:
|
|
608
542
|
"""
|
609
543
|
return {
|
610
544
|
"Model name": self.name,
|
611
|
-
"Operators sets": [o.get_info() for o in self.operator_set],
|
612
|
-
"Fusing patterns": [f.get_info() for f in self.fusing_patterns],
|
545
|
+
"Operators sets": [o.get_info() for o in self.operator_set] if self.operator_set else [],
|
546
|
+
"Fusing patterns": [f.get_info() for f in self.fusing_patterns] if self.fusing_patterns else [],
|
613
547
|
}
|
614
548
|
|
615
|
-
def __validate_model(self):
|
616
|
-
"""
|
617
|
-
Validate the model's configuration to ensure its integrity.
|
618
|
-
|
619
|
-
Raises:
|
620
|
-
Logger critical if the model contains multiple operator sets with the same name.
|
621
|
-
"""
|
622
|
-
opsets_names = [op.name for op in self.operator_set]
|
623
|
-
if len(set(opsets_names)) != len(opsets_names):
|
624
|
-
Logger.critical("Operator Sets must have unique names.") # pragma: no cover
|
625
|
-
|
626
|
-
def __enter__(self) -> 'TargetPlatformModel':
|
627
|
-
"""
|
628
|
-
Start defining the TargetPlatformModel using a 'with' statement.
|
629
|
-
|
630
|
-
Returns:
|
631
|
-
TargetPlatformModel: The initialized TargetPlatformModel object.
|
632
|
-
"""
|
633
|
-
_current_tp_model.set(self)
|
634
|
-
return self
|
635
|
-
|
636
|
-
def __exit__(self, exc_type, exc_value, tb) -> 'TargetPlatformModel':
|
637
|
-
"""
|
638
|
-
Finalize and validate the TargetPlatformModel at the end of the 'with' clause.
|
639
|
-
|
640
|
-
Args:
|
641
|
-
exc_type: Exception type, if any occurred.
|
642
|
-
exc_value: Exception value, if any occurred.
|
643
|
-
tb: Traceback object, if an exception occurred.
|
644
|
-
|
645
|
-
Raises:
|
646
|
-
The exception raised in the 'with' block, if any.
|
647
|
-
|
648
|
-
Returns:
|
649
|
-
TargetPlatformModel: The validated TargetPlatformModel object.
|
650
|
-
"""
|
651
|
-
if exc_value is not None:
|
652
|
-
raise exc_value
|
653
|
-
self.__validate_model()
|
654
|
-
_current_tp_model.reset()
|
655
|
-
return self
|
656
549
|
|
657
550
|
def show(self):
|
658
551
|
"""
|
@@ -15,7 +15,6 @@
|
|
15
15
|
|
16
16
|
from model_compression_toolkit.target_platform_capabilities.target_platform.targetplatform2framework.attribute_filter import AttributeFilter
|
17
17
|
from model_compression_toolkit.target_platform_capabilities.target_platform.targetplatform2framework import TargetPlatformCapabilities, OperationsSetToLayers, Smaller, SmallerEq, NotEq, Eq, GreaterEq, Greater, LayerFilterParams, OperationsToLayers, get_current_tpc
|
18
|
-
from model_compression_toolkit.target_platform_capabilities.target_platform.target_platform_model import get_default_quantization_config_options
|
19
18
|
from model_compression_toolkit.target_platform_capabilities.schema.mct_current_schema import TargetPlatformModel, OperatorsSet, \
|
20
19
|
OperatorSetConcat, Signedness, AttributeQuantizationConfig, OpQuantizationConfig, QuantizationConfigOptions, Fusing
|
21
20
|
|
@@ -90,7 +90,7 @@ class OperationsToLayers:
|
|
90
90
|
return o.layers
|
91
91
|
if isinstance(op, OperatorSetConcat): # If its a concat - return all layers from all OperatorsSets that in the OperatorSetConcat
|
92
92
|
layers = []
|
93
|
-
for o in op.
|
93
|
+
for o in op.operators_set:
|
94
94
|
layers.extend(self.get_layers_by_op(o))
|
95
95
|
return layers
|
96
96
|
Logger.warning(f'{op.name} is not in model.')
|