mct-nightly 2.3.0.20250224.520__tar.gz → 2.3.0.20250226.518__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.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/PKG-INFO +4 -4
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/README.md +3 -3
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/mct_nightly.egg-info/PKG-INFO +4 -4
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/mct_nightly.egg-info/SOURCES.txt +1 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/__init__.py +1 -1
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/collectors/histogram_collector.py +19 -20
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/collectors/statistics_collector.py +7 -3
- mct_nightly-2.3.0.20250226.518/model_compression_toolkit/core/common/collectors/weighted_histogram_collector.py +114 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/framework_implementation.py +9 -4
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/base_node.py +16 -6
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/hessian/hessian_info_service.py +31 -15
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/hessian/hessian_scores_calculator.py +1 -1
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/hessian/hessian_scores_request.py +7 -2
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/model_collector.py +115 -17
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_params_generation/error_functions.py +2 -0
- mct_nightly-2.3.0.20250226.518/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_activations_computation.py +155 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/keras_implementation.py +35 -27
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/hessian/activation_hessian_scores_calculator_pytorch.py +23 -61
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/pytorch_implementation.py +34 -18
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/quantization_prep_runner.py +1 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/attach2fw.py +2 -2
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/framework_quantization_capabilities.py +2 -1
- mct_nightly-2.3.0.20250224.520/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_activations_computation.py +0 -78
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/LICENSE.md +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/mct_nightly.egg-info/dependency_links.txt +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/mct_nightly.egg-info/requires.txt +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/mct_nightly.egg-info/top_level.txt +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/constants.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/analyzer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/back2framework/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/back2framework/base_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/base_substitutions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/collectors/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/collectors/base_collector.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/collectors/mean_collector.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/collectors/min_max_per_channel_collector.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/framework_info.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/fusion/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/fusion/graph_fuser.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/fusion/layer_fusing.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/base_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/edge.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/functional_node.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/graph_matchers.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/graph_searches.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/memory_graph/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/memory_graph/bipartite_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/memory_graph/compute_graph_max_cut.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/memory_graph/cut.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/memory_graph/max_cut_astar.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/memory_graph/memory_element.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/memory_graph/memory_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/graph/virtual_activation_weights_node.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/hessian/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/hessian/hessian_info_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/matchers/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/matchers/base_graph_filter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/matchers/base_matcher.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/matchers/edge_matcher.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/matchers/function.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/matchers/node_matcher.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/matchers/walk_matcher.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/memory_computation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/bit_width_setter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/configurable_quant_id.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/configurable_quantizer_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/distance_weighting.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_candidates_filter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_quantization_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_ru_helper.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_manager.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_calculator.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/search_methods/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/search_methods/linear_programming.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/sensitivity_evaluation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/set_layer_to_bitwidth.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/mixed_precision/solution_refinement_procedure.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/model_builder_mode.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/model_validation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/network_editors/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/network_editors/actions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/network_editors/edit_network.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/network_editors/node_filters.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/node_prior_info.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/channels_grouping.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/greedy_mask_calculator.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/importance_metrics/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/importance_metrics/base_importance_metric.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/importance_metrics/importance_metric_factory.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/importance_metrics/lfh_importance_metric.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/mask/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/mask/per_channel_mask.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/mask/per_simd_group_mask.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/memory_calculator.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/prune_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/pruner.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/pruning_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/pruning_framework_implementation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/pruning_info.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/pruning/pruning_section.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/bit_width_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/candidate_node_quantization_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/core_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/debug_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/filter_nodes_candidates.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/node_quantization_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_fn_selection.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_params_fn_selection.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_params_generation/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_params_generation/lut_kmeans_params.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_params_generation/outlier_filter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_params_generation/power_of_two_selection.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_computation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_search.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_weights_computation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_params_generation/symmetric_selection.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantization_params_generation/uniform_selection.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantize_graph_weights.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantize_node.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantizers/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantizers/lut_kmeans_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantizers/quantizers_helpers.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/quantizers/uniform_quantizers.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/similarity_analyzer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/statistics_correction/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/statistics_correction/apply_activation_bias_correction_to_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/statistics_correction/apply_bias_correction_to_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/statistics_correction/apply_second_moment_correction_to_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/statistics_correction/compute_activation_bias_correction_of_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/statistics_correction/compute_bias_correction_of_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/statistics_correction/statistics_correction.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/apply_substitutions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/batchnorm_folding.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/batchnorm_reconstruction.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/batchnorm_refusing.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/linear_collapsing.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/linear_collapsing_substitution.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/remove_identity.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/residual_collapsing.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/scale_equalization.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/shift_negative_activation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/softmax_shift.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/substitutions/weights_activation_split.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/user_info.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/visualization/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/visualization/final_config_visualizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/visualization/nn_visualizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/common/visualization/tensorboard_writer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/graph_prep_runner.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/back2framework/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/back2framework/factory_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/back2framework/float_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/back2framework/instance_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/back2framework/keras_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/back2framework/mixed_precision_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/back2framework/quantized_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/constants.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/custom_layer_validation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/data_util.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/default_framework_info.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/activation_decomposition.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/conv_funcs_to_layer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/dwconv_to_conv.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/input_scaling.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/linear_collapsing.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/matmul_substitution.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/remove_identity.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/residual_collapsing.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/scale_equalization.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/separableconv_decomposition.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/sigmoid_mul_to_swish.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/softmax_shift.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/weights_activation_split.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/hessian/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/hessian/activation_hessian_scores_calculator_keras.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/hessian/hessian_scores_calculator_keras.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/hessian/weights_hessian_scores_calculator_keras.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/keras_model_validation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/keras_node_prior_info.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/mixed_precision/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/mixed_precision/configurable_activation_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/mixed_precision/configurable_weights_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/pruning/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/pruning/pruning_keras_implementation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/quantizer/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/quantizer/fake_quant_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/quantizer/lut_fake_quant.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/reader/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/reader/common.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/reader/connectivity_handler.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/reader/nested_model/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/reader/nested_model/edges_merger.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/reader/nested_model/nested_model_handler.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/reader/nested_model/nodes_merger.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/reader/nested_model/outputs_merger.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/reader/node_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/reader/reader.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/resource_utilization_data_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/statistics_correction/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/statistics_correction/apply_second_moment_correction.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/statistics_correction/keras_compute_activation_bias_correction_of_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/tf_tensor_numpy.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/keras/visualization/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/back2framework/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/back2framework/factory_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/back2framework/float_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/back2framework/instance_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/back2framework/mixed_precision_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/back2framework/pytorch_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/quantized_layer_wrapper.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/wrapper_quantize_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/back2framework/quantized_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/constants.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/data_util.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/default_framework_info.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/const_holder_conv.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_batch_norm.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_layer_norm.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_linear.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/linear_collapsing.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/matmul_decomposition.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/remove_identity.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/reshape_with_static_shapes.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/residual_collapsing.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scale_equalization.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scaled_dot_product_attention.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/softmax_shift.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/transform_function_call_method.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/weights_activation_split.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/hessian/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/hessian/hessian_scores_calculator_pytorch.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/hessian/weights_hessian_scores_calculator_pytorch.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/mixed_precision/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_activation_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_weights_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/pruning/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/pruning/pruning_pytorch_implementation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/pytorch_device_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/pytorch_node_prior_info.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/quantizer/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/quantizer/fake_quant_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/quantizer/lut_fake_quant.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/reader/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/reader/graph_builders.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/reader/node_holders.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/reader/reader.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/statistics_correction/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/statistics_correction/apply_second_moment_correction.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/statistics_correction/pytorch_compute_activation_bias_correction_of_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/pytorch/utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/core/runner.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/common/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/common/constants.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/common/data_generation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/common/data_generation_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/common/enums.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/common/image_pipeline.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/common/model_info_exctractors.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/common/optimization_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/constants.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/image_operations.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/image_pipeline.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/keras_data_generation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/model_info_exctractors.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/optimization_functions/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/optimization_functions/batchnorm_alignment_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/optimization_functions/bn_layer_weighting_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/optimization_functions/image_initilization.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/optimization_functions/lr_scheduler.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/optimization_functions/output_loss_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/optimization_functions/scheduler_step_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/keras/optimization_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/constants.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/image_operations.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/image_pipeline.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/model_info_exctractors.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/optimization_functions/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/optimization_functions/batchnorm_alignment_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/optimization_functions/bn_layer_weighting_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/optimization_functions/image_initilization.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/optimization_functions/lr_scheduler.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/optimization_functions/output_loss_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/optimization_functions/scheduler_step_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/optimization_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/defaultdict.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/exporter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/quantization_format.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/keras/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/keras/base_keras_exporter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/keras/export_serialization_format.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_keras_exporter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_tflite_exporter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/keras/int8_tflite_exporter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/keras/mctq_keras_exporter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/pytorch/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/pytorch/base_pytorch_exporter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/pytorch/export_serialization_format.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_torchscript_pytorch_exporter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/get_inferable_quantizers.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/keras/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/keras/builder/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/keras/builder/node_to_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/pytorch/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/node_to_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/common/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/common/gptq_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/common/gptq_constants.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/common/gptq_framework_implementation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/common/gptq_graph.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/common/gptq_training.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/common/gradual_activation_quantization.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/common/regularization_factory.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/gptq_keras_implementation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/gptq_loss.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/gptq_training.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/graph_info.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/quantization_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/quantizer/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/quantizer/quant_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/quantizer/quantization_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/gptq_loss.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/gptq_pytorch_implementation.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/gptq_training.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/graph_info.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/quantization_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/quantizer/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/quantizer/quant_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/quantizer/quantization_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/gptq/runner.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/logger.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/metadata.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/pruning/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/pruning/keras/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/pruning/keras/pruning_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/pruning/pytorch/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/pruning/pytorch/pruning_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/ptq/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/ptq/keras/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/ptq/keras/quantization_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/ptq/pytorch/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/ptq/pytorch/quantization_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/ptq/runner.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/common/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/common/qat_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/quantization_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/quantizer/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/quantizer/base_keras_qat_weight_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/quantizer/lsq/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/quantizer/lsq/symmetric_lsq.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/quantizer/lsq/uniform_lsq.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/quantizer/quant_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/quantizer/quantization_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/uniform_ste.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/pytorch/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/pytorch/quantization_facade.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/pytorch/quantizer/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_weight_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/pytorch/quantizer/lsq/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/pytorch/quantizer/lsq/symmetric_lsq.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/pytorch/quantizer/lsq/uniform_lsq.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/pytorch/quantizer/quantization_builder.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/uniform_ste.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/constants.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/immutable.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/schema/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/schema/mct_current_schema.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/schema/schema_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/schema/v1.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/attach2keras.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/attach2pytorch.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/attribute_filter.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/current_tpc.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/framework_quantization_capabilities_component.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/layer_filter_params.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/targetplatform2framework/operations_to_layers.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_io_handler.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/common/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/common/annealing_schedulers.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/common/base_trainable_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/common/constants.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/common/get_quantizer_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/common/get_quantizers.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/common/quant_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/common/trainable_quantizer_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/common/training_method.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/common/util.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/base_activation_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/symmetric_lsq.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/uniform_lsq.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/symmetric_ste.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/uniform_ste.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/annealing_schedulers.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/config_serialization.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/load_model.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/keras/quantizer_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/base_activation_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/symmetric_lsq.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/uniform_lsq.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/symmetric_ste.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/uniform_ste.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/annealing_schedulers.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/trainable_infrastructure/pytorch/quantizer_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/verify_packages.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/common/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/common/constants.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/common/core_report_generator.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/common/dataset_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/common/framework_report_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/common/model_analyzer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/common/model_folding_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/common/similarity_calculator.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/common/similarity_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/common/tensorboard_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/common/xquant_config.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/keras/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/keras/dataset_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/keras/facade_xquant_report.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/keras/keras_report_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/keras/model_analyzer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/keras/similarity_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/keras/tensorboard_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/pytorch/__init__.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/pytorch/dataset_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/pytorch/facade_xquant_report.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/pytorch/model_analyzer.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/pytorch/pytorch_report_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/pytorch/similarity_functions.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/model_compression_toolkit/xquant/pytorch/tensorboard_utils.py +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/setup.cfg +0 -0
- {mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/setup.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: mct-nightly
|
3
|
-
Version: 2.3.0.
|
3
|
+
Version: 2.3.0.20250226.518
|
4
4
|
Summary: A Model Compression Toolkit for neural networks
|
5
5
|
Classifier: Programming Language :: Python :: 3
|
6
6
|
Classifier: License :: OSI Approved :: Apache Software License
|
@@ -48,9 +48,9 @@ ______________________________________________________________________
|
|
48
48
|
<a href="#license">License</a>
|
49
49
|
</p>
|
50
50
|
<p align="center">
|
51
|
-
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/pytorch-2.
|
52
|
-
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/
|
53
|
-
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/python-3.9%20%
|
51
|
+
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/pytorch-2.2%20%7C%202.3%20%7C%202.4%20%7C%202.5-blue" /></a>
|
52
|
+
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/tensorflow-2.12%20%7C%202.13%20%7C%202.14%20%7C%202.15-blue" /></a>
|
53
|
+
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue" /></a>
|
54
54
|
<a href="https://github.com/sony/model_optimization/releases"><img src="https://img.shields.io/github/v/release/sony/model_optimization" /></a>
|
55
55
|
<a href="https://github.com/sony/model_optimization/blob/main/LICENSE.md"><img src="https://img.shields.io/badge/license-Apache%202.0-blue" /></a>
|
56
56
|
|
@@ -17,9 +17,9 @@ ______________________________________________________________________
|
|
17
17
|
<a href="#license">License</a>
|
18
18
|
</p>
|
19
19
|
<p align="center">
|
20
|
-
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/pytorch-2.
|
21
|
-
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/
|
22
|
-
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/python-3.9%20%
|
20
|
+
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/pytorch-2.2%20%7C%202.3%20%7C%202.4%20%7C%202.5-blue" /></a>
|
21
|
+
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/tensorflow-2.12%20%7C%202.13%20%7C%202.14%20%7C%202.15-blue" /></a>
|
22
|
+
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue" /></a>
|
23
23
|
<a href="https://github.com/sony/model_optimization/releases"><img src="https://img.shields.io/github/v/release/sony/model_optimization" /></a>
|
24
24
|
<a href="https://github.com/sony/model_optimization/blob/main/LICENSE.md"><img src="https://img.shields.io/badge/license-Apache%202.0-blue" /></a>
|
25
25
|
|
{mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/mct_nightly.egg-info/PKG-INFO
RENAMED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: mct-nightly
|
3
|
-
Version: 2.3.0.
|
3
|
+
Version: 2.3.0.20250226.518
|
4
4
|
Summary: A Model Compression Toolkit for neural networks
|
5
5
|
Classifier: Programming Language :: Python :: 3
|
6
6
|
Classifier: License :: OSI Approved :: Apache Software License
|
@@ -48,9 +48,9 @@ ______________________________________________________________________
|
|
48
48
|
<a href="#license">License</a>
|
49
49
|
</p>
|
50
50
|
<p align="center">
|
51
|
-
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/pytorch-2.
|
52
|
-
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/
|
53
|
-
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/python-3.9%20%
|
51
|
+
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/pytorch-2.2%20%7C%202.3%20%7C%202.4%20%7C%202.5-blue" /></a>
|
52
|
+
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/tensorflow-2.12%20%7C%202.13%20%7C%202.14%20%7C%202.15-blue" /></a>
|
53
|
+
<a href="https://sony.github.io/model_optimization#prerequisites"><img src="https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue" /></a>
|
54
54
|
<a href="https://github.com/sony/model_optimization/releases"><img src="https://img.shields.io/github/v/release/sony/model_optimization" /></a>
|
55
55
|
<a href="https://github.com/sony/model_optimization/blob/main/LICENSE.md"><img src="https://img.shields.io/badge/license-Apache%202.0-blue" /></a>
|
56
56
|
|
{mct_nightly-2.3.0.20250224.520 → mct_nightly-2.3.0.20250226.518}/mct_nightly.egg-info/SOURCES.txt
RENAMED
@@ -37,6 +37,7 @@ model_compression_toolkit/core/common/collectors/histogram_collector.py
|
|
37
37
|
model_compression_toolkit/core/common/collectors/mean_collector.py
|
38
38
|
model_compression_toolkit/core/common/collectors/min_max_per_channel_collector.py
|
39
39
|
model_compression_toolkit/core/common/collectors/statistics_collector.py
|
40
|
+
model_compression_toolkit/core/common/collectors/weighted_histogram_collector.py
|
40
41
|
model_compression_toolkit/core/common/fusion/__init__.py
|
41
42
|
model_compression_toolkit/core/common/fusion/graph_fuser.py
|
42
43
|
model_compression_toolkit/core/common/fusion/layer_fusing.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.3.0.
|
30
|
+
__version__ = "2.3.0.20250226.000518"
|
@@ -53,38 +53,37 @@ class HistogramCollector(BaseCollector):
|
|
53
53
|
"""
|
54
54
|
|
55
55
|
super().__init__()
|
56
|
-
self.
|
57
|
-
self.
|
58
|
-
self.
|
59
|
-
self.
|
56
|
+
self._n_bins = n_bins
|
57
|
+
self._bins = None
|
58
|
+
self._counts = None
|
59
|
+
self._histogram_per_iteration = []
|
60
60
|
|
61
|
-
def
|
61
|
+
def _merge_histograms(self):
|
62
62
|
"""
|
63
63
|
After collecting histogram per iteration, we merge these histograms to a single histogram
|
64
64
|
containing all samples from all iterations.
|
65
65
|
The merge is done in a lazy manner (is computed only when actually needed).
|
66
66
|
"""
|
67
|
-
if len(self.
|
67
|
+
if len(self._histogram_per_iteration) > 0:
|
68
68
|
# Stack all bins that were gathered during inference
|
69
|
-
bins_stack = np.vstack([hist[1] for hist in self.
|
69
|
+
bins_stack = np.vstack([hist[1] for hist in self._histogram_per_iteration])
|
70
70
|
|
71
71
|
# The combined histogram will be computed between new min/max (which is the min/max of all histograms).
|
72
72
|
# The bin width of the merged histogram is the minimal bin width among all histograms (to lose as less
|
73
73
|
# information as possible during the merge).
|
74
74
|
merged_histogram_min = np.min(bins_stack)
|
75
75
|
merged_histogram_max = np.max(bins_stack)
|
76
|
-
|
77
|
-
merged_histogram_bins = np.arange(merged_histogram_min, merged_histogram_max+merged_bin_width, merged_bin_width)
|
76
|
+
merged_histogram_bins = np.linspace(merged_histogram_min, merged_histogram_max, self._n_bins + 1)
|
78
77
|
|
79
78
|
merged_histogram_counts = None
|
80
|
-
for histogram in self.
|
79
|
+
for histogram in self._histogram_per_iteration: # Iterate all collected histograms and merge them
|
81
80
|
if merged_histogram_counts is None: # First histogram to consider
|
82
|
-
merged_histogram_counts =
|
81
|
+
merged_histogram_counts = histogram[0].astype(np.float64) # Convert to float64
|
83
82
|
else: # Merge rest of histograms into existing final histogram
|
84
83
|
merged_histogram_counts += interpolate_histogram(merged_histogram_bins, histogram[1], histogram[0])
|
85
84
|
|
86
|
-
self.
|
87
|
-
self.
|
85
|
+
self._counts = merged_histogram_counts
|
86
|
+
self._bins = merged_histogram_bins
|
88
87
|
|
89
88
|
def scale(self, scale_factor: np.ndarray):
|
90
89
|
"""
|
@@ -102,7 +101,7 @@ class HistogramCollector(BaseCollector):
|
|
102
101
|
self.update_legal_status(is_illegal=True)
|
103
102
|
else:
|
104
103
|
bins, _ = self.get_histogram()
|
105
|
-
self.
|
104
|
+
self._bins = bins * scale_factor
|
106
105
|
|
107
106
|
def shift(self, shift_value: np.ndarray):
|
108
107
|
"""
|
@@ -120,7 +119,7 @@ class HistogramCollector(BaseCollector):
|
|
120
119
|
self.update_legal_status(is_illegal=True)
|
121
120
|
else:
|
122
121
|
bins, _ = self.get_histogram()
|
123
|
-
self.
|
122
|
+
self._bins = bins + shift_value
|
124
123
|
|
125
124
|
def get_histogram(self) -> Tuple[np.ndarray, np.ndarray]:
|
126
125
|
"""
|
@@ -130,9 +129,9 @@ class HistogramCollector(BaseCollector):
|
|
130
129
|
self.validate_data_correctness()
|
131
130
|
# If collected histograms (one per inference iteration) were not merged before, merge them and return the
|
132
131
|
# merged histogram.
|
133
|
-
if self.
|
134
|
-
self.
|
135
|
-
return self.
|
132
|
+
if self._bins is None or self._counts is None:
|
133
|
+
self._merge_histograms()
|
134
|
+
return self._bins, self._counts
|
136
135
|
|
137
136
|
def max(self):
|
138
137
|
"""
|
@@ -156,5 +155,5 @@ class HistogramCollector(BaseCollector):
|
|
156
155
|
Args:
|
157
156
|
x: Tensor going through the collector to update the histogram according to.
|
158
157
|
"""
|
159
|
-
count, bins = np.histogram(x, bins=self.
|
160
|
-
self.
|
158
|
+
count, bins = np.histogram(x, bins=self._n_bins)
|
159
|
+
self._histogram_per_iteration.append((count, bins))
|
@@ -17,13 +17,12 @@
|
|
17
17
|
import math
|
18
18
|
from copy import deepcopy
|
19
19
|
from typing import Any, Tuple
|
20
|
-
|
21
20
|
import numpy as np
|
22
21
|
|
23
|
-
from model_compression_toolkit.core.common.framework_info import FrameworkInfo, ChannelAxis
|
24
22
|
from model_compression_toolkit.core.common.collectors.histogram_collector import HistogramCollector
|
25
23
|
from model_compression_toolkit.core.common.collectors.mean_collector import MeanCollector
|
26
24
|
from model_compression_toolkit.core.common.collectors.min_max_per_channel_collector import MinMaxPerChannelCollector
|
25
|
+
from model_compression_toolkit.core.common.collectors.weighted_histogram_collector import WeightedHistogramCollector
|
27
26
|
|
28
27
|
|
29
28
|
class BaseStatsCollector(object):
|
@@ -71,21 +70,24 @@ class StatsCollector(BaseStatsCollector):
|
|
71
70
|
|
72
71
|
super().__init__()
|
73
72
|
self.hc = HistogramCollector()
|
73
|
+
self.weighted_hc = WeightedHistogramCollector()
|
74
74
|
self.mc = MeanCollector(axis=out_channel_axis)
|
75
75
|
self.mpcc = MinMaxPerChannelCollector(init_min_value=init_min_value,
|
76
76
|
init_max_value=init_max_value,
|
77
77
|
axis=out_channel_axis)
|
78
78
|
|
79
|
-
def update_statistics(self, x: Any):
|
79
|
+
def update_statistics(self, x: Any, weights: Any=None):
|
80
80
|
"""
|
81
81
|
Update statistics in all collectors with a new tensor to consider.
|
82
82
|
|
83
83
|
Args:
|
84
84
|
x: Tensor to consider when updating statistics.
|
85
|
+
weights: Weights tensor to consider when updating statistics.
|
85
86
|
"""
|
86
87
|
|
87
88
|
x = standardize_tensor(x)
|
88
89
|
self.hc.update(x)
|
90
|
+
self.weighted_hc.update(x, weights)
|
89
91
|
self.mc.update(x)
|
90
92
|
self.mpcc.update(x)
|
91
93
|
|
@@ -228,6 +230,7 @@ def shift_statistics(collector: BaseStatsCollector,
|
|
228
230
|
shifted_collector.mc.shift(shift_value)
|
229
231
|
if shifted_collector.require_collection():
|
230
232
|
shifted_collector.hc.shift(shift_value)
|
233
|
+
shifted_collector.weighted_hc.shift(shift_value)
|
231
234
|
|
232
235
|
return shifted_collector
|
233
236
|
|
@@ -253,5 +256,6 @@ def scale_statistics(collector: BaseStatsCollector,
|
|
253
256
|
scaled_collector.mc.scale(scale_value)
|
254
257
|
if scaled_collector.require_collection():
|
255
258
|
scaled_collector.hc.scale(scale_value)
|
259
|
+
scaled_collector.weighted_hc.scale(scale_value)
|
256
260
|
|
257
261
|
return scaled_collector
|
@@ -0,0 +1,114 @@
|
|
1
|
+
# Copyright 2025 Sony Semiconductor Israel, Inc. All rights reserved.
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
# ==============================================================================
|
15
|
+
|
16
|
+
import numpy as np
|
17
|
+
from model_compression_toolkit.core.common.collectors.histogram_collector import HistogramCollector
|
18
|
+
from model_compression_toolkit.logger import Logger
|
19
|
+
|
20
|
+
|
21
|
+
def check_broadcastable(x: np.ndarray, weights: np.ndarray) -> None:
|
22
|
+
"""
|
23
|
+
Checks if tensor 'weights' can be broadcasted to the shape of tensor 'x'.
|
24
|
+
|
25
|
+
Args:
|
26
|
+
x (np.ndarray): The target tensor.
|
27
|
+
weights (np.ndarray): The tensor to check broadcasting compatibility.
|
28
|
+
|
29
|
+
Raises:
|
30
|
+
Logger.critical: If 'weights' cannot be broadcasted to 'x'.
|
31
|
+
"""
|
32
|
+
# Get shapes
|
33
|
+
shape_x = x.shape
|
34
|
+
shape_w = weights.shape
|
35
|
+
|
36
|
+
# Ensure weights has less or equal dimensions than x
|
37
|
+
if len(shape_w) > len(shape_x):
|
38
|
+
Logger.critical(f"Tensor weights with shape {shape_w} has more dimensions than tensor a with shape {shape_x}.")
|
39
|
+
|
40
|
+
# Align shapes by padding weights' shape with leading ones
|
41
|
+
shape_w = (1,) * (len(shape_x) - len(shape_w)) + shape_w
|
42
|
+
|
43
|
+
# Check if each dimension is either equal or 1
|
44
|
+
for i, (sx, sw) in enumerate(zip(shape_x, shape_w)):
|
45
|
+
if not (sx == sw or sw == 1):
|
46
|
+
Logger.critical(f"Tensor weights with shape {shape_w} cannot be broadcasted to tensor a with shape {shape_x}. "
|
47
|
+
f"Dimension mismatch at index {i}: {sw} cannot be broadcasted to {sx}.")
|
48
|
+
|
49
|
+
|
50
|
+
class WeightedHistogramCollector(HistogramCollector):
|
51
|
+
"""
|
52
|
+
Collector for holding weighted histograms of tensors going through it.
|
53
|
+
Extends the functionality of the base HistogramCollector by incorporating weights
|
54
|
+
into the histogram calculation, allowing for weighted distributions.
|
55
|
+
"""
|
56
|
+
def __init__(self, n_bins: int = 2048):
|
57
|
+
"""
|
58
|
+
Args:
|
59
|
+
n_bins: Number of bins in the histogram.
|
60
|
+
"""
|
61
|
+
|
62
|
+
super().__init__(n_bins)
|
63
|
+
|
64
|
+
def update(self, x: np.ndarray, weights: np.ndarray = None):
|
65
|
+
"""
|
66
|
+
Update the current state of the histogram bins and counts based on a new
|
67
|
+
tensor that passes through the collector, taking weights into account.
|
68
|
+
|
69
|
+
Args:
|
70
|
+
x: Tensor that passes through the collector to update the histogram.
|
71
|
+
weights: Array of weights corresponding to the elements of the tensor `x`.
|
72
|
+
If not provided, uniform weights of 1 will be applied to all elements.
|
73
|
+
|
74
|
+
Details:
|
75
|
+
- The `weights` parameter allows each element of `x` to contribute a
|
76
|
+
weighted amount to the histogram bins, rather than contributing a simple count.
|
77
|
+
- This is particularly useful when the data being processed has an associated
|
78
|
+
importance, frequency, or probability value that should influence the histogram.
|
79
|
+
For example:
|
80
|
+
- Hessian values can serve as weights for each activation in `x`.
|
81
|
+
- Normalization of the histogram to reflect relative contributions.
|
82
|
+
- The method ensures that `x` and `weights` have matching shapes and logs
|
83
|
+
an error if this condition is not met.
|
84
|
+
"""
|
85
|
+
if weights is None or np.all(weights == 0):
|
86
|
+
weights = np.ones_like(x) # Assign uniform weights if none are provided.
|
87
|
+
|
88
|
+
# Checks if tensor 'weights' can be broadcasted to the shape of tensor 'x'.
|
89
|
+
check_broadcastable(x, weights)
|
90
|
+
|
91
|
+
# Get x's shape
|
92
|
+
x_shape = x.shape
|
93
|
+
|
94
|
+
# Get weight's shape
|
95
|
+
weights_shape = weights.shape
|
96
|
+
|
97
|
+
# Determine the correct shape for weights
|
98
|
+
weights_new_shape = list(weights_shape) # Convert to list for modification
|
99
|
+
|
100
|
+
# Ensure weights has the same number of dimensions as x
|
101
|
+
while len(weights_new_shape) < len(x_shape):
|
102
|
+
weights_new_shape.append(1) # Add singleton dimensions
|
103
|
+
|
104
|
+
# Reshape weights to the correct shape
|
105
|
+
weights = weights.reshape(weights_new_shape)
|
106
|
+
|
107
|
+
# Broadcast weights to match x's shape
|
108
|
+
weights = np.broadcast_to(weights, x_shape)
|
109
|
+
|
110
|
+
# Compute the weighted histogram.
|
111
|
+
count, bins = np.histogram(x, bins=self._n_bins, weights=weights)
|
112
|
+
|
113
|
+
# Store the weighted histogram (counts and bins) for this iteration.
|
114
|
+
self._histogram_per_iteration.append((count, bins))
|
@@ -137,13 +137,18 @@ class FrameworkImplementation(ABC):
|
|
137
137
|
@abstractmethod
|
138
138
|
def run_model_inference(self,
|
139
139
|
model: Any,
|
140
|
-
input_list: List[Any]
|
140
|
+
input_list: List[Any],
|
141
|
+
requires_grad: bool = False) -> Tuple[Any]:
|
141
142
|
"""
|
142
|
-
|
143
|
+
Executes the given model on the provided input data.
|
144
|
+
|
145
|
+
This method must be implemented by subclasses to provide framework-specific logic
|
146
|
+
for running inference (e.g., PyTorch, TensorFlow/Keras).
|
143
147
|
|
144
148
|
Args:
|
145
|
-
model:
|
146
|
-
input_list:
|
149
|
+
model: The framework-specific model instance.
|
150
|
+
input_list: A list of inputs for the model.
|
151
|
+
requires_grad: Whether to enable gradient computation. Defaults to `False`.
|
147
152
|
|
148
153
|
Returns:
|
149
154
|
The frameworks model's output.
|
@@ -440,18 +440,28 @@ class BaseNode:
|
|
440
440
|
|
441
441
|
return any([self.is_weights_quantization_enabled(attr) for attr in self.get_node_weights_attributes()])
|
442
442
|
|
443
|
-
|
443
|
+
# TODO it makes more sense to standardize the input/output shapes at node creation.
|
444
|
+
def get_output_shapes_list(self) -> List[tuple]:
|
444
445
|
"""
|
445
|
-
|
446
|
+
Return output shape in a standardized form as a list of tuples.
|
446
447
|
|
447
|
-
Returns:
|
448
|
+
Returns:
|
449
|
+
A list of output shape tuples.
|
448
450
|
"""
|
449
451
|
# shape can be tuple or list, and multiple shapes can be packed in list or tuple
|
450
452
|
if self.output_shape and isinstance(self.output_shape[0], (tuple, list)):
|
451
|
-
output_shapes = self.output_shape
|
453
|
+
output_shapes = [tuple(s) for s in self.output_shape]
|
452
454
|
else:
|
453
|
-
output_shapes = [self.output_shape]
|
455
|
+
output_shapes = [tuple(self.output_shape)]
|
456
|
+
return output_shapes
|
457
|
+
|
458
|
+
def get_total_output_params(self) -> float:
|
459
|
+
"""
|
460
|
+
Calculates the output size of the node.
|
454
461
|
|
462
|
+
Returns: Output size.
|
463
|
+
"""
|
464
|
+
output_shapes = self.get_output_shapes_list()
|
455
465
|
# remove batch size (first element) from output shape
|
456
466
|
output_shapes = [s[1:] for s in output_shapes]
|
457
467
|
# for scalar shape (None,) prod returns 1
|
@@ -550,7 +560,7 @@ class BaseNode:
|
|
550
560
|
"""
|
551
561
|
|
552
562
|
return len(self.candidates_quantization_cfg) > 0 and \
|
553
|
-
|
563
|
+
any([c.activation_quantization_cfg.enable_activation_quantization for c in self.candidates_quantization_cfg])
|
554
564
|
|
555
565
|
def get_all_weights_attr_candidates(self, attr: str) -> List[WeightsAttrQuantizationConfig]:
|
556
566
|
"""
|
@@ -13,13 +13,14 @@
|
|
13
13
|
# limitations under the License.
|
14
14
|
# ==============================================================================
|
15
15
|
from dataclasses import dataclass
|
16
|
-
from typing import List, Dict, Tuple, TYPE_CHECKING
|
16
|
+
from typing import List, Dict, Tuple, TYPE_CHECKING, Any, Optional
|
17
17
|
|
18
18
|
import numpy as np
|
19
19
|
|
20
20
|
from model_compression_toolkit.constants import HESSIAN_NUM_ITERATIONS
|
21
21
|
from model_compression_toolkit.core.common.hessian.hessian_scores_request import HessianScoresRequest, HessianMode, \
|
22
22
|
HessianScoresGranularity
|
23
|
+
from model_compression_toolkit.logger import Logger
|
23
24
|
|
24
25
|
if TYPE_CHECKING: # pragma: no cover
|
25
26
|
from model_compression_toolkit.core.common import BaseNode
|
@@ -139,24 +140,31 @@ class HessianInfoService:
|
|
139
140
|
self.cache = HessianCache()
|
140
141
|
|
141
142
|
def fetch_hessian(self, request: HessianScoresRequest,
|
142
|
-
|
143
|
+
activation_tensors: Optional[Tuple[Any]] = None,
|
144
|
+
force_compute: bool = False,
|
145
|
+
) -> Dict[LayerName, Tensor]:
|
143
146
|
"""
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
147
|
+
Fetches Hessian approximations based on the given request.
|
148
|
+
|
149
|
+
This method retrieves Hessians from the cache when available, unless `force_compute` is set to `True`,
|
150
|
+
in which case the Hessians are recomputed (use when you need hessians for specific inputs).
|
151
|
+
If `compute_from_tensors` in the request is `True`, the Hessians are computed directly from
|
152
|
+
the provided activation tensors.
|
148
153
|
|
149
154
|
Args:
|
150
155
|
request: request per which to fetch the hessians.
|
156
|
+
activation_tensors (Optional[Tuple[Any]): List of activation tensors used for Hessian computation
|
157
|
+
when `compute_from_tensors` in the request is `True`. Defaults to None.
|
151
158
|
force_compute: if True, will compute the hessians.
|
152
159
|
If False, will look for cached hessians first.
|
153
160
|
|
161
|
+
|
154
162
|
Returns:
|
155
163
|
A dictionary of layers' hessian tensors of shape (samples, ...). The exact shape depends on the
|
156
164
|
requested granularity.
|
157
165
|
"""
|
158
|
-
if request.n_samples is None and not force_compute:
|
159
|
-
|
166
|
+
if request.n_samples is None and not (force_compute or request.compute_from_tensors):
|
167
|
+
Logger.critical('Number of samples can be None only when force_compute is True.')
|
160
168
|
|
161
169
|
orig_request = request
|
162
170
|
# replace reused nodes with primary nodes
|
@@ -165,13 +173,21 @@ class HessianInfoService:
|
|
165
173
|
target_nodes = [self._get_primary_node(n) for n in request.target_nodes]
|
166
174
|
request = request.clone(target_nodes=target_nodes)
|
167
175
|
|
168
|
-
if
|
169
|
-
|
176
|
+
if request.compute_from_tensors:
|
177
|
+
if activation_tensors is None:
|
178
|
+
Logger.critical(f"The 'compute_from_tensors' option is enabled, but no 'activation_tensors' were provided.")
|
179
|
+
# This mode is primarily used for Hessian-weighted histograms in statistical collection.
|
180
|
+
# To ensure efficiency, we approximate the Hessian using a single iteration.
|
181
|
+
# This provides a sufficiently accurate approximation for this feature.
|
182
|
+
res = self._compute_hessian_for_batch(request, activation_tensors, n_iterations=1)
|
170
183
|
else:
|
171
|
-
|
184
|
+
if force_compute:
|
185
|
+
res = self._compute_hessians(request, self.num_iterations_for_approximation, count_by_cache=False)
|
186
|
+
else:
|
187
|
+
res = self._fetch_hessians_with_compute(request, self.num_iterations_for_approximation)
|
172
188
|
|
173
|
-
|
174
|
-
|
189
|
+
# restore nodes from the original request
|
190
|
+
res = {n_orig.name: res[n.name] for n_orig, n in zip(orig_request.target_nodes, request.target_nodes)}
|
175
191
|
return res
|
176
192
|
|
177
193
|
def clear_cache(self):
|
@@ -194,7 +210,7 @@ class HessianInfoService:
|
|
194
210
|
return res
|
195
211
|
|
196
212
|
if request.data_loader is None:
|
197
|
-
|
213
|
+
Logger.critical(f'Not enough hessians are cached to fulfill the request, but data loader was not passed '
|
198
214
|
f'for additional computation. Requested {request.n_samples}, '
|
199
215
|
f'available {min(missing.values())}.')
|
200
216
|
|
@@ -249,7 +265,7 @@ class HessianInfoService:
|
|
249
265
|
|
250
266
|
if request.n_samples:
|
251
267
|
if n_samples < request.n_samples:
|
252
|
-
|
268
|
+
Logger.critical(f'Could not compute the requested number of Hessians ({request.n_samples}), '
|
253
269
|
f'not enough samples in the provided representative dataset.')
|
254
270
|
|
255
271
|
if n_samples > request.n_samples:
|
@@ -56,7 +56,7 @@ class HessianScoresCalculator(ABC):
|
|
56
56
|
self.num_iterations_for_approximation = num_iterations_for_approximation
|
57
57
|
|
58
58
|
# Validate representative dataset has same inputs as graph
|
59
|
-
if len(self.input_images) != len(graph.get_inputs()): # pragma: no cover
|
59
|
+
if not hessian_scores_request.compute_from_tensors and len(self.input_images) != len(graph.get_inputs()): # pragma: no cover
|
60
60
|
Logger.critical(f"The graph requires {len(graph.get_inputs())} inputs, but the provided representative dataset contains {len(self.input_images)} inputs.")
|
61
61
|
|
62
62
|
self.fw_impl = fw_impl
|
@@ -17,6 +17,8 @@ import dataclasses
|
|
17
17
|
|
18
18
|
from enum import Enum
|
19
19
|
|
20
|
+
from model_compression_toolkit.logger import Logger
|
21
|
+
|
20
22
|
if TYPE_CHECKING: # pragma: no cover
|
21
23
|
from model_compression_toolkit.core.common import BaseNode
|
22
24
|
|
@@ -60,16 +62,19 @@ class HessianScoresRequest:
|
|
60
62
|
the computation. Can be None if all hessians for the request are expected to be pre-computed previously.
|
61
63
|
n_samples: The number of samples to fetch hessian estimations for. If None, fetch hessians for a full pass
|
62
64
|
of the data loader.
|
65
|
+
compute_from_tensors: If `True`, Hessians are computed directly from given tensors instead of using the data loader.
|
66
|
+
|
63
67
|
"""
|
64
68
|
mode: HessianMode
|
65
69
|
granularity: HessianScoresGranularity
|
66
70
|
target_nodes: Sequence['BaseNode']
|
67
71
|
data_loader: Optional[Iterable]
|
68
72
|
n_samples: Optional[int]
|
73
|
+
compute_from_tensors: bool = False
|
69
74
|
|
70
75
|
def __post_init__(self):
|
71
|
-
if self.data_loader is None and self.n_samples is None:
|
72
|
-
|
76
|
+
if self.data_loader is None and self.n_samples is None and not self.compute_from_tensors:
|
77
|
+
Logger.critical('Data loader and the number of samples cannot both be None.')
|
73
78
|
|
74
79
|
def clone(self, **kwargs):
|
75
80
|
""" Create a clone with optional overrides """
|