mct-nightly 1.11.0.20240304.post404__tar.gz → 1.11.0.20240305.post352__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-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/PKG-INFO +5 -5
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/README.md +4 -4
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/mct_nightly.egg-info/PKG-INFO +5 -5
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/mct_nightly.egg-info/SOURCES.txt +4 -2
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/__init__.py +1 -1
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/framework_implementation.py +2 -2
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_quantization_config.py +4 -70
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_facade.py +2 -2
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/sensitivity_evaluation.py +2 -2
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/memory_calculator.py +19 -1
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/core_config.py +3 -3
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_fn_selection.py +0 -3
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_fn_selection.py +0 -3
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_generation/__init__.py +0 -1
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/keras_implementation.py +2 -2
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/kpi_data_facade.py +5 -6
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/pruning/pruning_keras_implementation.py +19 -19
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/constants.py +3 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/kpi_data_facade.py +5 -5
- mct-nightly-1.11.0.20240305.post352/model_compression_toolkit/core/pytorch/pruning/__init__.py +14 -0
- mct-nightly-1.11.0.20240305.post352/model_compression_toolkit/core/pytorch/pruning/pruning_pytorch_implementation.py +315 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/pytorch_implementation.py +2 -2
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantization_facade.py +4 -4
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantization_facade.py +3 -3
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/pruning/__init__.py +1 -0
- mct-nightly-1.11.0.20240305.post352/model_compression_toolkit/pruning/pytorch/__init__.py +14 -0
- mct-nightly-1.11.0.20240305.post352/model_compression_toolkit/pruning/pytorch/pruning_facade.py +166 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/ptq/keras/quantization_facade.py +4 -7
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/ptq/pytorch/quantization_facade.py +3 -6
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/quantization_facade.py +6 -9
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/quantization_facade.py +3 -7
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/setup.cfg +1 -1
- mct-nightly-1.11.0.20240304.post404/model_compression_toolkit/core/common/quantization/quantization_params_generation/kmeans_params.py +0 -64
- mct-nightly-1.11.0.20240304.post404/model_compression_toolkit/core/common/quantization/quantizers/kmeans_quantizer.py +0 -53
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/LICENSE.md +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/mct_nightly.egg-info/dependency_links.txt +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/mct_nightly.egg-info/requires.txt +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/mct_nightly.egg-info/top_level.txt +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/constants.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/analyzer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/back2framework/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/back2framework/base_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/base_substitutions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/collectors/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/collectors/base_collector.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/collectors/histogram_collector.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/collectors/mean_collector.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/collectors/min_max_per_channel_collector.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/collectors/statistics_collector.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/data_loader.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/framework_info.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/fusion/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/fusion/layer_fusing.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/base_graph.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/base_node.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/edge.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/functional_node.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/graph_matchers.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/graph_searches.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/memory_graph/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/memory_graph/bipartite_graph.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/memory_graph/compute_graph_max_cut.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/memory_graph/cut.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/memory_graph/max_cut_astar.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/memory_graph/memory_element.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/memory_graph/memory_graph.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/graph/virtual_activation_weights_node.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/hessian/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/hessian/hessian_info_service.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/hessian/hessian_info_utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/hessian/trace_hessian_calculator.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/hessian/trace_hessian_request.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/matchers/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/matchers/base_graph_filter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/matchers/base_matcher.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/matchers/edge_matcher.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/matchers/function.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/matchers/node_matcher.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/matchers/walk_matcher.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/memory_computation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/bit_width_setter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/configurable_quant_id.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/configurable_quantizer_utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/distance_weighting.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/kpi_tools/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/kpi_tools/kpi.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/kpi_tools/kpi_aggregation_methods.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/kpi_tools/kpi_data.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/kpi_tools/kpi_functions_mapping.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/kpi_tools/kpi_methods.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_manager.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/search_methods/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/search_methods/linear_programming.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/set_layer_to_bitwidth.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/mixed_precision/solution_refinement_procedure.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/model_builder_mode.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/model_collector.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/model_validation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/network_editors/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/network_editors/actions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/network_editors/edit_network.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/network_editors/node_filters.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/node_prior_info.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/channels_grouping.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/greedy_mask_calculator.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/importance_metrics/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/importance_metrics/base_importance_metric.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/importance_metrics/importance_metric_factory.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/importance_metrics/lfh_importance_metric.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/mask/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/mask/per_channel_mask.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/mask/per_simd_group_mask.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/prune_graph.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/pruner.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/pruning_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/pruning_framework_implementation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/pruning_info.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/pruning/pruning_section.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/candidate_node_quantization_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/debug_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/filter_nodes_candidates.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/node_quantization_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_generation/error_functions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_generation/lut_kmeans_params.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_generation/outlier_filter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_generation/power_of_two_selection.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_activations_computation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_computation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_search.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_weights_computation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_generation/symmetric_selection.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantization_params_generation/uniform_selection.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantize_graph_weights.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantize_node.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantizers/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantizers/lut_kmeans_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantizers/quantizers_helpers.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/quantizers/uniform_quantizers.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/similarity_analyzer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/statistics_correction/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/statistics_correction/apply_bias_correction_to_graph.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/statistics_correction/apply_second_moment_correction_to_graph.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/statistics_correction/compute_bias_correction_of_graph.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/statistics_correction/statistics_correction.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/apply_substitutions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/batchnorm_folding.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/batchnorm_reconstruction.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/batchnorm_refusing.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/linear_collapsing.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/linear_collapsing_substitution.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/residual_collapsing.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/scale_equalization.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/shift_negative_activation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/softmax_shift.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/substitutions/weights_activation_split.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/user_info.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/visualization/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/visualization/final_config_visualizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/visualization/nn_visualizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/common/visualization/tensorboard_writer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/exporter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/graph_prep_runner.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/back2framework/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/back2framework/factory_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/back2framework/float_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/back2framework/instance_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/back2framework/keras_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/back2framework/mixed_precision_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/back2framework/quantized_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/constants.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/custom_layer_validation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/default_framework_info.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/activation_decomposition.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/dwconv_to_conv.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/input_scaling.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/linear_collapsing.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/matmul_substitution.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/remove_relu_upper_bound.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/residual_collapsing.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/scale_equalization.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/separableconv_decomposition.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/softmax_shift.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/weights_activation_split.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/hessian/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/hessian/activation_trace_hessian_calculator_keras.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/hessian/trace_hessian_calculator_keras.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/hessian/weights_trace_hessian_calculator_keras.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/keras_model_validation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/keras_node_prior_info.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/mixed_precision/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/mixed_precision/configurable_activation_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/mixed_precision/configurable_weights_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/pruning/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/quantizer/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/quantizer/base_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/quantizer/fake_quant_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/quantizer/lut_fake_quant.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/reader/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/reader/common.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/reader/connectivity_handler.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/reader/nested_model/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/reader/nested_model/edges_merger.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/reader/nested_model/nested_model_handler.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/reader/nested_model/nodes_merger.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/reader/nested_model/outputs_merger.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/reader/node_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/reader/reader.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/statistics_correction/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/statistics_correction/apply_second_moment_correction.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/tf_tensor_numpy.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/keras/visualization/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/back2framework/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/back2framework/factory_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/back2framework/float_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/back2framework/instance_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/back2framework/mixed_precision_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/back2framework/pytorch_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/quantized_layer_wrapper.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/wrapper_quantize_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/back2framework/quantized_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/default_framework_info.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/const_holder_conv.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_batch_norm.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_layer_norm.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/linear_collapsing.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/permute_call_method.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/reshape_with_static_shapes.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/residual_collapsing.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scale_equalization.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/softmax_shift.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/weights_activation_split.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/hessian/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/hessian/activation_trace_hessian_calculator_pytorch.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/hessian/trace_hessian_calculator_pytorch.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/hessian/weights_trace_hessian_calculator_pytorch.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/mixed_precision/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_activation_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_weights_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/pytorch_device_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/pytorch_node_prior_info.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/quantizer/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/quantizer/fake_quant_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/quantizer/lut_fake_quant.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/reader/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/reader/graph_builders.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/reader/node_holders.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/reader/reader.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/statistics_correction/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/statistics_correction/apply_second_moment_correction.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/pytorch/utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/quantization_prep_runner.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/core/runner.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/common/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/common/constants.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/common/data_generation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/common/data_generation_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/common/enums.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/common/image_pipeline.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/common/model_info_exctractors.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/common/optimization_utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/constants.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/image_pipeline.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/keras_data_generation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/model_info_exctractors.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/optimization_functions/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/optimization_functions/batchnorm_alignment_functions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/optimization_functions/bn_layer_weighting_functions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/optimization_functions/image_initilization.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/optimization_functions/output_loss_functions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/optimization_functions/scheduler_step_functions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/keras/optimization_utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/constants.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/image_pipeline.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/model_info_exctractors.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/optimization_functions/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/optimization_functions/batchnorm_alignment_functions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/optimization_functions/bn_layer_weighting_functions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/optimization_functions/image_initilization.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/optimization_functions/output_loss_functions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/optimization_functions/scheduler_step_functions.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/optimization_utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/defaultdict.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/exporter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/quantization_format.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/keras/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/keras/base_keras_exporter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/keras/export_serialization_format.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_keras_exporter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_tflite_exporter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/keras/int8_tflite_exporter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/keras/mctq_keras_exporter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/pytorch/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/pytorch/base_pytorch_exporter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/pytorch/export_serialization_format.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_torchscript_pytorch_exporter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/keras/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/keras/builder/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/keras/builder/node_to_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/keras/builder/node_to_quantizers.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/pytorch/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/node_to_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/node_to_quantizers.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/common/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/common/gptq_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/common/gptq_constants.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/common/gptq_framework_implementation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/common/gptq_graph.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/common/gptq_training.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/gptq_keras_implementation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/gptq_loss.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/gptq_training.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/graph_info.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantizer/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantizer/quant_utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantizer/quantization_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantizer/regularization_factory.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/gptq_loss.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/gptq_pytorch_implementation.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/gptq_training.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/graph_info.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantizer/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantizer/quant_utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantizer/quantization_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantizer/regularization_factory.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/gptq/runner.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/logger.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/pruning/keras/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/pruning/keras/pruning_facade.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/ptq/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/ptq/keras/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/ptq/pytorch/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/ptq/runner.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/common/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/common/qat_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/quantizer/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/quantizer/base_keras_qat_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/quantizer/lsq/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/quantizer/lsq/symmetric_lsq.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/quantizer/lsq/uniform_lsq.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/quantizer/quant_utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/quantizer/quantization_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/uniform_ste.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/quantizer/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/quantizer/lsq/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/quantizer/lsq/symmetric_lsq.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/quantizer/lsq/uniform_lsq.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/quantizer/quantization_builder.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/quantizer/quantizer_utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/uniform_ste.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/constants.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/immutable.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/current_tp_model.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/fusing.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/op_quantization_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/operators.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model_component.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attribute_filter.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/current_tpc.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/layer_filter_params.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/operations_to_layers.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities_component.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_pytorch.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_pytorch.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_pytorch.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tp_model.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_keras.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_pytorch.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_keras.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_pytorch.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/common/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/common/base_trainable_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/common/constants.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/common/get_quantizer_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/common/get_quantizers.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/common/quant_utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/common/trainable_quantizer_config.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/keras/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/keras/config_serialization.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/keras/load_model.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/keras/quantizer_utils.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/pytorch/__init__.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py +0 -0
- {mct-nightly-1.11.0.20240304.post404 → mct-nightly-1.11.0.20240305.post352}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: mct-nightly
|
|
3
|
-
Version: 1.11.0.
|
|
3
|
+
Version: 1.11.0.20240305.post352
|
|
4
4
|
Summary: A Model Compression Toolkit for neural networks
|
|
5
5
|
Home-page: UNKNOWN
|
|
6
6
|
License: UNKNOWN
|
|
@@ -152,11 +152,11 @@ Description: # Model Compression Toolkit (MCT)
|
|
|
152
152
|
taking into account the target platform's Single Instruction, Multiple Data (SIMD) capabilities.
|
|
153
153
|
By pruning groups of channels (SIMD groups), our approach not only reduces model size
|
|
154
154
|
and complexity, but ensures that better utilization of channels is in line with the SIMD architecture
|
|
155
|
-
for a target KPI of weights memory footprint.
|
|
155
|
+
for a target KPI of weights memory footprint.
|
|
156
|
+
[Keras API](https://sony.github.io/model_optimization/docs/api/experimental_api_docs/methods/keras_pruning_experimental.html)
|
|
157
|
+
[Pytorch API](https://sony.github.io/model_optimization/docs/api/experimental_api_docs/methods/pytorch_pruning_experimental.html)
|
|
156
158
|
|
|
157
159
|
|
|
158
|
-
<u>_Note: Currently, only Keras models pruning is supported._</u>
|
|
159
|
-
|
|
160
160
|
#### Results
|
|
161
161
|
|
|
162
162
|
Results for applying pruning to reduce the parameters of the following models by 50%:
|
|
@@ -164,7 +164,7 @@ Description: # Model Compression Toolkit (MCT)
|
|
|
164
164
|
| Model | Dense Model Accuracy | Pruned Model Accuracy |
|
|
165
165
|
|-----------------|----------------------|-----------------------|
|
|
166
166
|
| ResNet50 [2] | 75.1 | 72.4 |
|
|
167
|
-
| DenseNet121 [
|
|
167
|
+
| DenseNet121 [3] | 74.44 | 71.71 |
|
|
168
168
|
|
|
169
169
|
|
|
170
170
|
|
|
@@ -146,11 +146,11 @@ This pruning technique is designed to compress models for specific hardware arch
|
|
|
146
146
|
taking into account the target platform's Single Instruction, Multiple Data (SIMD) capabilities.
|
|
147
147
|
By pruning groups of channels (SIMD groups), our approach not only reduces model size
|
|
148
148
|
and complexity, but ensures that better utilization of channels is in line with the SIMD architecture
|
|
149
|
-
for a target KPI of weights memory footprint.
|
|
149
|
+
for a target KPI of weights memory footprint.
|
|
150
|
+
[Keras API](https://sony.github.io/model_optimization/docs/api/experimental_api_docs/methods/keras_pruning_experimental.html)
|
|
151
|
+
[Pytorch API](https://sony.github.io/model_optimization/docs/api/experimental_api_docs/methods/pytorch_pruning_experimental.html)
|
|
150
152
|
|
|
151
153
|
|
|
152
|
-
<u>_Note: Currently, only Keras models pruning is supported._</u>
|
|
153
|
-
|
|
154
154
|
#### Results
|
|
155
155
|
|
|
156
156
|
Results for applying pruning to reduce the parameters of the following models by 50%:
|
|
@@ -158,7 +158,7 @@ Results for applying pruning to reduce the parameters of the following models by
|
|
|
158
158
|
| Model | Dense Model Accuracy | Pruned Model Accuracy |
|
|
159
159
|
|-----------------|----------------------|-----------------------|
|
|
160
160
|
| ResNet50 [2] | 75.1 | 72.4 |
|
|
161
|
-
| DenseNet121 [
|
|
161
|
+
| DenseNet121 [3] | 74.44 | 71.71 |
|
|
162
162
|
|
|
163
163
|
|
|
164
164
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: mct-nightly
|
|
3
|
-
Version: 1.11.0.
|
|
3
|
+
Version: 1.11.0.20240305.post352
|
|
4
4
|
Summary: A Model Compression Toolkit for neural networks
|
|
5
5
|
Home-page: UNKNOWN
|
|
6
6
|
License: UNKNOWN
|
|
@@ -152,11 +152,11 @@ Description: # Model Compression Toolkit (MCT)
|
|
|
152
152
|
taking into account the target platform's Single Instruction, Multiple Data (SIMD) capabilities.
|
|
153
153
|
By pruning groups of channels (SIMD groups), our approach not only reduces model size
|
|
154
154
|
and complexity, but ensures that better utilization of channels is in line with the SIMD architecture
|
|
155
|
-
for a target KPI of weights memory footprint.
|
|
155
|
+
for a target KPI of weights memory footprint.
|
|
156
|
+
[Keras API](https://sony.github.io/model_optimization/docs/api/experimental_api_docs/methods/keras_pruning_experimental.html)
|
|
157
|
+
[Pytorch API](https://sony.github.io/model_optimization/docs/api/experimental_api_docs/methods/pytorch_pruning_experimental.html)
|
|
156
158
|
|
|
157
159
|
|
|
158
|
-
<u>_Note: Currently, only Keras models pruning is supported._</u>
|
|
159
|
-
|
|
160
160
|
#### Results
|
|
161
161
|
|
|
162
162
|
Results for applying pruning to reduce the parameters of the following models by 50%:
|
|
@@ -164,7 +164,7 @@ Description: # Model Compression Toolkit (MCT)
|
|
|
164
164
|
| Model | Dense Model Accuracy | Pruned Model Accuracy |
|
|
165
165
|
|-----------------|----------------------|-----------------------|
|
|
166
166
|
| ResNet50 [2] | 75.1 | 72.4 |
|
|
167
|
-
| DenseNet121 [
|
|
167
|
+
| DenseNet121 [3] | 74.44 | 71.71 |
|
|
168
168
|
|
|
169
169
|
|
|
170
170
|
|
|
@@ -120,7 +120,6 @@ model_compression_toolkit/core/common/quantization/quantize_node.py
|
|
|
120
120
|
model_compression_toolkit/core/common/quantization/set_node_quantization_config.py
|
|
121
121
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/__init__.py
|
|
122
122
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/error_functions.py
|
|
123
|
-
model_compression_toolkit/core/common/quantization/quantization_params_generation/kmeans_params.py
|
|
124
123
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/lut_kmeans_params.py
|
|
125
124
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/outlier_filter.py
|
|
126
125
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/power_of_two_selection.py
|
|
@@ -131,7 +130,6 @@ model_compression_toolkit/core/common/quantization/quantization_params_generatio
|
|
|
131
130
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/symmetric_selection.py
|
|
132
131
|
model_compression_toolkit/core/common/quantization/quantization_params_generation/uniform_selection.py
|
|
133
132
|
model_compression_toolkit/core/common/quantization/quantizers/__init__.py
|
|
134
|
-
model_compression_toolkit/core/common/quantization/quantizers/kmeans_quantizer.py
|
|
135
133
|
model_compression_toolkit/core/common/quantization/quantizers/lut_kmeans_quantizer.py
|
|
136
134
|
model_compression_toolkit/core/common/quantization/quantizers/quantizers_helpers.py
|
|
137
135
|
model_compression_toolkit/core/common/quantization/quantizers/uniform_quantizers.py
|
|
@@ -263,6 +261,8 @@ model_compression_toolkit/core/pytorch/hessian/weights_trace_hessian_calculator_
|
|
|
263
261
|
model_compression_toolkit/core/pytorch/mixed_precision/__init__.py
|
|
264
262
|
model_compression_toolkit/core/pytorch/mixed_precision/configurable_activation_quantizer.py
|
|
265
263
|
model_compression_toolkit/core/pytorch/mixed_precision/configurable_weights_quantizer.py
|
|
264
|
+
model_compression_toolkit/core/pytorch/pruning/__init__.py
|
|
265
|
+
model_compression_toolkit/core/pytorch/pruning/pruning_pytorch_implementation.py
|
|
266
266
|
model_compression_toolkit/core/pytorch/quantizer/__init__.py
|
|
267
267
|
model_compression_toolkit/core/pytorch/quantizer/fake_quant_builder.py
|
|
268
268
|
model_compression_toolkit/core/pytorch/quantizer/lut_fake_quant.py
|
|
@@ -382,6 +382,8 @@ model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/symmetric_ste.py
|
|
|
382
382
|
model_compression_toolkit/pruning/__init__.py
|
|
383
383
|
model_compression_toolkit/pruning/keras/__init__.py
|
|
384
384
|
model_compression_toolkit/pruning/keras/pruning_facade.py
|
|
385
|
+
model_compression_toolkit/pruning/pytorch/__init__.py
|
|
386
|
+
model_compression_toolkit/pruning/pytorch/pruning_facade.py
|
|
385
387
|
model_compression_toolkit/ptq/__init__.py
|
|
386
388
|
model_compression_toolkit/ptq/runner.py
|
|
387
389
|
model_compression_toolkit/ptq/keras/__init__.py
|
|
@@ -22,6 +22,6 @@ from model_compression_toolkit.core.common.mixed_precision import mixed_precisio
|
|
|
22
22
|
from model_compression_toolkit.core.common.quantization.quantization_config import QuantizationConfig, QuantizationErrorMethod, DEFAULTCONFIG
|
|
23
23
|
from model_compression_toolkit.core.common.quantization.core_config import CoreConfig
|
|
24
24
|
from model_compression_toolkit.core.common.mixed_precision.kpi_tools.kpi import KPI
|
|
25
|
-
from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import MixedPrecisionQuantizationConfig
|
|
25
|
+
from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import MixedPrecisionQuantizationConfig
|
|
26
26
|
from model_compression_toolkit.core.keras.kpi_data_facade import keras_kpi_data
|
|
27
27
|
from model_compression_toolkit.core.pytorch.kpi_data_facade import pytorch_kpi_data
|
|
@@ -18,7 +18,7 @@ from typing import Callable, Any, List, Tuple, Dict
|
|
|
18
18
|
import numpy as np
|
|
19
19
|
|
|
20
20
|
from model_compression_toolkit.constants import HESSIAN_NUM_ITERATIONS
|
|
21
|
-
from model_compression_toolkit.core import
|
|
21
|
+
from model_compression_toolkit.core import MixedPrecisionQuantizationConfig
|
|
22
22
|
from model_compression_toolkit.core import common
|
|
23
23
|
from model_compression_toolkit.core.common import BaseNode
|
|
24
24
|
from model_compression_toolkit.core.common.collectors.statistics_collector import BaseStatsCollector
|
|
@@ -304,7 +304,7 @@ class FrameworkImplementation(ABC):
|
|
|
304
304
|
@abstractmethod
|
|
305
305
|
def get_sensitivity_evaluator(self,
|
|
306
306
|
graph: Graph,
|
|
307
|
-
quant_config:
|
|
307
|
+
quant_config: MixedPrecisionQuantizationConfig,
|
|
308
308
|
representative_data_gen: Callable,
|
|
309
309
|
fw_info: FrameworkInfo,
|
|
310
310
|
hessian_info_service: HessianInfoService = None,
|
|
@@ -13,16 +13,13 @@
|
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
# ==============================================================================
|
|
15
15
|
|
|
16
|
-
from
|
|
17
|
-
from typing import List, Callable, Tuple
|
|
16
|
+
from typing import List, Callable
|
|
18
17
|
|
|
19
|
-
from model_compression_toolkit.logger import Logger
|
|
20
18
|
from model_compression_toolkit.core.common.mixed_precision.distance_weighting import get_average_weights
|
|
21
|
-
from model_compression_toolkit.core.common.quantization.quantization_config import QuantizationConfig, DEFAULTCONFIG
|
|
22
19
|
from model_compression_toolkit.core.common.similarity_analyzer import compute_mse
|
|
23
20
|
|
|
24
21
|
|
|
25
|
-
class
|
|
22
|
+
class MixedPrecisionQuantizationConfig:
|
|
26
23
|
|
|
27
24
|
def __init__(self,
|
|
28
25
|
compute_distance_fn: Callable = None,
|
|
@@ -36,8 +33,6 @@ class MixedPrecisionQuantizationConfigV2:
|
|
|
36
33
|
metric_normalization_threshold: float = 1e10):
|
|
37
34
|
"""
|
|
38
35
|
Class with mixed precision parameters to quantize the input model.
|
|
39
|
-
Unlike QuantizationConfig, number of bits for quantization is a list of possible bit widths to
|
|
40
|
-
support mixed-precision model quantization.
|
|
41
36
|
|
|
42
37
|
Args:
|
|
43
38
|
compute_distance_fn (Callable): Function to compute a distance between two tensors.
|
|
@@ -70,67 +65,6 @@ class MixedPrecisionQuantizationConfigV2:
|
|
|
70
65
|
self.metric_normalization_threshold = metric_normalization_threshold
|
|
71
66
|
|
|
72
67
|
|
|
73
|
-
class MixedPrecisionQuantizationConfig(QuantizationConfig):
|
|
74
|
-
|
|
75
|
-
def __init__(self,
|
|
76
|
-
qc: QuantizationConfig = DEFAULTCONFIG,
|
|
77
|
-
compute_distance_fn: Callable = compute_mse,
|
|
78
|
-
distance_weighting_method: Callable = get_average_weights,
|
|
79
|
-
num_of_images: int = 32,
|
|
80
|
-
configuration_overwrite: List[int] = None,
|
|
81
|
-
num_interest_points_factor: float = 1.0):
|
|
82
|
-
"""
|
|
83
|
-
Class to wrap all different parameters the library quantize the input model according to.
|
|
84
|
-
Unlike QuantizationConfig, number of bits for quantization is a list of possible bit widths to
|
|
85
|
-
support mixed-precision model quantization.
|
|
86
|
-
|
|
87
|
-
Args:
|
|
88
|
-
qc (QuantizationConfig): QuantizationConfig object containing parameters of how the model should be quantized.
|
|
89
|
-
compute_distance_fn (Callable): Function to compute a distance between two tensors.
|
|
90
|
-
distance_weighting_method (Callable): Function to use when weighting the distances among different layers when computing the sensitivity metric.
|
|
91
|
-
num_of_images (int): Number of images to use to evaluate the sensitivity of a mixed-precision model comparing to the float model.
|
|
92
|
-
configuration_overwrite (List[int]): A list of integers that enables overwrite of mixed precision with a predefined one.
|
|
93
|
-
num_interest_points_factor: A multiplication factor between zero and one (represents percentage) to reduce the number of interest points used to calculate the distance metric.
|
|
94
|
-
|
|
95
|
-
"""
|
|
96
|
-
|
|
97
|
-
super().__init__(**qc.__dict__)
|
|
98
|
-
self.compute_distance_fn = compute_distance_fn
|
|
99
|
-
self.distance_weighting_method = distance_weighting_method
|
|
100
|
-
self.num_of_images = num_of_images
|
|
101
|
-
self.configuration_overwrite = configuration_overwrite
|
|
102
|
-
|
|
103
|
-
assert 0.0 < num_interest_points_factor <= 1.0, "num_interest_points_factor should represent a percentage of " \
|
|
104
|
-
"the base set of interest points that are required to be " \
|
|
105
|
-
"used for mixed-precision metric evaluation, " \
|
|
106
|
-
"thus, it should be between 0 to 1"
|
|
107
|
-
self.num_interest_points_factor = num_interest_points_factor
|
|
108
|
-
|
|
109
|
-
def separate_configs(self) -> Tuple[QuantizationConfig, MixedPrecisionQuantizationConfigV2]:
|
|
110
|
-
"""
|
|
111
|
-
A function to separate the old MixedPrecisionQuantizationConfig into QuantizationConfig
|
|
112
|
-
and MixedPrecisionQuantizationConfigV2
|
|
113
|
-
|
|
114
|
-
Returns: QuantizationConfig, MixedPrecisionQuantizationConfigV2
|
|
115
|
-
|
|
116
|
-
"""
|
|
117
|
-
_dummy_quant_config = QuantizationConfig()
|
|
118
|
-
_dummy_mp_config_experimental = MixedPrecisionQuantizationConfigV2()
|
|
119
|
-
qc_dict = {}
|
|
120
|
-
mp_dict = {}
|
|
121
|
-
for k, v in self.__dict__.items():
|
|
122
|
-
if hasattr(_dummy_quant_config, k):
|
|
123
|
-
qc_dict.update({k: v})
|
|
124
|
-
elif hasattr(_dummy_mp_config_experimental, k):
|
|
125
|
-
mp_dict.update({k: v})
|
|
126
|
-
else:
|
|
127
|
-
Logger.error(f'Attribute "{k}" mismatch: exists in MixedPrecisionQuantizationConfig but not in '
|
|
128
|
-
f'MixedPrecisionQuantizationConfigV2') # pragma: no cover
|
|
129
|
-
|
|
130
|
-
return QuantizationConfig(**qc_dict), MixedPrecisionQuantizationConfigV2(**mp_dict)
|
|
131
|
-
|
|
132
|
-
|
|
133
68
|
# Default quantization configuration the library use.
|
|
134
|
-
DEFAULT_MIXEDPRECISION_CONFIG = MixedPrecisionQuantizationConfig(
|
|
135
|
-
|
|
136
|
-
get_average_weights)
|
|
69
|
+
DEFAULT_MIXEDPRECISION_CONFIG = MixedPrecisionQuantizationConfig(compute_distance_fn=compute_mse,
|
|
70
|
+
distance_weighting_method=get_average_weights)
|
|
@@ -18,7 +18,7 @@ from enum import Enum
|
|
|
18
18
|
import numpy as np
|
|
19
19
|
from typing import List, Callable, Dict
|
|
20
20
|
|
|
21
|
-
from model_compression_toolkit.core import
|
|
21
|
+
from model_compression_toolkit.core import MixedPrecisionQuantizationConfig
|
|
22
22
|
from model_compression_toolkit.core.common import Graph
|
|
23
23
|
from model_compression_toolkit.core.common.hessian import HessianInfoService
|
|
24
24
|
from model_compression_toolkit.core.common.mixed_precision.kpi_tools.kpi import KPI, KPITarget
|
|
@@ -48,7 +48,7 @@ def search_bit_width(graph_to_search_cfg: Graph,
|
|
|
48
48
|
fw_info: FrameworkInfo,
|
|
49
49
|
fw_impl: FrameworkImplementation,
|
|
50
50
|
target_kpi: KPI,
|
|
51
|
-
mp_config:
|
|
51
|
+
mp_config: MixedPrecisionQuantizationConfig,
|
|
52
52
|
representative_data_gen: Callable,
|
|
53
53
|
search_method: BitWidthSearchMethod = BitWidthSearchMethod.INTEGER_PROGRAMMING,
|
|
54
54
|
hessian_info_service: HessianInfoService=None) -> List[int]:
|
|
@@ -18,7 +18,7 @@ import numpy as np
|
|
|
18
18
|
from typing import Callable, Any, List, Tuple
|
|
19
19
|
|
|
20
20
|
from model_compression_toolkit.constants import AXIS, HESSIAN_OUTPUT_ALPHA
|
|
21
|
-
from model_compression_toolkit.core import FrameworkInfo,
|
|
21
|
+
from model_compression_toolkit.core import FrameworkInfo, MixedPrecisionQuantizationConfig
|
|
22
22
|
from model_compression_toolkit.core.common import Graph, BaseNode
|
|
23
23
|
from model_compression_toolkit.core.common.graph.functional_node import FunctionalNode
|
|
24
24
|
|
|
@@ -37,7 +37,7 @@ class SensitivityEvaluation:
|
|
|
37
37
|
|
|
38
38
|
def __init__(self,
|
|
39
39
|
graph: Graph,
|
|
40
|
-
quant_config:
|
|
40
|
+
quant_config: MixedPrecisionQuantizationConfig,
|
|
41
41
|
representative_data_gen: Callable,
|
|
42
42
|
fw_info: FrameworkInfo,
|
|
43
43
|
fw_impl: Any,
|
|
@@ -307,7 +307,25 @@ class MemoryCalculator:
|
|
|
307
307
|
total_params += w.size
|
|
308
308
|
|
|
309
309
|
# Adjust the total parameter count if padded channels are to be included.
|
|
310
|
-
|
|
310
|
+
if output_mask is not None:
|
|
311
|
+
num_oc = np.sum(output_mask)
|
|
312
|
+
else:
|
|
313
|
+
# Get the node channel axis from framework info
|
|
314
|
+
channel_axis = self.fw_info.out_channel_axis_mapping.get(node.type)
|
|
315
|
+
if channel_axis is None:
|
|
316
|
+
Logger.error("Channel axis is not defined")
|
|
317
|
+
|
|
318
|
+
# Check if node.output_shape is a list of lists.
|
|
319
|
+
# In this case make sure all the out channels are the same value
|
|
320
|
+
if all(isinstance(sublist, list) for sublist in node.output_shape):
|
|
321
|
+
compare_value = node.output_shape[0][channel_axis]
|
|
322
|
+
if all(len(sublist) > channel_axis and sublist[channel_axis] == compare_value for sublist in node.output_shape):
|
|
323
|
+
num_oc = compare_value
|
|
324
|
+
else:
|
|
325
|
+
Logger.error("Number of out channels are not the same for all outputs of the node")
|
|
326
|
+
else:
|
|
327
|
+
num_oc = node.output_shape[channel_axis]
|
|
328
|
+
|
|
311
329
|
if include_padded_channels:
|
|
312
330
|
total_params = self.get_node_nparams_with_padded_channels(node, total_params, num_oc, node.get_simd())
|
|
313
331
|
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
# ==============================================================================
|
|
15
15
|
from model_compression_toolkit.core.common.quantization.quantization_config import QuantizationConfig
|
|
16
16
|
from model_compression_toolkit.core.common.quantization.debug_config import DebugConfig
|
|
17
|
-
from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import
|
|
17
|
+
from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import MixedPrecisionQuantizationConfig
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
class CoreConfig:
|
|
@@ -23,14 +23,14 @@ class CoreConfig:
|
|
|
23
23
|
"""
|
|
24
24
|
def __init__(self,
|
|
25
25
|
quantization_config: QuantizationConfig = QuantizationConfig(),
|
|
26
|
-
mixed_precision_config:
|
|
26
|
+
mixed_precision_config: MixedPrecisionQuantizationConfig = None,
|
|
27
27
|
debug_config: DebugConfig = DebugConfig()
|
|
28
28
|
):
|
|
29
29
|
"""
|
|
30
30
|
|
|
31
31
|
Args:
|
|
32
32
|
quantization_config (QuantizationConfig): Config for quantization.
|
|
33
|
-
mixed_precision_config (
|
|
33
|
+
mixed_precision_config (MixedPrecisionQuantizationConfig): Config for mixed precision quantization (optional, default=None).
|
|
34
34
|
debug_config (DebugConfig): Config for debugging and editing the network quantization process.
|
|
35
35
|
"""
|
|
36
36
|
self.quantization_config = quantization_config
|
|
@@ -17,7 +17,6 @@ from collections.abc import Callable
|
|
|
17
17
|
from functools import partial
|
|
18
18
|
|
|
19
19
|
from model_compression_toolkit.target_platform_capabilities.target_platform import QuantizationMethod
|
|
20
|
-
from model_compression_toolkit.core.common.quantization.quantizers.kmeans_quantizer import kmeans_quantizer
|
|
21
20
|
from model_compression_toolkit.core.common.quantization.quantizers.lut_kmeans_quantizer import lut_kmeans_quantizer
|
|
22
21
|
from model_compression_toolkit.core.common.quantization.quantizers.uniform_quantizers import power_of_two_quantizer, \
|
|
23
22
|
symmetric_quantizer, uniform_quantizer
|
|
@@ -40,8 +39,6 @@ def get_weights_quantization_fn(weights_quantization_method: QuantizationMethod)
|
|
|
40
39
|
quantizer_fn = symmetric_quantizer
|
|
41
40
|
elif weights_quantization_method == QuantizationMethod.UNIFORM:
|
|
42
41
|
quantizer_fn = uniform_quantizer
|
|
43
|
-
elif weights_quantization_method == QuantizationMethod.KMEANS:
|
|
44
|
-
quantizer_fn = kmeans_quantizer
|
|
45
42
|
elif weights_quantization_method in [QuantizationMethod.LUT_POT_QUANTIZER, QuantizationMethod.LUT_SYM_QUANTIZER]:
|
|
46
43
|
quantizer_fn = lut_kmeans_quantizer
|
|
47
44
|
else:
|
|
@@ -18,7 +18,6 @@ from functools import partial
|
|
|
18
18
|
|
|
19
19
|
from model_compression_toolkit.logger import Logger
|
|
20
20
|
from model_compression_toolkit.target_platform_capabilities.target_platform import QuantizationMethod
|
|
21
|
-
from model_compression_toolkit.core.common.quantization.quantization_params_generation.kmeans_params import kmeans_tensor
|
|
22
21
|
from model_compression_toolkit.core.common.quantization.quantization_params_generation.lut_kmeans_params import \
|
|
23
22
|
lut_kmeans_tensor, lut_kmeans_histogram
|
|
24
23
|
from model_compression_toolkit.core.common.quantization.quantization_params_generation.symmetric_selection import \
|
|
@@ -70,8 +69,6 @@ def get_weights_quantization_params_fn(weights_quantization_method: Quantization
|
|
|
70
69
|
params_fn = symmetric_selection_tensor
|
|
71
70
|
elif weights_quantization_method == QuantizationMethod.UNIFORM:
|
|
72
71
|
params_fn = uniform_selection_tensor
|
|
73
|
-
elif weights_quantization_method == QuantizationMethod.KMEANS:
|
|
74
|
-
params_fn = kmeans_tensor
|
|
75
72
|
elif weights_quantization_method == QuantizationMethod.LUT_POT_QUANTIZER:
|
|
76
73
|
params_fn = partial(lut_kmeans_tensor, is_symmetric=False)
|
|
77
74
|
elif weights_quantization_method == QuantizationMethod.LUT_SYM_QUANTIZER:
|
|
@@ -14,7 +14,6 @@
|
|
|
14
14
|
# ==============================================================================
|
|
15
15
|
from model_compression_toolkit.core.common.quantization.quantization_params_generation.power_of_two_selection import power_of_two_no_clipping_selection_min_max, \
|
|
16
16
|
power_of_two_selection_histogram, power_of_two_selection_tensor
|
|
17
|
-
from model_compression_toolkit.core.common.quantization.quantization_params_generation.kmeans_params import kmeans_tensor
|
|
18
17
|
from model_compression_toolkit.core.common.quantization.quantization_params_generation.lut_kmeans_params import lut_kmeans_tensor
|
|
19
18
|
from model_compression_toolkit.core.common.quantization.quantization_params_generation.symmetric_selection import symmetric_no_clipping_selection_min_max
|
|
20
19
|
from model_compression_toolkit.core.common.quantization.quantization_params_generation.uniform_selection import uniform_no_clipping_selection_min_max
|
|
@@ -57,7 +57,7 @@ else:
|
|
|
57
57
|
Concatenate, Add
|
|
58
58
|
from keras.layers.core import TFOpLambda
|
|
59
59
|
|
|
60
|
-
from model_compression_toolkit.core import QuantizationConfig, FrameworkInfo, CoreConfig,
|
|
60
|
+
from model_compression_toolkit.core import QuantizationConfig, FrameworkInfo, CoreConfig, MixedPrecisionQuantizationConfig
|
|
61
61
|
from model_compression_toolkit.core import common
|
|
62
62
|
from model_compression_toolkit.core.common import Graph, BaseNode
|
|
63
63
|
from model_compression_toolkit.core.common.framework_implementation import FrameworkImplementation
|
|
@@ -355,7 +355,7 @@ class KerasImplementation(FrameworkImplementation):
|
|
|
355
355
|
|
|
356
356
|
def get_sensitivity_evaluator(self,
|
|
357
357
|
graph: Graph,
|
|
358
|
-
quant_config:
|
|
358
|
+
quant_config: MixedPrecisionQuantizationConfig,
|
|
359
359
|
representative_data_gen: Callable,
|
|
360
360
|
fw_info: FrameworkInfo,
|
|
361
361
|
disable_activation_for_metric: bool = False,
|
|
@@ -14,8 +14,7 @@
|
|
|
14
14
|
# ==============================================================================
|
|
15
15
|
|
|
16
16
|
from typing import Callable
|
|
17
|
-
|
|
18
|
-
from model_compression_toolkit.core import CoreConfig, MixedPrecisionQuantizationConfigV2
|
|
17
|
+
from model_compression_toolkit.core import MixedPrecisionQuantizationConfig, CoreConfig
|
|
19
18
|
from model_compression_toolkit.core.common.mixed_precision.kpi_tools.kpi import KPI
|
|
20
19
|
from model_compression_toolkit.logger import Logger
|
|
21
20
|
from model_compression_toolkit.constants import TENSORFLOW
|
|
@@ -36,7 +35,7 @@ if FOUND_TF:
|
|
|
36
35
|
|
|
37
36
|
def keras_kpi_data(in_model: Model,
|
|
38
37
|
representative_data_gen: Callable,
|
|
39
|
-
core_config: CoreConfig,
|
|
38
|
+
core_config: CoreConfig = CoreConfig(mixed_precision_config=MixedPrecisionQuantizationConfig()),
|
|
40
39
|
fw_info: FrameworkInfo = DEFAULT_KERAS_INFO,
|
|
41
40
|
target_platform_capabilities: TargetPlatformCapabilities = KERAS_DEFAULT_TPC) -> KPI:
|
|
42
41
|
"""
|
|
@@ -73,9 +72,9 @@ if FOUND_TF:
|
|
|
73
72
|
|
|
74
73
|
"""
|
|
75
74
|
|
|
76
|
-
if not isinstance(core_config.mixed_precision_config,
|
|
77
|
-
Logger.error("KPI data computation can't be executed without
|
|
78
|
-
"Given quant_config is not of type
|
|
75
|
+
if not isinstance(core_config.mixed_precision_config, MixedPrecisionQuantizationConfig):
|
|
76
|
+
Logger.error("KPI data computation can't be executed without MixedPrecisionQuantizationConfig object."
|
|
77
|
+
"Given quant_config is not of type MixedPrecisionQuantizationConfig.")
|
|
79
78
|
|
|
80
79
|
fw_impl = KerasImplementation()
|
|
81
80
|
|
|
@@ -44,9 +44,9 @@ class PruningKerasImplementation(KerasImplementation, PruningFrameworkImplementa
|
|
|
44
44
|
Prunes the entry node of a model in Keras.
|
|
45
45
|
|
|
46
46
|
Args:
|
|
47
|
-
node: The entry node to be pruned.
|
|
48
|
-
output_mask: A numpy array representing the mask to be applied to the output channels.
|
|
49
|
-
fw_info: Framework-specific information object.
|
|
47
|
+
node (BaseNode): The entry node to be pruned.
|
|
48
|
+
output_mask (np.ndarray): A numpy array representing the mask to be applied to the output channels.
|
|
49
|
+
fw_info (FrameworkInfo): Framework-specific information object.
|
|
50
50
|
|
|
51
51
|
"""
|
|
52
52
|
return _prune_keras_edge_node(node=node,
|
|
@@ -63,10 +63,10 @@ class PruningKerasImplementation(KerasImplementation, PruningFrameworkImplementa
|
|
|
63
63
|
Prunes an intermediate node in a Keras model.
|
|
64
64
|
|
|
65
65
|
Args:
|
|
66
|
-
node: The intermediate node to be pruned.
|
|
67
|
-
input_mask: A numpy array representing the mask to be applied to the input channels.
|
|
68
|
-
output_mask: A numpy array representing the mask to be applied to the output channels.
|
|
69
|
-
fw_info: Framework-specific information object.
|
|
66
|
+
node (BaseNode): The intermediate node to be pruned.
|
|
67
|
+
input_mask (np.ndarray): A numpy array representing the mask to be applied to the input channels.
|
|
68
|
+
output_mask (np.ndarray): A numpy array representing the mask to be applied to the output channels.
|
|
69
|
+
fw_info (FrameworkInfo): Framework-specific information object.
|
|
70
70
|
|
|
71
71
|
"""
|
|
72
72
|
_edit_node_input_shape(input_mask, node)
|
|
@@ -85,9 +85,9 @@ class PruningKerasImplementation(KerasImplementation, PruningFrameworkImplementa
|
|
|
85
85
|
Prunes the exit node of a model in Keras.
|
|
86
86
|
|
|
87
87
|
Args:
|
|
88
|
-
node: The exit node to be pruned.
|
|
89
|
-
input_mask: A numpy array representing the mask to be applied to the input channels.
|
|
90
|
-
fw_info: Framework-specific information object.
|
|
88
|
+
node (BaseNode): The exit node to be pruned.
|
|
89
|
+
input_mask (np.ndarray): A numpy array representing the mask to be applied to the input channels.
|
|
90
|
+
fw_info (FrameworkInfo): Framework-specific information object.
|
|
91
91
|
|
|
92
92
|
"""
|
|
93
93
|
return _prune_keras_edge_node(node=node,
|
|
@@ -100,10 +100,10 @@ class PruningKerasImplementation(KerasImplementation, PruningFrameworkImplementa
|
|
|
100
100
|
Determines whether a node is an entry node in a Keras model.
|
|
101
101
|
|
|
102
102
|
Args:
|
|
103
|
-
node: The node to be checked.
|
|
103
|
+
node (BaseNode): The node to be checked.
|
|
104
104
|
|
|
105
105
|
Returns:
|
|
106
|
-
Boolean indicating if the node is an entry node.
|
|
106
|
+
bool: Boolean indicating if the node is an entry node.
|
|
107
107
|
"""
|
|
108
108
|
return _is_keras_node_pruning_section_edge(node)
|
|
109
109
|
|
|
@@ -115,26 +115,26 @@ class PruningKerasImplementation(KerasImplementation, PruningFrameworkImplementa
|
|
|
115
115
|
Determines whether a node is an exit node in a Keras model.
|
|
116
116
|
|
|
117
117
|
Args:
|
|
118
|
-
node: The node to be checked.
|
|
119
|
-
corresponding_entry_node: The entry node of the pruning section that is checked.
|
|
120
|
-
fw_info: Framework-specific information object.
|
|
118
|
+
node (BaseNode): The node to be checked.
|
|
119
|
+
corresponding_entry_node (BaseNode): The entry node of the pruning section that is checked.
|
|
120
|
+
fw_info (FrameworkInfo): Framework-specific information object.
|
|
121
121
|
|
|
122
122
|
Returns:
|
|
123
|
-
Boolean indicating if the node is an exit node.
|
|
123
|
+
bool: Boolean indicating if the node is an exit node.
|
|
124
124
|
"""
|
|
125
125
|
return _is_keras_node_pruning_section_edge(node) and PruningSection.has_matching_channel_count(node,
|
|
126
126
|
corresponding_entry_node,
|
|
127
127
|
fw_info)
|
|
128
128
|
|
|
129
|
-
def is_node_intermediate_pruning_section(self, node) -> bool:
|
|
129
|
+
def is_node_intermediate_pruning_section(self, node: BaseNode) -> bool:
|
|
130
130
|
"""
|
|
131
131
|
Determines whether a node is part of the intermediate section in the pruning process of a Keras model.
|
|
132
132
|
|
|
133
133
|
Args:
|
|
134
|
-
node: The node to be checked.
|
|
134
|
+
node (BaseNode): The node to be checked.
|
|
135
135
|
|
|
136
136
|
Returns:
|
|
137
|
-
Boolean indicating if the node is part of the intermediate pruning section.
|
|
137
|
+
bool: Boolean indicating if the node is part of the intermediate pruning section.
|
|
138
138
|
"""
|
|
139
139
|
# Nodes that are not Conv2D, Conv2DTranspose, DepthwiseConv2D, or Dense are considered intermediate.
|
|
140
140
|
return node.type not in [keras.layers.DepthwiseConv2D,
|
|
@@ -22,7 +22,7 @@ from model_compression_toolkit.core.common.mixed_precision.kpi_tools.kpi import
|
|
|
22
22
|
from model_compression_toolkit.core.common.framework_info import FrameworkInfo
|
|
23
23
|
from model_compression_toolkit.core.common.mixed_precision.kpi_tools.kpi_data import compute_kpi_data
|
|
24
24
|
from model_compression_toolkit.core.common.quantization.core_config import CoreConfig
|
|
25
|
-
from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import
|
|
25
|
+
from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import MixedPrecisionQuantizationConfig
|
|
26
26
|
from model_compression_toolkit.constants import FOUND_TORCH
|
|
27
27
|
|
|
28
28
|
if FOUND_TORCH:
|
|
@@ -38,7 +38,7 @@ if FOUND_TORCH:
|
|
|
38
38
|
|
|
39
39
|
def pytorch_kpi_data(in_model: Module,
|
|
40
40
|
representative_data_gen: Callable,
|
|
41
|
-
core_config: CoreConfig = CoreConfig(),
|
|
41
|
+
core_config: CoreConfig = CoreConfig(mixed_precision_config=MixedPrecisionQuantizationConfig()),
|
|
42
42
|
fw_info: FrameworkInfo = DEFAULT_PYTORCH_INFO,
|
|
43
43
|
target_platform_capabilities: TargetPlatformCapabilities = PYTORCH_DEFAULT_TPC) -> KPI:
|
|
44
44
|
"""
|
|
@@ -75,9 +75,9 @@ if FOUND_TORCH:
|
|
|
75
75
|
|
|
76
76
|
"""
|
|
77
77
|
|
|
78
|
-
if not isinstance(core_config.mixed_precision_config,
|
|
79
|
-
Logger.error("KPI data computation can't be executed without
|
|
80
|
-
"Given quant_config is not of type
|
|
78
|
+
if not isinstance(core_config.mixed_precision_config, MixedPrecisionQuantizationConfig):
|
|
79
|
+
Logger.error("KPI data computation can't be executed without MixedPrecisionQuantizationConfig object."
|
|
80
|
+
"Given quant_config is not of type MixedPrecisionQuantizationConfig.")
|
|
81
81
|
|
|
82
82
|
fw_impl = PytorchImplementation()
|
|
83
83
|
|
mct-nightly-1.11.0.20240305.post352/model_compression_toolkit/core/pytorch/pruning/__init__.py
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
# ==============================================================================
|