mct-nightly 2.1.0.20240616.65727__tar.gz → 2.1.0.20240618.432__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/PKG-INFO +1 -1
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/mct_nightly.egg-info/PKG-INFO +1 -1
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/mct_nightly.egg-info/SOURCES.txt +27 -1
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/mct_nightly.egg-info/requires.txt +1 -1
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/__init__.py +1 -1
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/functional_node.py +3 -3
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/back2framework/pytorch_model_builder.py +23 -13
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/constants.py +1 -1
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/reshape_with_static_shapes.py +3 -3
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/reader/graph_builders.py +12 -6
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/gptq_training.py +1 -1
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/graph_info.py +1 -1
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/gptq_training.py +5 -2
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/graph_info.py +2 -1
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_pytorch.py +3 -2
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_pytorch.py +3 -2
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/__init__.py +19 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/__init__.py +15 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/constants.py +38 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/core_report_generator.py +83 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/dataset_utils.py +43 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/framework_report_utils.py +89 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/model_analyzer.py +99 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/model_folding_utils.py +104 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/similarity_calculator.py +194 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/similarity_functions.py +81 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/tensorboard_utils.py +101 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/xquant_config.py +39 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/keras/__init__.py +15 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/keras/dataset_utils.py +57 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/keras/facade_xquant_report.py +63 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/keras/keras_report_utils.py +60 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/keras/model_analyzer.py +136 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/keras/similarity_functions.py +75 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/keras/tensorboard_utils.py +84 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/pytorch/__init__.py +15 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/pytorch/dataset_utils.py +76 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/pytorch/facade_xquant_report.py +62 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/pytorch/model_analyzer.py +132 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/pytorch/pytorch_report_utils.py +61 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/pytorch/similarity_functions.py +68 -0
- mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/pytorch/tensorboard_utils.py +87 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/LICENSE.md +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/README.md +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/mct_nightly.egg-info/dependency_links.txt +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/mct_nightly.egg-info/top_level.txt +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/constants.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/analyzer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/back2framework/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/back2framework/base_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/base_substitutions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/collectors/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/collectors/base_collector.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/collectors/histogram_collector.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/collectors/mean_collector.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/collectors/min_max_per_channel_collector.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/collectors/statistics_collector.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/framework_implementation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/framework_info.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/fusion/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/fusion/layer_fusing.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/base_graph.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/base_node.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/edge.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/graph_matchers.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/graph_searches.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/memory_graph/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/memory_graph/bipartite_graph.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/memory_graph/compute_graph_max_cut.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/memory_graph/cut.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/memory_graph/max_cut_astar.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/memory_graph/memory_element.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/memory_graph/memory_graph.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/graph/virtual_activation_weights_node.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/hessian/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/hessian/hessian_info_service.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/hessian/hessian_info_utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/hessian/trace_hessian_calculator.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/hessian/trace_hessian_request.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/matchers/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/matchers/base_graph_filter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/matchers/base_matcher.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/matchers/edge_matcher.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/matchers/function.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/matchers/node_matcher.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/matchers/walk_matcher.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/memory_computation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/bit_width_setter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/configurable_quant_id.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/configurable_quantizer_utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/distance_weighting.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_quantization_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_manager.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_aggregation_methods.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_functions_mapping.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_methods.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/search_methods/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/search_methods/linear_programming.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/sensitivity_evaluation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/set_layer_to_bitwidth.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/mixed_precision/solution_refinement_procedure.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/model_builder_mode.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/model_collector.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/model_validation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/network_editors/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/network_editors/actions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/network_editors/edit_network.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/network_editors/node_filters.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/node_prior_info.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/channels_grouping.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/greedy_mask_calculator.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/importance_metrics/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/importance_metrics/base_importance_metric.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/importance_metrics/importance_metric_factory.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/importance_metrics/lfh_importance_metric.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/mask/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/mask/per_channel_mask.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/mask/per_simd_group_mask.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/memory_calculator.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/prune_graph.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/pruner.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/pruning_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/pruning_framework_implementation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/pruning_info.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/pruning/pruning_section.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/candidate_node_quantization_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/core_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/debug_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/filter_nodes_candidates.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/node_quantization_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_fn_selection.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_fn_selection.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_generation/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_generation/error_functions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_generation/lut_kmeans_params.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_generation/outlier_filter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_generation/power_of_two_selection.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_activations_computation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_computation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_search.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_weights_computation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_generation/symmetric_selection.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantization_params_generation/uniform_selection.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantize_graph_weights.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantize_node.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantizers/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantizers/lut_kmeans_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantizers/quantizers_helpers.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/quantizers/uniform_quantizers.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/similarity_analyzer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/statistics_correction/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/statistics_correction/apply_bias_correction_to_graph.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/statistics_correction/apply_second_moment_correction_to_graph.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/statistics_correction/compute_bias_correction_of_graph.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/statistics_correction/statistics_correction.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/apply_substitutions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/batchnorm_folding.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/batchnorm_reconstruction.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/batchnorm_refusing.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/linear_collapsing.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/linear_collapsing_substitution.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/remove_identity.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/residual_collapsing.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/scale_equalization.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/shift_negative_activation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/softmax_shift.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/substitutions/weights_activation_split.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/user_info.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/visualization/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/visualization/final_config_visualizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/visualization/nn_visualizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/common/visualization/tensorboard_writer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/graph_prep_runner.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/back2framework/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/back2framework/factory_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/back2framework/float_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/back2framework/instance_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/back2framework/keras_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/back2framework/mixed_precision_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/back2framework/quantized_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/constants.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/custom_layer_validation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/default_framework_info.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/activation_decomposition.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/dwconv_to_conv.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/input_scaling.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/linear_collapsing.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/matmul_substitution.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/remove_identity.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/residual_collapsing.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/scale_equalization.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/separableconv_decomposition.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/softmax_shift.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/weights_activation_split.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/hessian/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/hessian/activation_trace_hessian_calculator_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/hessian/trace_hessian_calculator_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/hessian/weights_trace_hessian_calculator_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/keras_implementation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/keras_model_validation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/keras_node_prior_info.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/mixed_precision/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/mixed_precision/configurable_activation_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/mixed_precision/configurable_weights_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/pruning/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/pruning/pruning_keras_implementation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/quantizer/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/quantizer/base_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/quantizer/fake_quant_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/quantizer/lut_fake_quant.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/reader/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/reader/common.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/reader/connectivity_handler.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/reader/nested_model/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/reader/nested_model/edges_merger.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/reader/nested_model/nested_model_handler.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/reader/nested_model/nodes_merger.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/reader/nested_model/outputs_merger.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/reader/node_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/reader/reader.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/resource_utilization_data_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/statistics_correction/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/statistics_correction/apply_second_moment_correction.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/tf_tensor_numpy.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/keras/visualization/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/back2framework/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/back2framework/factory_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/back2framework/float_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/back2framework/instance_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/back2framework/mixed_precision_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/quantized_layer_wrapper.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/wrapper_quantize_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/back2framework/quantized_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/default_framework_info.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/const_holder_conv.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_batch_norm.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_layer_norm.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/linear_collapsing.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/remove_identity.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/residual_collapsing.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scale_equalization.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/softmax_shift.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/transform_function_call_method.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/weights_activation_split.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/hessian/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/hessian/activation_trace_hessian_calculator_pytorch.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/hessian/trace_hessian_calculator_pytorch.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/hessian/weights_trace_hessian_calculator_pytorch.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/mixed_precision/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_activation_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_weights_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/pruning/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/pruning/pruning_pytorch_implementation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/pytorch_device_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/pytorch_implementation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/pytorch_node_prior_info.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/quantizer/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/quantizer/fake_quant_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/quantizer/lut_fake_quant.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/reader/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/reader/node_holders.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/reader/reader.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/statistics_correction/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/statistics_correction/apply_second_moment_correction.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/pytorch/utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/quantization_prep_runner.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/core/runner.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/common/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/common/constants.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/common/data_generation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/common/data_generation_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/common/enums.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/common/image_pipeline.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/common/model_info_exctractors.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/common/optimization_utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/constants.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/image_pipeline.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/keras_data_generation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/model_info_exctractors.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/optimization_functions/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/optimization_functions/batchnorm_alignment_functions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/optimization_functions/bn_layer_weighting_functions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/optimization_functions/image_initilization.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/optimization_functions/output_loss_functions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/optimization_functions/scheduler_step_functions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/keras/optimization_utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/constants.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/image_pipeline.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/model_info_exctractors.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/optimization_functions/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/optimization_functions/batchnorm_alignment_functions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/optimization_functions/bn_layer_weighting_functions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/optimization_functions/image_initilization.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/optimization_functions/output_loss_functions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/optimization_functions/scheduler_step_functions.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/optimization_utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/defaultdict.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/exporter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/quantization_format.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/keras/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/keras/base_keras_exporter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/keras/export_serialization_format.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_keras_exporter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_tflite_exporter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/keras/int8_tflite_exporter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/keras/mctq_keras_exporter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/pytorch/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/pytorch/base_pytorch_exporter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/pytorch/export_serialization_format.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_torchscript_pytorch_exporter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/get_inferable_quantizers.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/keras/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/keras/builder/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/keras/builder/node_to_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/pytorch/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/node_to_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/common/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/common/gptq_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/common/gptq_constants.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/common/gptq_framework_implementation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/common/gptq_graph.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/common/gptq_training.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/gptq_keras_implementation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/gptq_loss.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantization_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantizer/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantizer/quant_utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantizer/quantization_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantizer/regularization_factory.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/gptq_loss.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/gptq_pytorch_implementation.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantization_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantizer/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantizer/quant_utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantizer/quantization_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantizer/regularization_factory.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/gptq/runner.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/logger.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/metadata.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/pruning/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/pruning/keras/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/pruning/keras/pruning_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/pruning/pytorch/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/pruning/pytorch/pruning_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/ptq/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/ptq/keras/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/ptq/keras/quantization_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/ptq/pytorch/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/ptq/pytorch/quantization_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/ptq/runner.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/common/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/common/qat_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/quantization_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/quantizer/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/quantizer/base_keras_qat_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/quantizer/lsq/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/quantizer/lsq/symmetric_lsq.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/quantizer/lsq/uniform_lsq.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/quantizer/quant_utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/quantizer/quantization_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/uniform_ste.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/quantization_facade.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/quantizer/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/quantizer/lsq/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/quantizer/lsq/symmetric_lsq.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/quantizer/lsq/uniform_lsq.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/quantizer/quantization_builder.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/quantizer/quantizer_utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/uniform_ste.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/constants.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/immutable.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/current_tp_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/fusing.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/op_quantization_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/operators.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model_component.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attribute_filter.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/current_tpc.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/layer_filter_params.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/operations_to_layers.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities_component.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_pytorch.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_pytorch.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_pytorch.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tp_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_pytorch.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tp_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_pytorch.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tp_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tp_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tp_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_pytorch.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_keras.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_pytorch.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/common/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/common/base_trainable_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/common/constants.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/common/get_quantizer_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/common/get_quantizers.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/common/quant_utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/common/trainable_quantizer_config.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/keras/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/keras/config_serialization.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/keras/load_model.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/keras/quantizer_utils.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/pytorch/__init__.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/setup.cfg +0 -0
- {mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/setup.py +0 -0
{mct-nightly-2.1.0.20240616.65727 → mct-nightly-2.1.0.20240618.432}/mct_nightly.egg-info/SOURCES.txt
RENAMED
@@ -499,4 +499,30 @@ model_compression_toolkit/trainable_infrastructure/keras/load_model.py
|
|
499
499
|
model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py
|
500
500
|
model_compression_toolkit/trainable_infrastructure/keras/quantizer_utils.py
|
501
501
|
model_compression_toolkit/trainable_infrastructure/pytorch/__init__.py
|
502
|
-
model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py
|
502
|
+
model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py
|
503
|
+
model_compression_toolkit/xquant/__init__.py
|
504
|
+
model_compression_toolkit/xquant/common/__init__.py
|
505
|
+
model_compression_toolkit/xquant/common/constants.py
|
506
|
+
model_compression_toolkit/xquant/common/core_report_generator.py
|
507
|
+
model_compression_toolkit/xquant/common/dataset_utils.py
|
508
|
+
model_compression_toolkit/xquant/common/framework_report_utils.py
|
509
|
+
model_compression_toolkit/xquant/common/model_analyzer.py
|
510
|
+
model_compression_toolkit/xquant/common/model_folding_utils.py
|
511
|
+
model_compression_toolkit/xquant/common/similarity_calculator.py
|
512
|
+
model_compression_toolkit/xquant/common/similarity_functions.py
|
513
|
+
model_compression_toolkit/xquant/common/tensorboard_utils.py
|
514
|
+
model_compression_toolkit/xquant/common/xquant_config.py
|
515
|
+
model_compression_toolkit/xquant/keras/__init__.py
|
516
|
+
model_compression_toolkit/xquant/keras/dataset_utils.py
|
517
|
+
model_compression_toolkit/xquant/keras/facade_xquant_report.py
|
518
|
+
model_compression_toolkit/xquant/keras/keras_report_utils.py
|
519
|
+
model_compression_toolkit/xquant/keras/model_analyzer.py
|
520
|
+
model_compression_toolkit/xquant/keras/similarity_functions.py
|
521
|
+
model_compression_toolkit/xquant/keras/tensorboard_utils.py
|
522
|
+
model_compression_toolkit/xquant/pytorch/__init__.py
|
523
|
+
model_compression_toolkit/xquant/pytorch/dataset_utils.py
|
524
|
+
model_compression_toolkit/xquant/pytorch/facade_xquant_report.py
|
525
|
+
model_compression_toolkit/xquant/pytorch/model_analyzer.py
|
526
|
+
model_compression_toolkit/xquant/pytorch/pytorch_report_utils.py
|
527
|
+
model_compression_toolkit/xquant/pytorch/similarity_functions.py
|
528
|
+
model_compression_toolkit/xquant/pytorch/tensorboard_utils.py
|
@@ -27,4 +27,4 @@ from model_compression_toolkit import data_generation
|
|
27
27
|
from model_compression_toolkit import pruning
|
28
28
|
from model_compression_toolkit.trainable_infrastructure.keras.load_model import keras_load_quantized_model
|
29
29
|
|
30
|
-
__version__ = "2.1.0.
|
30
|
+
__version__ = "2.1.0.20240618.000432"
|
@@ -25,7 +25,7 @@ class FunctionalNode(BaseNode):
|
|
25
25
|
functional_op: Any = None,
|
26
26
|
inputs_as_list: bool = False,
|
27
27
|
has_activation: bool = True,
|
28
|
-
|
28
|
+
tensor_input_allocs = None):
|
29
29
|
"""
|
30
30
|
Init a FunctionalNode object.
|
31
31
|
|
@@ -44,7 +44,7 @@ class FunctionalNode(BaseNode):
|
|
44
44
|
functional_op: The op the node implements.
|
45
45
|
inputs_as_list: Whether to pass the node its input tensors as a list or not when calling the layer.
|
46
46
|
has_activation: Whether the node has activations that we might want to quantize.
|
47
|
-
|
47
|
+
tensor_input_allocs: A list of indices for activation tensors in the node's input tensor list
|
48
48
|
|
49
49
|
"""
|
50
50
|
|
@@ -63,7 +63,7 @@ class FunctionalNode(BaseNode):
|
|
63
63
|
self.op_call_args = op_call_args
|
64
64
|
self.functional_op = functional_op
|
65
65
|
self.inputs_as_list = inputs_as_list
|
66
|
-
self.
|
66
|
+
self.tensor_input_allocs = [] if tensor_input_allocs is None else tensor_input_allocs
|
67
67
|
|
68
68
|
@property
|
69
69
|
def type(self):
|
@@ -22,6 +22,7 @@ from networkx import topological_sort
|
|
22
22
|
|
23
23
|
from model_compression_toolkit.core import FrameworkInfo
|
24
24
|
from model_compression_toolkit.core import common
|
25
|
+
from model_compression_toolkit.logger import Logger
|
25
26
|
from model_compression_toolkit.core.common import BaseNode, Graph
|
26
27
|
from model_compression_toolkit.core.common.back2framework.base_model_builder import BaseModelBuilder
|
27
28
|
from model_compression_toolkit.core.common.graph.edge import EDGE_SINK_INDEX
|
@@ -66,8 +67,8 @@ def _build_input_tensors_list(node: BaseNode,
|
|
66
67
|
return input_tensors
|
67
68
|
|
68
69
|
|
69
|
-
def _merge_inputs(_node: BaseNode, input_tensors: List, op_call_args: List,
|
70
|
-
|
70
|
+
def _merge_inputs(_node: BaseNode, input_tensors: List, op_call_args: List, op_call_kwargs: Dict,
|
71
|
+
tensor_input_allocs: List = None) -> Tuple[List, Dict]:
|
71
72
|
"""
|
72
73
|
Merge input tensors list with positional weights and op_call_args, according to correct order.
|
73
74
|
|
@@ -75,22 +76,30 @@ def _merge_inputs(_node: BaseNode, input_tensors: List, op_call_args: List,
|
|
75
76
|
_node: The node the inputs are for.
|
76
77
|
input_tensors: activation input tensors to node.
|
77
78
|
op_call_args: framework node call args.
|
79
|
+
op_call_kwargs: framework node call kwargs.
|
80
|
+
tensor_input_allocs: List of input allocations to node.
|
78
81
|
|
79
82
|
Returns:
|
80
83
|
Combined list of input_tensors and op_call_args.
|
81
84
|
"""
|
82
|
-
if isinstance(_node, FunctionalNode) and _node.
|
85
|
+
if isinstance(_node, FunctionalNode) and _node.tensor_input_allocs:
|
83
86
|
_input_list = op_call_args.copy()
|
84
|
-
if
|
85
|
-
|
86
|
-
|
87
|
-
f'Mismatch between input tensors ({len(
|
88
|
-
|
89
|
-
|
87
|
+
if tensor_input_allocs is None:
|
88
|
+
tensor_input_allocs = _node.tensor_input_allocs
|
89
|
+
if len(tensor_input_allocs) != len(input_tensors):
|
90
|
+
Logger.error(f'Mismatch between input tensors ({len(tensor_input_allocs)}) '
|
91
|
+
f'and indices {len(input_tensors)} in node {_node.name}.') # pragma: no cover
|
92
|
+
for i, t in zip(tensor_input_allocs, input_tensors):
|
93
|
+
# insert input tensors in either args or kwargs, according to tensor_input_allocs
|
94
|
+
if isinstance(i, str):
|
95
|
+
assert i not in op_call_kwargs
|
96
|
+
op_call_kwargs.update({i: t})
|
97
|
+
else:
|
98
|
+
_input_list.insert(i, t)
|
90
99
|
else:
|
91
100
|
_input_list = input_tensors + op_call_args
|
92
101
|
|
93
|
-
return _input_list
|
102
|
+
return _input_list, op_call_kwargs
|
94
103
|
|
95
104
|
|
96
105
|
def _run_operation(n: BaseNode,
|
@@ -125,14 +134,15 @@ def _run_operation(n: BaseNode,
|
|
125
134
|
# list separately, because in FX the tensors are FX objects and fail to_torch_tensor
|
126
135
|
input_tensors = [to_torch_tensor(t, numpy_type=t.dtype) if isinstance(t, np.ndarray) else t
|
127
136
|
for t in input_tensors]
|
128
|
-
|
137
|
+
_tensor_input_allocs = None
|
129
138
|
else:
|
130
|
-
|
139
|
+
_tensor_input_allocs = [i for i in n.tensor_input_allocs if i not in n.weights]
|
131
140
|
|
132
141
|
if isinstance(n, FunctionalNode) and n.inputs_as_list:
|
133
142
|
out_tensors_of_n_float = op_func(input_tensors, *op_call_args, **functional_kwargs)
|
134
143
|
else:
|
135
|
-
merged_inputs = _merge_inputs(n, input_tensors, op_call_args,
|
144
|
+
merged_inputs, functional_kwargs = _merge_inputs(n, input_tensors, op_call_args, functional_kwargs.copy(),
|
145
|
+
tensor_input_allocs=_tensor_input_allocs)
|
136
146
|
out_tensors_of_n_float = op_func(*merged_inputs, **functional_kwargs)
|
137
147
|
|
138
148
|
# Add a fake quant node if the node has an activation threshold.
|
@@ -40,7 +40,7 @@ FUNCTIONAL_OP = 'functional_op'
|
|
40
40
|
OP_CALL_ARGS = 'op_call_args'
|
41
41
|
OP_CALL_KWARGS = 'op_call_kwargs'
|
42
42
|
INPUTS_AS_LIST = 'inputs_as_list'
|
43
|
-
|
43
|
+
TENSOR_INPUT_ALLOCS = 'tensor_input_allocs'
|
44
44
|
INPLACE = 'inplace'
|
45
45
|
HARDTANH_MIN_VAL = 'min_val'
|
46
46
|
HARDTANH_MAX_VAL = 'max_val'
|
@@ -65,10 +65,10 @@ class ReshapeWithStaticShapes(common.BaseSubstitution):
|
|
65
65
|
|
66
66
|
# When a "reshape" is called with multiple arguments (e.g. x.reshape(-1, channels, height, width)
|
67
67
|
# this substitution converts it x.reshape((-1, channels, height, width)), so need to update the
|
68
|
-
#
|
69
|
-
# scalar argument's shape is [1] so remove those indices from
|
68
|
+
# tensor_input_allocs attribute.
|
69
|
+
# scalar argument's shape is [1] so remove those indices from tensor_input_allocs
|
70
70
|
# node.input_shape example: [[1, 32, 4, 32], [1], [1], [1]]
|
71
|
-
node.
|
71
|
+
node.tensor_input_allocs = node.tensor_input_allocs[:sum([i != [1] for i in node.input_shape])]
|
72
72
|
|
73
73
|
# modify the node input info
|
74
74
|
node.input_shape = [node.input_shape[0]]
|
@@ -23,7 +23,7 @@ from model_compression_toolkit.core.common.graph.base_graph import OutTensor
|
|
23
23
|
from model_compression_toolkit.core.common.graph.edge import Edge
|
24
24
|
from model_compression_toolkit.core.common.graph.functional_node import FunctionalNode
|
25
25
|
from model_compression_toolkit.core.pytorch.constants import OUTPUT, PLACEHOLDER, TENSOR_META, CALL_FUNCTION, TYPE, \
|
26
|
-
CALL_METHOD, BIAS, FUNCTIONAL_OP, OP_CALL_KWARGS, OP_CALL_ARGS, INPUTS_AS_LIST,
|
26
|
+
CALL_METHOD, BIAS, FUNCTIONAL_OP, OP_CALL_KWARGS, OP_CALL_ARGS, INPUTS_AS_LIST, TENSOR_INPUT_ALLOCS, GET_ATTR
|
27
27
|
from model_compression_toolkit.core.pytorch.reader.node_holders import DummyPlaceHolder
|
28
28
|
from model_compression_toolkit.logger import Logger
|
29
29
|
|
@@ -140,7 +140,7 @@ def nodes_builder(model: GraphModule,
|
|
140
140
|
weights.update({i: consts_dict[input_node]})
|
141
141
|
|
142
142
|
tensor_meta = input_node.meta
|
143
|
-
if tensor_meta[TYPE]
|
143
|
+
if tensor_meta[TYPE] in [torch.Tensor, torch.nn.parameter.Parameter]:
|
144
144
|
input_shape += [list(tensor_meta[TENSOR_META].shape)]
|
145
145
|
elif tensor_meta[TYPE] == tuple:
|
146
146
|
input_shape += [list(n.shape) for n in tensor_meta[TENSOR_META]]
|
@@ -159,8 +159,11 @@ def nodes_builder(model: GraphModule,
|
|
159
159
|
|
160
160
|
# filter Nodes from framework attributes, we replace these attributes with nx graph nodes
|
161
161
|
framework_attr_filtered = {}
|
162
|
+
framework_attr_nodes = {}
|
162
163
|
for k, v in framework_attr.items():
|
163
|
-
if
|
164
|
+
if isinstance(v, torch.fx.node.Node):
|
165
|
+
framework_attr_nodes[k] = v
|
166
|
+
else:
|
164
167
|
framework_attr_filtered[k] = v
|
165
168
|
framework_attr = framework_attr_filtered
|
166
169
|
|
@@ -177,7 +180,7 @@ def nodes_builder(model: GraphModule,
|
|
177
180
|
[isinstance(n, torch.fx.node.Node) for n in node.args[0]])
|
178
181
|
inputs_as_list = inputs_as_list1 or (len(node.args) > 0 and isinstance(node.args[0], Node) and
|
179
182
|
node.args[0].op == PLACEHOLDER and node.args[0].meta[TYPE] in (list, tuple))
|
180
|
-
|
183
|
+
tensor_input_alloc = []
|
181
184
|
op_call_args = list(node.args)
|
182
185
|
if inputs_as_list:
|
183
186
|
op_call_args.pop(0)
|
@@ -185,7 +188,10 @@ def nodes_builder(model: GraphModule,
|
|
185
188
|
for in_node in node.all_input_nodes:
|
186
189
|
for i, arg in enumerate(node.args):
|
187
190
|
if arg == in_node:
|
188
|
-
|
191
|
+
tensor_input_alloc.append(i)
|
192
|
+
for k, arg in framework_attr_nodes.items():
|
193
|
+
if arg == in_node:
|
194
|
+
tensor_input_alloc.append(k)
|
189
195
|
|
190
196
|
# remove torch.fx.node.Node from inputs to graph_node_type
|
191
197
|
op_call_args = [arg for arg in op_call_args if not isinstance(arg, Node)]
|
@@ -197,7 +203,7 @@ def nodes_builder(model: GraphModule,
|
|
197
203
|
OP_CALL_ARGS: op_call_args,
|
198
204
|
OP_CALL_KWARGS: node_kwargs,
|
199
205
|
INPUTS_AS_LIST: inputs_as_list,
|
200
|
-
|
206
|
+
TENSOR_INPUT_ALLOCS: tensor_input_alloc}
|
201
207
|
else:
|
202
208
|
graph_node_type = BaseNode
|
203
209
|
kwargs = {}
|
@@ -353,7 +353,7 @@ class KerasGPTQTrainer(GPTQTrainer):
|
|
353
353
|
node.final_activation_quantization_cfg.set_quant_config_attr(config_attr, config_value)
|
354
354
|
if self.gptq_config.train_bias:
|
355
355
|
use_bias = layer.layer.get_config().get(USE_BIAS)
|
356
|
-
if use_bias is not None and use_bias:
|
356
|
+
if use_bias is not None and use_bias and layer.layer.bias is not None:
|
357
357
|
new_bias = layer.layer.bias.numpy()
|
358
358
|
node.set_weights_by_keys(BIAS, new_bias)
|
359
359
|
|
@@ -63,7 +63,7 @@ def get_gptq_trainable_parameters(fxp_model: Model,
|
|
63
63
|
kernel_ops_attrs = fw_info.kernel_ops_attributes_mapping.get(type(layer.layer))
|
64
64
|
use_bias = kernel_ops_attrs is not None and kernel_ops_attrs[0] is not None \
|
65
65
|
and layer.layer.get_config().get(USE_BIAS)
|
66
|
-
if use_bias is not None and use_bias:
|
66
|
+
if use_bias is not None and use_bias and layer.layer.bias is not None:
|
67
67
|
bias_weights.append([layer.layer.bias])
|
68
68
|
|
69
69
|
return trainable_weights, bias_weights, trainable_threshold
|
@@ -299,7 +299,9 @@ class PytorchGPTQTrainer(GPTQTrainer):
|
|
299
299
|
for config_attr, config_value in activation_quant_config.items():
|
300
300
|
node.final_activation_quantization_cfg.set_quant_config_attr(config_attr, config_value)
|
301
301
|
if self.gptq_config.train_bias and hasattr(layer.layer, BIAS):
|
302
|
-
|
302
|
+
bias = getattr(layer.layer, BIAS)
|
303
|
+
if bias is not None:
|
304
|
+
node.set_weights_by_keys(BIAS, self.fw_impl.to_numpy(bias))
|
303
305
|
|
304
306
|
return graph_quant
|
305
307
|
|
@@ -316,4 +318,5 @@ class PytorchGPTQTrainer(GPTQTrainer):
|
|
316
318
|
if isinstance(layer, PytorchQuantizationWrapper):
|
317
319
|
if hasattr(layer.layer, BIAS):
|
318
320
|
bias = getattr(layer.layer, BIAS)
|
319
|
-
bias
|
321
|
+
if bias is not None:
|
322
|
+
bias.requires_grad = self.gptq_config.train_bias
|
@@ -56,7 +56,8 @@ def get_gptq_trainable_parameters(fxp_model: nn.Module,
|
|
56
56
|
|
57
57
|
if add_bias and hasattr(layer.layer, BIAS):
|
58
58
|
bias = getattr(layer.layer, BIAS)
|
59
|
-
|
59
|
+
if bias is not None:
|
60
|
+
trainable_bias.append(bias)
|
60
61
|
|
61
62
|
return trainable_aux_weights, trainable_bias, trainable_threshold
|
62
63
|
|
@@ -18,7 +18,7 @@ import operator
|
|
18
18
|
import torch
|
19
19
|
from torch import add, sub, mul, div, flatten, reshape, split, unsqueeze, dropout, sigmoid, tanh, chunk, unbind, topk, \
|
20
20
|
gather, equal, transpose, permute, argmax, squeeze
|
21
|
-
from torch.nn import Conv2d, Linear, ConvTranspose2d
|
21
|
+
from torch.nn import Conv2d, Linear, ConvTranspose2d, MaxPool2d
|
22
22
|
from torch.nn import Dropout, Flatten, Hardtanh, Identity
|
23
23
|
from torch.nn import ReLU, ReLU6, PReLU, SiLU, Sigmoid, Tanh, Hardswish, LeakyReLU
|
24
24
|
from torch.nn.functional import relu, relu6, prelu, silu, hardtanh, hardswish, leaky_relu
|
@@ -83,7 +83,8 @@ def generate_pytorch_tpc(name: str, tp_model: tp.TargetPlatformModel):
|
|
83
83
|
argmax,
|
84
84
|
gather,
|
85
85
|
topk,
|
86
|
-
squeeze
|
86
|
+
squeeze,
|
87
|
+
MaxPool2d])
|
87
88
|
|
88
89
|
tp.OperationsSetToLayers("Conv", [Conv2d, ConvTranspose2d],
|
89
90
|
attr_mapping=pytorch_linear_attr_mapping)
|
@@ -18,7 +18,7 @@ import operator
|
|
18
18
|
import torch
|
19
19
|
from torch import add, sub, mul, div, flatten, reshape, split, unsqueeze, dropout, sigmoid, tanh, chunk, unbind, topk, \
|
20
20
|
gather, equal, transpose, permute, argmax, squeeze
|
21
|
-
from torch.nn import Conv2d, Linear, ConvTranspose2d
|
21
|
+
from torch.nn import Conv2d, Linear, ConvTranspose2d, MaxPool2d
|
22
22
|
from torch.nn import Dropout, Flatten, Hardtanh, Identity
|
23
23
|
from torch.nn import ReLU, ReLU6, PReLU, SiLU, Sigmoid, Tanh, Hardswish, LeakyReLU
|
24
24
|
from torch.nn.functional import relu, relu6, prelu, silu, hardtanh, hardswish, leaky_relu
|
@@ -82,7 +82,8 @@ def generate_pytorch_tpc(name: str, tp_model: tp.TargetPlatformModel):
|
|
82
82
|
argmax,
|
83
83
|
gather,
|
84
84
|
topk,
|
85
|
-
squeeze
|
85
|
+
squeeze,
|
86
|
+
MaxPool2d])
|
86
87
|
|
87
88
|
tp.OperationsSetToLayers("Conv", [Conv2d, ConvTranspose2d],
|
88
89
|
attr_mapping=pytorch_linear_attr_mapping)
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
# ==============================================================================
|
15
|
+
|
16
|
+
from model_compression_toolkit.xquant.common.xquant_config import XQuantConfig
|
17
|
+
from model_compression_toolkit.xquant.keras.facade_xquant_report import xquant_report_keras_experimental
|
18
|
+
from model_compression_toolkit.xquant.pytorch.facade_xquant_report import xquant_report_pytorch_experimental
|
19
|
+
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
|
2
|
+
# #
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
# #
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
# #
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
# ==============================================================================
|
15
|
+
#
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
# ==============================================================================
|
15
|
+
|
16
|
+
# Default similarity metric names:
|
17
|
+
CS_SIMILARITY_METRIC_NAME = 'cs'
|
18
|
+
SQNR_SIMILARITY_METRIC_NAME = 'sqnr'
|
19
|
+
MSE_SIMILARITY_METRIC_NAME = 'mse'
|
20
|
+
|
21
|
+
# Report components names:
|
22
|
+
OUTPUT_SIMILARITY_METRICS_REPR = 'output_similarity_metrics_repr'
|
23
|
+
OUTPUT_SIMILARITY_METRICS_VAL = 'output_similarity_metrics_val'
|
24
|
+
INTERMEDIATE_SIMILARITY_METRICS_REPR = 'intermediate_similarity_metrics_repr'
|
25
|
+
INTERMEDIATE_SIMILARITY_METRICS_VAL = 'intermediate_similarity_metrics_val'
|
26
|
+
|
27
|
+
# Graph attribute names:
|
28
|
+
XQUANT_REPR = 'xquant_repr'
|
29
|
+
XQUANT_VAL = 'xquant_val'
|
30
|
+
|
31
|
+
# Report file name:
|
32
|
+
REPORT_FILENAME = 'quant_report.json'
|
33
|
+
|
34
|
+
# Tag to use in tensorboard for the graph we plot:
|
35
|
+
TENSORBOARD_DEFAULT_TAG = 'xquant'
|
36
|
+
|
37
|
+
# When extracting the activations of a model we hold the output using a dedicated key:
|
38
|
+
MODEL_OUTPUT_KEY = 'model_output_key'
|
mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/core_report_generator.py
ADDED
@@ -0,0 +1,83 @@
|
|
1
|
+
# Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
# ==============================================================================
|
15
|
+
from tqdm import tqdm
|
16
|
+
from typing import Callable, Any, Dict
|
17
|
+
|
18
|
+
from model_compression_toolkit.core.common.model_collector import ModelCollector
|
19
|
+
from model_compression_toolkit.xquant import XQuantConfig
|
20
|
+
from model_compression_toolkit.xquant.common.constants import OUTPUT_SIMILARITY_METRICS_REPR, OUTPUT_SIMILARITY_METRICS_VAL, INTERMEDIATE_SIMILARITY_METRICS_REPR, \
|
21
|
+
INTERMEDIATE_SIMILARITY_METRICS_VAL
|
22
|
+
from model_compression_toolkit.xquant.common.framework_report_utils import FrameworkReportUtils
|
23
|
+
|
24
|
+
|
25
|
+
def core_report_generator(float_model: Any,
|
26
|
+
quantized_model: Any,
|
27
|
+
repr_dataset: Callable,
|
28
|
+
validation_dataset: Callable,
|
29
|
+
fw_report_utils: FrameworkReportUtils,
|
30
|
+
xquant_config: XQuantConfig) -> Dict[str, Any]:
|
31
|
+
"""
|
32
|
+
Generate report in tensorboard with a graph of the quantized model and similarity metrics that
|
33
|
+
have been measured when comparing to the float model (or any other two models).
|
34
|
+
The report also contains histograms that are collected on the baseline model (usually, the float
|
35
|
+
model).
|
36
|
+
|
37
|
+
Args:
|
38
|
+
float_model (Any): The original floating-point model.
|
39
|
+
quantized_model (Any): The model after quantization.
|
40
|
+
repr_dataset (Callable): Representative dataset used for similarity metrics computation.
|
41
|
+
validation_dataset (Callable): Validation dataset used for similarity metrics computation.
|
42
|
+
fw_report_utils (FrameworkReportUtils): Utilities for generating framework-specific reports.
|
43
|
+
xquant_config (XQuantConfig): Configuration settings for explainable quantization.
|
44
|
+
|
45
|
+
Returns:
|
46
|
+
Dict[str, Any]: A dictionary containing the collected similarity metrics and report data.
|
47
|
+
"""
|
48
|
+
# Collect histograms on the float model.
|
49
|
+
float_graph = fw_report_utils.model_folding_utils.create_float_folded_graph(float_model, repr_dataset)
|
50
|
+
mi = ModelCollector(float_graph, fw_report_utils.fw_impl, fw_report_utils.fw_info)
|
51
|
+
for _data in tqdm(repr_dataset(), desc="Collecting Histograms"):
|
52
|
+
mi.infer(_data)
|
53
|
+
|
54
|
+
# Collect histograms and add them to Tensorboard.
|
55
|
+
fw_report_utils.tb_utils.add_histograms_to_tensorboard(graph=float_graph)
|
56
|
+
|
57
|
+
# Compute similarity metrics on representative dataset and validation set.
|
58
|
+
repr_similarity = fw_report_utils.similarity_calculator.compute_similarity_metrics(float_model=float_model,
|
59
|
+
quantized_model=quantized_model,
|
60
|
+
dataset=repr_dataset,
|
61
|
+
custom_similarity_metrics=xquant_config.custom_similarity_metrics)
|
62
|
+
val_similarity = fw_report_utils.similarity_calculator.compute_similarity_metrics(float_model=float_model,
|
63
|
+
quantized_model=quantized_model,
|
64
|
+
dataset=validation_dataset,
|
65
|
+
custom_similarity_metrics=xquant_config.custom_similarity_metrics,
|
66
|
+
is_validation=True)
|
67
|
+
similarity_metrics = {
|
68
|
+
OUTPUT_SIMILARITY_METRICS_REPR: repr_similarity[0],
|
69
|
+
OUTPUT_SIMILARITY_METRICS_VAL: val_similarity[0],
|
70
|
+
INTERMEDIATE_SIMILARITY_METRICS_REPR: repr_similarity[1],
|
71
|
+
INTERMEDIATE_SIMILARITY_METRICS_VAL: val_similarity[1]
|
72
|
+
}
|
73
|
+
|
74
|
+
# Add a graph of the quantized model with the similarity metrics to TensorBoard for visualization.
|
75
|
+
fw_report_utils.tb_utils.add_graph_to_tensorboard(quantized_model,
|
76
|
+
similarity_metrics,
|
77
|
+
repr_dataset)
|
78
|
+
|
79
|
+
# Save data to a json file.
|
80
|
+
fw_report_utils.dump_report_to_json(report_dir=xquant_config.report_dir,
|
81
|
+
collected_data=similarity_metrics)
|
82
|
+
|
83
|
+
return similarity_metrics
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
# ==============================================================================
|
15
|
+
|
16
|
+
from typing import Callable
|
17
|
+
|
18
|
+
from model_compression_toolkit.logger import Logger
|
19
|
+
|
20
|
+
|
21
|
+
class DatasetUtils:
|
22
|
+
"""
|
23
|
+
Class with helpful methods for handling different kinds of datasets from the user.
|
24
|
+
"""
|
25
|
+
|
26
|
+
@staticmethod
|
27
|
+
def prepare_dataset(dataset: Callable, is_validation: bool, device: str = None):
|
28
|
+
"""
|
29
|
+
Prepare the dataset so calling it will return only inputs for the model (like in the case
|
30
|
+
of the representative dataset). For example, when the validation dataset is used, the labels
|
31
|
+
should be removed.
|
32
|
+
|
33
|
+
Args:
|
34
|
+
dataset: Dataset to prepare.
|
35
|
+
is_validation: Whether it's validation dataset or not.
|
36
|
+
device: Device to transfer the data to.
|
37
|
+
|
38
|
+
Returns:
|
39
|
+
Generator to use for retrieving the dataset inputs.
|
40
|
+
"""
|
41
|
+
|
42
|
+
Logger.critical("This method should be implemented by the framework-specific DatasetUtils.") # pragma: no cover
|
43
|
+
|
mct-nightly-2.1.0.20240618.432/model_compression_toolkit/xquant/common/framework_report_utils.py
ADDED
@@ -0,0 +1,89 @@
|
|
1
|
+
# Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
# ==============================================================================
|
15
|
+
|
16
|
+
import json
|
17
|
+
import os
|
18
|
+
|
19
|
+
from model_compression_toolkit.core.common.framework_implementation import FrameworkImplementation
|
20
|
+
from model_compression_toolkit.core.common.framework_info import FrameworkInfo
|
21
|
+
from typing import Any, Dict
|
22
|
+
|
23
|
+
from model_compression_toolkit.xquant.common.constants import REPORT_FILENAME
|
24
|
+
from model_compression_toolkit.xquant.common.dataset_utils import DatasetUtils
|
25
|
+
from model_compression_toolkit.xquant.common.model_folding_utils import ModelFoldingUtils
|
26
|
+
from model_compression_toolkit.xquant.common.similarity_calculator import SimilarityCalculator
|
27
|
+
from model_compression_toolkit.xquant.common.tensorboard_utils import TensorboardUtils
|
28
|
+
from model_compression_toolkit.logger import Logger
|
29
|
+
|
30
|
+
|
31
|
+
class FrameworkReportUtils:
|
32
|
+
"""
|
33
|
+
Class with various utility components required for generating the report in a specific framework.
|
34
|
+
"""
|
35
|
+
|
36
|
+
def __init__(self,
|
37
|
+
fw_info: FrameworkInfo,
|
38
|
+
fw_impl: FrameworkImplementation,
|
39
|
+
similarity_calculator: SimilarityCalculator,
|
40
|
+
dataset_utils: DatasetUtils,
|
41
|
+
model_folding_utils: ModelFoldingUtils,
|
42
|
+
tb_utils: TensorboardUtils):
|
43
|
+
"""
|
44
|
+
Initializes the FrameworkReportUtils class with various utility components required for generating the report.
|
45
|
+
|
46
|
+
Args:
|
47
|
+
fw_info (FrameworkInfo): Information about the framework being used.
|
48
|
+
fw_impl (FrameworkImplementation): The implemented functions of the framework.
|
49
|
+
similarity_calculator (SimilarityCalculator): A utility for calculating similarity metrics.
|
50
|
+
dataset_utils (DatasetUtils): Utilities for handling datasets.
|
51
|
+
model_folding_utils (ModelFoldingUtils): Utilities for model folding operations.
|
52
|
+
tb_utils (TensorboardUtils): Utilities for TensorBoard operations.
|
53
|
+
"""
|
54
|
+
self.fw_info = fw_info
|
55
|
+
self.fw_impl = fw_impl
|
56
|
+
self.similarity_calculator = similarity_calculator
|
57
|
+
self.dataset_utils = dataset_utils
|
58
|
+
self.model_folding_utils = model_folding_utils
|
59
|
+
self.tb_utils = tb_utils
|
60
|
+
|
61
|
+
def create_report_directory(self, dir_path: str):
|
62
|
+
"""
|
63
|
+
Create a directory for saving reports.
|
64
|
+
|
65
|
+
Args:
|
66
|
+
dir_path (str): The path to the directory to create.
|
67
|
+
|
68
|
+
"""
|
69
|
+
if not os.path.exists(dir_path):
|
70
|
+
os.makedirs(dir_path, exist_ok=True)
|
71
|
+
Logger.info(f"Directory created at: {dir_path}")
|
72
|
+
|
73
|
+
def dump_report_to_json(self,
|
74
|
+
report_dir: str,
|
75
|
+
collected_data: Dict[str, Any]):
|
76
|
+
"""
|
77
|
+
Dump the collected data (similarity, etc.) into a JSON file.
|
78
|
+
|
79
|
+
Args:
|
80
|
+
report_dir (str): Directory where the report will be saved.
|
81
|
+
collected_data (Dict[str, Any]): Data collected during report generation.
|
82
|
+
|
83
|
+
"""
|
84
|
+
report_file_name = os.path.join(report_dir, REPORT_FILENAME)
|
85
|
+
report_file_name = os.path.abspath(report_file_name)
|
86
|
+
Logger.info(f"Dumping report data to: {report_file_name}")
|
87
|
+
|
88
|
+
with open(report_file_name, 'w') as f:
|
89
|
+
json.dump(collected_data, f, indent=4)
|