mct-nightly 2.2.0.20241022.507__tar.gz → 2.2.0.20241023.504__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.
Files changed (579) hide show
  1. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/PKG-INFO +1 -1
  2. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/mct_nightly.egg-info/PKG-INFO +1 -1
  3. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/mct_nightly.egg-info/SOURCES.txt +7 -0
  4. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/__init__.py +1 -1
  5. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/framework_implementation.py +43 -29
  6. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/hessian/__init__.py +1 -1
  7. mct-nightly-2.2.0.20241023.504/model_compression_toolkit/core/common/hessian/hessian_info_service.py +305 -0
  8. mct-nightly-2.2.0.20241023.504/model_compression_toolkit/core/common/hessian/hessian_scores_request.py +76 -0
  9. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/sensitivity_evaluation.py +8 -10
  10. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/importance_metrics/lfh_importance_metric.py +11 -9
  11. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_generation/error_functions.py +10 -6
  12. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_computation.py +17 -15
  13. mct-nightly-2.2.0.20241023.504/model_compression_toolkit/core/keras/data_util.py +67 -0
  14. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/keras_implementation.py +7 -1
  15. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/tf_tensor_numpy.py +1 -1
  16. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/back2framework/pytorch_model_builder.py +1 -1
  17. mct-nightly-2.2.0.20241023.504/model_compression_toolkit/core/pytorch/data_util.py +163 -0
  18. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/hessian/activation_hessian_scores_calculator_pytorch.py +6 -31
  19. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/hessian/hessian_scores_calculator_pytorch.py +11 -21
  20. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/hessian/weights_hessian_scores_calculator_pytorch.py +9 -7
  21. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/pytorch_implementation.py +8 -2
  22. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/utils.py +22 -19
  23. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/quantization_prep_runner.py +2 -1
  24. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/runner.py +1 -2
  25. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/common/gptq_config.py +0 -2
  26. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/common/gptq_training.py +58 -114
  27. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/gptq_training.py +15 -6
  28. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/gptq_loss.py +3 -2
  29. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/gptq_training.py +97 -64
  30. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantization_facade.py +0 -2
  31. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/soft_quantizer_reg.py +4 -3
  32. mct-nightly-2.2.0.20241023.504/tests_pytest/keras/core/test_data_util.py +91 -0
  33. mct-nightly-2.2.0.20241023.504/tests_pytest/pytorch/core/__init__.py +14 -0
  34. mct-nightly-2.2.0.20241023.504/tests_pytest/pytorch/core/test_data_util.py +125 -0
  35. mct-nightly-2.2.0.20241023.504/tests_pytest/pytorch/gptq/__init__.py +14 -0
  36. mct-nightly-2.2.0.20241023.504/tests_pytest/pytorch/trainable_infrastructure/__init__.py +14 -0
  37. mct-nightly-2.2.0.20241022.507/model_compression_toolkit/core/common/hessian/hessian_info_service.py +0 -454
  38. mct-nightly-2.2.0.20241022.507/model_compression_toolkit/core/common/hessian/hessian_scores_request.py +0 -90
  39. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/LICENSE.md +0 -0
  40. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/README.md +0 -0
  41. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/mct_nightly.egg-info/dependency_links.txt +0 -0
  42. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/mct_nightly.egg-info/requires.txt +0 -0
  43. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/mct_nightly.egg-info/top_level.txt +0 -0
  44. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/constants.py +0 -0
  45. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/__init__.py +0 -0
  46. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/analyzer.py +0 -0
  47. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/__init__.py +0 -0
  48. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/back2framework/__init__.py +0 -0
  49. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/back2framework/base_model_builder.py +0 -0
  50. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/base_substitutions.py +0 -0
  51. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/collectors/__init__.py +0 -0
  52. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/collectors/base_collector.py +0 -0
  53. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/collectors/histogram_collector.py +0 -0
  54. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/collectors/mean_collector.py +0 -0
  55. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/collectors/min_max_per_channel_collector.py +0 -0
  56. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/collectors/statistics_collector.py +0 -0
  57. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/framework_info.py +0 -0
  58. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/fusion/__init__.py +0 -0
  59. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/fusion/graph_fuser.py +0 -0
  60. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/fusion/layer_fusing.py +0 -0
  61. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/__init__.py +0 -0
  62. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/base_graph.py +0 -0
  63. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/base_node.py +0 -0
  64. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/edge.py +0 -0
  65. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/functional_node.py +0 -0
  66. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/graph_matchers.py +0 -0
  67. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/graph_searches.py +0 -0
  68. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/memory_graph/__init__.py +0 -0
  69. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/memory_graph/bipartite_graph.py +0 -0
  70. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/memory_graph/compute_graph_max_cut.py +0 -0
  71. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/memory_graph/cut.py +0 -0
  72. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/memory_graph/max_cut_astar.py +0 -0
  73. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/memory_graph/memory_element.py +0 -0
  74. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/memory_graph/memory_graph.py +0 -0
  75. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/graph/virtual_activation_weights_node.py +0 -0
  76. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/hessian/hessian_info_utils.py +0 -0
  77. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/hessian/hessian_scores_calculator.py +0 -0
  78. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/matchers/__init__.py +0 -0
  79. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/matchers/base_graph_filter.py +0 -0
  80. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/matchers/base_matcher.py +0 -0
  81. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/matchers/edge_matcher.py +0 -0
  82. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/matchers/function.py +0 -0
  83. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/matchers/node_matcher.py +0 -0
  84. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/matchers/walk_matcher.py +0 -0
  85. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/memory_computation.py +0 -0
  86. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/__init__.py +0 -0
  87. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/bit_width_setter.py +0 -0
  88. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/configurable_quant_id.py +0 -0
  89. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/configurable_quantizer_utils.py +0 -0
  90. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/distance_weighting.py +0 -0
  91. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_candidates_filter.py +0 -0
  92. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_quantization_config.py +0 -0
  93. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_facade.py +0 -0
  94. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_manager.py +0 -0
  95. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/__init__.py +0 -0
  96. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization.py +0 -0
  97. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py +0 -0
  98. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_aggregation_methods.py +0 -0
  99. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_functions_mapping.py +0 -0
  100. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_methods.py +0 -0
  101. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/search_methods/__init__.py +0 -0
  102. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/search_methods/linear_programming.py +0 -0
  103. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/set_layer_to_bitwidth.py +0 -0
  104. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/mixed_precision/solution_refinement_procedure.py +0 -0
  105. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/model_builder_mode.py +0 -0
  106. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/model_collector.py +0 -0
  107. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/model_validation.py +0 -0
  108. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/network_editors/__init__.py +0 -0
  109. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/network_editors/actions.py +0 -0
  110. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/network_editors/edit_network.py +0 -0
  111. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/network_editors/node_filters.py +0 -0
  112. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/node_prior_info.py +0 -0
  113. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/__init__.py +0 -0
  114. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/channels_grouping.py +0 -0
  115. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/greedy_mask_calculator.py +0 -0
  116. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/importance_metrics/__init__.py +0 -0
  117. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/importance_metrics/base_importance_metric.py +0 -0
  118. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/importance_metrics/importance_metric_factory.py +0 -0
  119. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/mask/__init__.py +0 -0
  120. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/mask/per_channel_mask.py +0 -0
  121. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/mask/per_simd_group_mask.py +0 -0
  122. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/memory_calculator.py +0 -0
  123. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/prune_graph.py +0 -0
  124. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/pruner.py +0 -0
  125. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/pruning_config.py +0 -0
  126. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/pruning_framework_implementation.py +0 -0
  127. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/pruning_info.py +0 -0
  128. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/pruning/pruning_section.py +0 -0
  129. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/__init__.py +0 -0
  130. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/bit_width_config.py +0 -0
  131. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/candidate_node_quantization_config.py +0 -0
  132. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/core_config.py +0 -0
  133. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/debug_config.py +0 -0
  134. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/filter_nodes_candidates.py +0 -0
  135. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/node_quantization_config.py +0 -0
  136. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_config.py +0 -0
  137. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_fn_selection.py +0 -0
  138. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_fn_selection.py +0 -0
  139. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_generation/__init__.py +0 -0
  140. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_generation/lut_kmeans_params.py +0 -0
  141. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_generation/outlier_filter.py +0 -0
  142. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_generation/power_of_two_selection.py +0 -0
  143. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_activations_computation.py +0 -0
  144. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_search.py +0 -0
  145. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_weights_computation.py +0 -0
  146. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_generation/symmetric_selection.py +0 -0
  147. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantization_params_generation/uniform_selection.py +0 -0
  148. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantize_graph_weights.py +0 -0
  149. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantize_node.py +0 -0
  150. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantizers/__init__.py +0 -0
  151. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantizers/lut_kmeans_quantizer.py +0 -0
  152. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantizers/quantizers_helpers.py +0 -0
  153. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/quantizers/uniform_quantizers.py +0 -0
  154. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +0 -0
  155. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/similarity_analyzer.py +0 -0
  156. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/statistics_correction/__init__.py +0 -0
  157. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/statistics_correction/apply_bias_correction_to_graph.py +0 -0
  158. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/statistics_correction/apply_second_moment_correction_to_graph.py +0 -0
  159. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/statistics_correction/compute_bias_correction_of_graph.py +0 -0
  160. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/statistics_correction/statistics_correction.py +0 -0
  161. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/__init__.py +0 -0
  162. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/apply_substitutions.py +0 -0
  163. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/batchnorm_folding.py +0 -0
  164. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/batchnorm_reconstruction.py +0 -0
  165. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/batchnorm_refusing.py +0 -0
  166. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/linear_collapsing.py +0 -0
  167. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/linear_collapsing_substitution.py +0 -0
  168. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/remove_identity.py +0 -0
  169. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/residual_collapsing.py +0 -0
  170. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/scale_equalization.py +0 -0
  171. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/shift_negative_activation.py +0 -0
  172. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/softmax_shift.py +0 -0
  173. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/virtual_activation_weights_composition.py +0 -0
  174. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/substitutions/weights_activation_split.py +0 -0
  175. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/user_info.py +0 -0
  176. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/visualization/__init__.py +0 -0
  177. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/visualization/final_config_visualizer.py +0 -0
  178. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/visualization/nn_visualizer.py +0 -0
  179. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/common/visualization/tensorboard_writer.py +0 -0
  180. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/graph_prep_runner.py +0 -0
  181. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/__init__.py +0 -0
  182. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/back2framework/__init__.py +0 -0
  183. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/back2framework/factory_model_builder.py +0 -0
  184. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/back2framework/float_model_builder.py +0 -0
  185. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/back2framework/instance_builder.py +0 -0
  186. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/back2framework/keras_model_builder.py +0 -0
  187. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/back2framework/mixed_precision_model_builder.py +0 -0
  188. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/back2framework/quantized_model_builder.py +0 -0
  189. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/constants.py +0 -0
  190. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/custom_layer_validation.py +0 -0
  191. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/default_framework_info.py +0 -0
  192. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/__init__.py +0 -0
  193. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/__init__.py +0 -0
  194. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/activation_decomposition.py +0 -0
  195. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
  196. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
  197. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
  198. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
  199. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/conv_funcs_to_layer.py +0 -0
  200. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/dwconv_to_conv.py +0 -0
  201. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/input_scaling.py +0 -0
  202. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/linear_collapsing.py +0 -0
  203. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/matmul_substitution.py +0 -0
  204. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
  205. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
  206. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/remove_identity.py +0 -0
  207. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/residual_collapsing.py +0 -0
  208. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/scale_equalization.py +0 -0
  209. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/separableconv_decomposition.py +0 -0
  210. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
  211. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/sigmoid_mul_to_swish.py +0 -0
  212. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/softmax_shift.py +0 -0
  213. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
  214. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/weights_activation_split.py +0 -0
  215. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/hessian/__init__.py +0 -0
  216. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/hessian/activation_hessian_scores_calculator_keras.py +0 -0
  217. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/hessian/hessian_scores_calculator_keras.py +0 -0
  218. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/hessian/weights_hessian_scores_calculator_keras.py +0 -0
  219. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/keras_model_validation.py +0 -0
  220. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/keras_node_prior_info.py +0 -0
  221. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/mixed_precision/__init__.py +0 -0
  222. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/mixed_precision/configurable_activation_quantizer.py +0 -0
  223. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/mixed_precision/configurable_weights_quantizer.py +0 -0
  224. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/pruning/__init__.py +0 -0
  225. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/pruning/pruning_keras_implementation.py +0 -0
  226. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/quantizer/__init__.py +0 -0
  227. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/quantizer/fake_quant_builder.py +0 -0
  228. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/quantizer/lut_fake_quant.py +0 -0
  229. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/reader/__init__.py +0 -0
  230. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/reader/common.py +0 -0
  231. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/reader/connectivity_handler.py +0 -0
  232. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/reader/nested_model/__init__.py +0 -0
  233. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/reader/nested_model/edges_merger.py +0 -0
  234. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/reader/nested_model/nested_model_handler.py +0 -0
  235. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/reader/nested_model/nodes_merger.py +0 -0
  236. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/reader/nested_model/outputs_merger.py +0 -0
  237. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/reader/node_builder.py +0 -0
  238. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/reader/reader.py +0 -0
  239. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/resource_utilization_data_facade.py +0 -0
  240. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/statistics_correction/__init__.py +0 -0
  241. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/statistics_correction/apply_second_moment_correction.py +0 -0
  242. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/keras/visualization/__init__.py +0 -0
  243. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/__init__.py +0 -0
  244. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/back2framework/__init__.py +0 -0
  245. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/back2framework/factory_model_builder.py +0 -0
  246. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/back2framework/float_model_builder.py +0 -0
  247. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/back2framework/instance_builder.py +0 -0
  248. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/back2framework/mixed_precision_model_builder.py +0 -0
  249. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/__init__.py +0 -0
  250. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/quantized_layer_wrapper.py +0 -0
  251. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/wrapper_quantize_config.py +0 -0
  252. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/back2framework/quantized_model_builder.py +0 -0
  253. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/constants.py +0 -0
  254. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/default_framework_info.py +0 -0
  255. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/__init__.py +0 -0
  256. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/__init__.py +0 -0
  257. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
  258. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
  259. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
  260. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/concat_threshold_update.py +0 -0
  261. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/const_holder_conv.py +0 -0
  262. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_batch_norm.py +0 -0
  263. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_layer_norm.py +0 -0
  264. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/linear_collapsing.py +0 -0
  265. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
  266. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
  267. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/remove_identity.py +0 -0
  268. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/reshape_with_static_shapes.py +0 -0
  269. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/residual_collapsing.py +0 -0
  270. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scale_equalization.py +0 -0
  271. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scaled_dot_product_attention.py +0 -0
  272. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
  273. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/softmax_shift.py +0 -0
  274. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/transform_function_call_method.py +0 -0
  275. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
  276. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/weights_activation_split.py +0 -0
  277. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/hessian/__init__.py +0 -0
  278. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/mixed_precision/__init__.py +0 -0
  279. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_activation_quantizer.py +0 -0
  280. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_weights_quantizer.py +0 -0
  281. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/pruning/__init__.py +0 -0
  282. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/pruning/pruning_pytorch_implementation.py +0 -0
  283. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/pytorch_device_config.py +0 -0
  284. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/pytorch_node_prior_info.py +0 -0
  285. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/quantizer/__init__.py +0 -0
  286. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/quantizer/fake_quant_builder.py +0 -0
  287. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/quantizer/lut_fake_quant.py +0 -0
  288. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/reader/__init__.py +0 -0
  289. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/reader/graph_builders.py +0 -0
  290. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/reader/node_holders.py +0 -0
  291. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/reader/reader.py +0 -0
  292. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py +0 -0
  293. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/statistics_correction/__init__.py +0 -0
  294. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/core/pytorch/statistics_correction/apply_second_moment_correction.py +0 -0
  295. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/__init__.py +0 -0
  296. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/common/__init__.py +0 -0
  297. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/common/constants.py +0 -0
  298. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/common/data_generation.py +0 -0
  299. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/common/data_generation_config.py +0 -0
  300. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/common/enums.py +0 -0
  301. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/common/image_pipeline.py +0 -0
  302. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/common/model_info_exctractors.py +0 -0
  303. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/common/optimization_utils.py +0 -0
  304. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/__init__.py +0 -0
  305. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/constants.py +0 -0
  306. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/image_operations.py +0 -0
  307. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/image_pipeline.py +0 -0
  308. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/keras_data_generation.py +0 -0
  309. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/model_info_exctractors.py +0 -0
  310. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/optimization_functions/__init__.py +0 -0
  311. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/optimization_functions/batchnorm_alignment_functions.py +0 -0
  312. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/optimization_functions/bn_layer_weighting_functions.py +0 -0
  313. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/optimization_functions/image_initilization.py +0 -0
  314. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/optimization_functions/lr_scheduler.py +0 -0
  315. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/optimization_functions/output_loss_functions.py +0 -0
  316. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/optimization_functions/scheduler_step_functions.py +0 -0
  317. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/keras/optimization_utils.py +0 -0
  318. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/__init__.py +0 -0
  319. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/constants.py +0 -0
  320. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/image_operations.py +0 -0
  321. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/image_pipeline.py +0 -0
  322. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/model_info_exctractors.py +0 -0
  323. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/optimization_functions/__init__.py +0 -0
  324. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/optimization_functions/batchnorm_alignment_functions.py +0 -0
  325. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/optimization_functions/bn_layer_weighting_functions.py +0 -0
  326. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/optimization_functions/image_initilization.py +0 -0
  327. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/optimization_functions/lr_scheduler.py +0 -0
  328. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/optimization_functions/output_loss_functions.py +0 -0
  329. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/optimization_functions/scheduler_step_functions.py +0 -0
  330. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/optimization_utils.py +0 -0
  331. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py +0 -0
  332. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/defaultdict.py +0 -0
  333. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/__init__.py +0 -0
  334. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/__init__.py +0 -0
  335. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/__init__.py +0 -0
  336. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/exporter.py +0 -0
  337. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/quantization_format.py +0 -0
  338. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/keras/__init__.py +0 -0
  339. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/keras/base_keras_exporter.py +0 -0
  340. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/keras/export_serialization_format.py +0 -0
  341. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_keras_exporter.py +0 -0
  342. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_tflite_exporter.py +0 -0
  343. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/keras/int8_tflite_exporter.py +0 -0
  344. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py +0 -0
  345. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/keras/mctq_keras_exporter.py +0 -0
  346. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/pytorch/__init__.py +0 -0
  347. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/pytorch/base_pytorch_exporter.py +0 -0
  348. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/pytorch/export_serialization_format.py +0 -0
  349. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py +0 -0
  350. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_torchscript_pytorch_exporter.py +0 -0
  351. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py +0 -0
  352. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/__init__.py +0 -0
  353. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/__init__.py +0 -0
  354. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/get_inferable_quantizers.py +0 -0
  355. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/keras/__init__.py +0 -0
  356. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/keras/builder/__init__.py +0 -0
  357. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py +0 -0
  358. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/keras/builder/node_to_quantizer.py +0 -0
  359. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py +0 -0
  360. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/pytorch/__init__.py +0 -0
  361. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/__init__.py +0 -0
  362. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py +0 -0
  363. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/node_to_quantizer.py +0 -0
  364. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py +0 -0
  365. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/__init__.py +0 -0
  366. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/common/__init__.py +0 -0
  367. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/common/gptq_constants.py +0 -0
  368. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/common/gptq_framework_implementation.py +0 -0
  369. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/common/gptq_graph.py +0 -0
  370. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/__init__.py +0 -0
  371. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/gptq_keras_implementation.py +0 -0
  372. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/gptq_loss.py +0 -0
  373. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/graph_info.py +0 -0
  374. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantization_facade.py +0 -0
  375. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantizer/__init__.py +0 -0
  376. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py +0 -0
  377. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantizer/quant_utils.py +0 -0
  378. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantizer/quantization_builder.py +0 -0
  379. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantizer/regularization_factory.py +0 -0
  380. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/__init__.py +0 -0
  381. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
  382. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
  383. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
  384. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/__init__.py +0 -0
  385. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
  386. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/__init__.py +0 -0
  387. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/gptq_pytorch_implementation.py +0 -0
  388. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/graph_info.py +0 -0
  389. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/__init__.py +0 -0
  390. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py +0 -0
  391. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/gradual_activation_quantization.py +0 -0
  392. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/quant_utils.py +0 -0
  393. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/quantization_builder.py +0 -0
  394. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/regularization_factory.py +0 -0
  395. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/__init__.py +0 -0
  396. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
  397. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
  398. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/__init__.py +0 -0
  399. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
  400. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/gptq/runner.py +0 -0
  401. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/logger.py +0 -0
  402. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/metadata.py +0 -0
  403. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/pruning/__init__.py +0 -0
  404. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/pruning/keras/__init__.py +0 -0
  405. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/pruning/keras/pruning_facade.py +0 -0
  406. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/pruning/pytorch/__init__.py +0 -0
  407. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/pruning/pytorch/pruning_facade.py +0 -0
  408. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/ptq/__init__.py +0 -0
  409. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/ptq/keras/__init__.py +0 -0
  410. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/ptq/keras/quantization_facade.py +0 -0
  411. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/ptq/pytorch/__init__.py +0 -0
  412. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/ptq/pytorch/quantization_facade.py +0 -0
  413. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/ptq/runner.py +0 -0
  414. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/__init__.py +0 -0
  415. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/common/__init__.py +0 -0
  416. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/common/qat_config.py +0 -0
  417. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/__init__.py +0 -0
  418. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/quantization_facade.py +0 -0
  419. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/quantizer/__init__.py +0 -0
  420. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/quantizer/base_keras_qat_weight_quantizer.py +0 -0
  421. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/quantizer/lsq/__init__.py +0 -0
  422. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/quantizer/lsq/symmetric_lsq.py +0 -0
  423. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/quantizer/lsq/uniform_lsq.py +0 -0
  424. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/quantizer/quant_utils.py +0 -0
  425. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/quantizer/quantization_builder.py +0 -0
  426. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/__init__.py +0 -0
  427. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
  428. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/uniform_ste.py +0 -0
  429. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/pytorch/__init__.py +0 -0
  430. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/pytorch/quantization_facade.py +0 -0
  431. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/pytorch/quantizer/__init__.py +0 -0
  432. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_weight_quantizer.py +0 -0
  433. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/pytorch/quantizer/lsq/__init__.py +0 -0
  434. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/pytorch/quantizer/lsq/symmetric_lsq.py +0 -0
  435. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/pytorch/quantizer/lsq/uniform_lsq.py +0 -0
  436. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/pytorch/quantizer/quantization_builder.py +0 -0
  437. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/__init__.py +0 -0
  438. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
  439. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/uniform_ste.py +0 -0
  440. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/__init__.py +0 -0
  441. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/constants.py +0 -0
  442. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/immutable.py +0 -0
  443. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/__init__.py +0 -0
  444. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/current_tp_model.py +0 -0
  445. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/fusing.py +0 -0
  446. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/op_quantization_config.py +0 -0
  447. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/operators.py +0 -0
  448. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model.py +0 -0
  449. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model_component.py +0 -0
  450. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/__init__.py +0 -0
  451. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attribute_filter.py +0 -0
  452. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/current_tpc.py +0 -0
  453. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/layer_filter_params.py +0 -0
  454. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/operations_to_layers.py +0 -0
  455. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py +0 -0
  456. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities_component.py +0 -0
  457. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py +0 -0
  458. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py +0 -0
  459. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__init__.py +0 -0
  460. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py +0 -0
  461. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py +0 -0
  462. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/__init__.py +0 -0
  463. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py +0 -0
  464. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py +0 -0
  465. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_pytorch.py +0 -0
  466. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/__init__.py +0 -0
  467. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py +0 -0
  468. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py +0 -0
  469. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_pytorch.py +0 -0
  470. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/__init__.py +0 -0
  471. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py +0 -0
  472. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py +0 -0
  473. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_pytorch.py +0 -0
  474. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/__init__.py +0 -0
  475. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tp_model.py +0 -0
  476. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py +0 -0
  477. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_pytorch.py +0 -0
  478. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/__init__.py +0 -0
  479. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tp_model.py +0 -0
  480. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py +0 -0
  481. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_pytorch.py +0 -0
  482. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/__init__.py +0 -0
  483. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tp_model.py +0 -0
  484. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py +0 -0
  485. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_pytorch.py +0 -0
  486. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/__init__.py +0 -0
  487. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tp_model.py +0 -0
  488. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py +0 -0
  489. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_pytorch.py +0 -0
  490. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/__init__.py +0 -0
  491. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py +0 -0
  492. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_keras.py +0 -0
  493. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_pytorch.py +0 -0
  494. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/__init__.py +0 -0
  495. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py +0 -0
  496. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py +0 -0
  497. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/__init__.py +0 -0
  498. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tp_model.py +0 -0
  499. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_keras.py +0 -0
  500. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_pytorch.py +0 -0
  501. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__init__.py +0 -0
  502. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py +0 -0
  503. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py +0 -0
  504. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/__init__.py +0 -0
  505. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py +0 -0
  506. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_keras.py +0 -0
  507. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_pytorch.py +0 -0
  508. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/__init__.py +0 -0
  509. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/common/__init__.py +0 -0
  510. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/common/base_trainable_quantizer.py +0 -0
  511. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/common/constants.py +0 -0
  512. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/common/get_quantizer_config.py +0 -0
  513. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/common/get_quantizers.py +0 -0
  514. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/common/quant_utils.py +0 -0
  515. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/common/trainable_quantizer_config.py +0 -0
  516. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/common/training_method.py +0 -0
  517. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/__init__.py +0 -0
  518. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/__init__.py +0 -0
  519. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/base_activation_quantizer.py +0 -0
  520. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/__init__.py +0 -0
  521. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/symmetric_lsq.py +0 -0
  522. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/lsq/uniform_lsq.py +0 -0
  523. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/__init__.py +0 -0
  524. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/symmetric_ste.py +0 -0
  525. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/activation_quantizers/ste/uniform_ste.py +0 -0
  526. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py +0 -0
  527. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/config_serialization.py +0 -0
  528. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/load_model.py +0 -0
  529. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py +0 -0
  530. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/keras/quantizer_utils.py +0 -0
  531. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/__init__.py +0 -0
  532. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/__init__.py +0 -0
  533. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/base_activation_quantizer.py +0 -0
  534. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/__init__.py +0 -0
  535. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/symmetric_lsq.py +0 -0
  536. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/lsq/uniform_lsq.py +0 -0
  537. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/__init__.py +0 -0
  538. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/symmetric_ste.py +0 -0
  539. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/activation_quantizers/ste/uniform_ste.py +0 -0
  540. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/annealing_schedulers.py +0 -0
  541. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py +0 -0
  542. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/quantizer_utils.py +0 -0
  543. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/trainable_infrastructure/pytorch/util.py +0 -0
  544. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/verify_packages.py +0 -0
  545. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/__init__.py +0 -0
  546. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/common/__init__.py +0 -0
  547. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/common/constants.py +0 -0
  548. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/common/core_report_generator.py +0 -0
  549. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/common/dataset_utils.py +0 -0
  550. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/common/framework_report_utils.py +0 -0
  551. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/common/model_analyzer.py +0 -0
  552. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/common/model_folding_utils.py +0 -0
  553. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/common/similarity_calculator.py +0 -0
  554. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/common/similarity_functions.py +0 -0
  555. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/common/tensorboard_utils.py +0 -0
  556. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/common/xquant_config.py +0 -0
  557. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/keras/__init__.py +0 -0
  558. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/keras/dataset_utils.py +0 -0
  559. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/keras/facade_xquant_report.py +0 -0
  560. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/keras/keras_report_utils.py +0 -0
  561. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/keras/model_analyzer.py +0 -0
  562. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/keras/similarity_functions.py +0 -0
  563. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/keras/tensorboard_utils.py +0 -0
  564. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/pytorch/__init__.py +0 -0
  565. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/pytorch/dataset_utils.py +0 -0
  566. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/pytorch/facade_xquant_report.py +0 -0
  567. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/pytorch/model_analyzer.py +0 -0
  568. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/pytorch/pytorch_report_utils.py +0 -0
  569. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/pytorch/similarity_functions.py +0 -0
  570. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/model_compression_toolkit/xquant/pytorch/tensorboard_utils.py +0 -0
  571. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/setup.cfg +0 -0
  572. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/setup.py +0 -0
  573. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/tests_pytest/__init__.py +0 -0
  574. {mct-nightly-2.2.0.20241022.507/tests_pytest/pytorch → mct-nightly-2.2.0.20241023.504/tests_pytest/keras}/__init__.py +0 -0
  575. {mct-nightly-2.2.0.20241022.507/tests_pytest/pytorch/gptq → mct-nightly-2.2.0.20241023.504/tests_pytest/keras/core}/__init__.py +0 -0
  576. {mct-nightly-2.2.0.20241022.507/tests_pytest/pytorch/trainable_infrastructure → mct-nightly-2.2.0.20241023.504/tests_pytest/pytorch}/__init__.py +0 -0
  577. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/tests_pytest/pytorch/gptq/test_annealing_cfg.py +0 -0
  578. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/tests_pytest/pytorch/gptq/test_gradual_act_quantization.py +0 -0
  579. {mct-nightly-2.2.0.20241022.507 → mct-nightly-2.2.0.20241023.504}/tests_pytest/pytorch/trainable_infrastructure/test_linear_annealing.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mct-nightly
3
- Version: 2.2.0.20241022.507
3
+ Version: 2.2.0.20241023.504
4
4
  Summary: A Model Compression Toolkit for neural networks
5
5
  Home-page: UNKNOWN
6
6
  License: UNKNOWN
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mct-nightly
3
- Version: 2.2.0.20241022.507
3
+ Version: 2.2.0.20241023.504
4
4
  Summary: A Model Compression Toolkit for neural networks
5
5
  Home-page: UNKNOWN
6
6
  License: UNKNOWN
@@ -162,6 +162,7 @@ model_compression_toolkit/core/common/visualization/tensorboard_writer.py
162
162
  model_compression_toolkit/core/keras/__init__.py
163
163
  model_compression_toolkit/core/keras/constants.py
164
164
  model_compression_toolkit/core/keras/custom_layer_validation.py
165
+ model_compression_toolkit/core/keras/data_util.py
165
166
  model_compression_toolkit/core/keras/default_framework_info.py
166
167
  model_compression_toolkit/core/keras/keras_implementation.py
167
168
  model_compression_toolkit/core/keras/keras_model_validation.py
@@ -225,6 +226,7 @@ model_compression_toolkit/core/keras/statistics_correction/apply_second_moment_c
225
226
  model_compression_toolkit/core/keras/visualization/__init__.py
226
227
  model_compression_toolkit/core/pytorch/__init__.py
227
228
  model_compression_toolkit/core/pytorch/constants.py
229
+ model_compression_toolkit/core/pytorch/data_util.py
228
230
  model_compression_toolkit/core/pytorch/default_framework_info.py
229
231
  model_compression_toolkit/core/pytorch/pytorch_device_config.py
230
232
  model_compression_toolkit/core/pytorch/pytorch_implementation.py
@@ -561,7 +563,12 @@ model_compression_toolkit/xquant/pytorch/pytorch_report_utils.py
561
563
  model_compression_toolkit/xquant/pytorch/similarity_functions.py
562
564
  model_compression_toolkit/xquant/pytorch/tensorboard_utils.py
563
565
  tests_pytest/__init__.py
566
+ tests_pytest/keras/__init__.py
567
+ tests_pytest/keras/core/__init__.py
568
+ tests_pytest/keras/core/test_data_util.py
564
569
  tests_pytest/pytorch/__init__.py
570
+ tests_pytest/pytorch/core/__init__.py
571
+ tests_pytest/pytorch/core/test_data_util.py
565
572
  tests_pytest/pytorch/gptq/__init__.py
566
573
  tests_pytest/pytorch/gptq/test_annealing_cfg.py
567
574
  tests_pytest/pytorch/gptq/test_gradual_act_quantization.py
@@ -27,4 +27,4 @@ from model_compression_toolkit import data_generation
27
27
  from model_compression_toolkit import pruning
28
28
  from model_compression_toolkit.trainable_infrastructure.keras.load_model import keras_load_quantized_model
29
29
 
30
- __version__ = "2.2.0.20241022.000507"
30
+ __version__ = "2.2.0.20241023.000504"
@@ -13,7 +13,7 @@
13
13
  # limitations under the License.
14
14
  # ==============================================================================
15
15
  from abc import ABC, abstractmethod
16
- from typing import Callable, Any, List, Tuple, Dict
16
+ from typing import Callable, Any, List, Tuple, Dict, Generator
17
17
 
18
18
  import numpy as np
19
19
 
@@ -46,7 +46,7 @@ class FrameworkImplementation(ABC):
46
46
  Returns: Module of the framework constants.
47
47
 
48
48
  """
49
- raise NotImplemented(f'{self.__class__.__name__} did not supply a constants module.') # pragma: no cover
49
+ raise NotImplementedError(f'{self.__class__.__name__} did not supply a constants module.') # pragma: no cover
50
50
 
51
51
  @abstractmethod
52
52
  def get_hessian_scores_calculator(self,
@@ -64,7 +64,7 @@ class FrameworkImplementation(ABC):
64
64
 
65
65
  Returns: HessianScoresCalculator to use for the hessian approximation scores computation for this request.
66
66
  """
67
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
67
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
68
68
  f'framework\'s get_hessian_scores_calculator method.') # pragma: no cover
69
69
 
70
70
  @abstractmethod
@@ -77,7 +77,7 @@ class FrameworkImplementation(ABC):
77
77
  Returns:
78
78
  Numpy array converted from the input tensor.
79
79
  """
80
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
80
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
81
81
  f'framework\'s to_numpy method.') # pragma: no cover
82
82
 
83
83
  @abstractmethod
@@ -90,7 +90,7 @@ class FrameworkImplementation(ABC):
90
90
  Returns:
91
91
  Framework's tensor converted from the input Numpy array.
92
92
  """
93
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
93
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
94
94
  f'framework\'s to_tensor method.') # pragma: no cover
95
95
 
96
96
  @abstractmethod
@@ -106,7 +106,7 @@ class FrameworkImplementation(ABC):
106
106
  Returns:
107
107
  Graph representing the input model.
108
108
  """
109
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
109
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
110
110
  f'framework\'s model_reader method.') # pragma: no cover
111
111
 
112
112
  @abstractmethod
@@ -131,7 +131,7 @@ class FrameworkImplementation(ABC):
131
131
  Returns:
132
132
  A tuple with the model and additional relevant supporting objects.
133
133
  """
134
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
134
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
135
135
  f'framework\'s model_builder method.') # pragma: no cover
136
136
 
137
137
  @abstractmethod
@@ -148,7 +148,7 @@ class FrameworkImplementation(ABC):
148
148
  Returns:
149
149
  The frameworks model's output.
150
150
  """
151
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
151
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
152
152
  f'framework\'s run_model_inference method.') # pragma: no cover
153
153
 
154
154
  @abstractmethod
@@ -167,7 +167,7 @@ class FrameworkImplementation(ABC):
167
167
  Returns:
168
168
  Graph after SNC.
169
169
  """
170
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
170
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
171
171
  f'framework\'s apply_shift_negative_correction method.') # pragma: no cover
172
172
 
173
173
  @abstractmethod
@@ -184,7 +184,7 @@ class FrameworkImplementation(ABC):
184
184
  Returns:
185
185
  A list of the framework substitutions used after we collect statistics.
186
186
  """
187
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
187
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
188
188
  f'framework\'s get_substitutions_channel_equalization method.') # pragma: no cover
189
189
 
190
190
  @abstractmethod
@@ -194,7 +194,7 @@ class FrameworkImplementation(ABC):
194
194
  Returns: A list of the framework substitutions used to prepare the graph.
195
195
 
196
196
  """
197
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
197
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
198
198
  f'framework\'s get_substitutions_prepare_graph method.') # pragma: no cover
199
199
 
200
200
  @abstractmethod
@@ -208,7 +208,7 @@ class FrameworkImplementation(ABC):
208
208
  Returns: A list of the framework substitutions used before we collect statistics.
209
209
 
210
210
  """
211
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
211
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
212
212
  f'framework\'s get_substitutions_pre_statistics_collection method.') # pragma: no cover
213
213
 
214
214
  @abstractmethod
@@ -216,7 +216,7 @@ class FrameworkImplementation(ABC):
216
216
  """
217
217
  Returns: linear collapsing substitution
218
218
  """
219
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
219
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
220
220
  f'framework\'s get_linear_collapsing_substitution method.') # pragma: no cover
221
221
 
222
222
  @abstractmethod
@@ -224,7 +224,7 @@ class FrameworkImplementation(ABC):
224
224
  """
225
225
  Returns: conv2d add const collapsing substitution
226
226
  """
227
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
227
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
228
228
  f'framework\'s get_op2d_add_const_collapsing_substitution method.') # pragma: no cover
229
229
 
230
230
  @abstractmethod
@@ -239,7 +239,7 @@ class FrameworkImplementation(ABC):
239
239
  Returns:
240
240
  A list of the framework substitutions used for statistics correction.
241
241
  """
242
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
242
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
243
243
  f'framework\'s get_substitutions_statistics_correction method.') # pragma: no cover
244
244
 
245
245
  @abstractmethod
@@ -247,7 +247,7 @@ class FrameworkImplementation(ABC):
247
247
  """
248
248
  Returns: A list of the framework substitutions used for residual collapsing
249
249
  """
250
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
250
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
251
251
  f'framework\'s get_residual_collapsing_substitution method.') # pragma: no cover
252
252
 
253
253
 
@@ -263,7 +263,7 @@ class FrameworkImplementation(ABC):
263
263
  Returns:
264
264
  A list of the framework substitutions used after we collect statistics.
265
265
  """
266
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
266
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
267
267
  f'framework\'s get_substitutions_post_statistics_collection method.') # pragma: no cover
268
268
 
269
269
  @abstractmethod
@@ -272,7 +272,7 @@ class FrameworkImplementation(ABC):
272
272
  Returns: A list of Keras substitutions used to build a virtual graph with composed activation-weights pairs.
273
273
  """
274
274
 
275
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
275
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
276
276
  f'framework\'s get_substitutions_virtual_weights_activation_coupling '
277
277
  f'method.') # pragma: no cover
278
278
 
@@ -288,7 +288,7 @@ class FrameworkImplementation(ABC):
288
288
  Returns:
289
289
  A list of the framework substitutions used after we apply second moment statistics.
290
290
  """
291
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
291
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
292
292
  f'framework\'s get_substitutions_after_second_moment_correction '
293
293
  f'method.') # pragma: no cover
294
294
 
@@ -316,7 +316,7 @@ class FrameworkImplementation(ABC):
316
316
  A function that computes the metric.
317
317
  """
318
318
 
319
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
319
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
320
320
  f'framework\'s get_sensitivity_evaluator method.') # pragma: no cover
321
321
 
322
322
  def get_node_prior_info(self, node: BaseNode,
@@ -334,7 +334,7 @@ class FrameworkImplementation(ABC):
334
334
  NodePriorInfo with information about the node.
335
335
  """
336
336
 
337
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
337
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
338
338
  f'framework\'s get_node_prior_info method.') # pragma: no cover
339
339
 
340
340
  def count_node_for_mixed_precision_interest_points(self, node: BaseNode) -> bool:
@@ -345,7 +345,7 @@ class FrameworkImplementation(ABC):
345
345
  Returns: True if the node should be considered an interest point, False otherwise.
346
346
  """
347
347
 
348
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
348
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
349
349
  f'framework\'s count_node_for_mixed_precision_interest_points method.') # pragma: no cover
350
350
 
351
351
  def get_mp_node_distance_fn(self, n: BaseNode,
@@ -364,7 +364,7 @@ class FrameworkImplementation(ABC):
364
364
  Returns: A distance function between two tensors and a axis on which the distance is computed (if exists).
365
365
  """
366
366
 
367
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
367
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
368
368
  f'framework\'s get_mp_node_distance_fn method.') # pragma: no cover
369
369
 
370
370
 
@@ -381,7 +381,7 @@ class FrameworkImplementation(ABC):
381
381
 
382
382
  """
383
383
 
384
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
384
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
385
385
  f'framework\'s is_output_node_compatible_for_hessian_score_computation method.') # pragma: no cover
386
386
 
387
387
  @abstractmethod
@@ -398,7 +398,7 @@ class FrameworkImplementation(ABC):
398
398
  Returns: The MAC count of the operation
399
399
  """
400
400
 
401
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
401
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
402
402
  f'framework\'s get_node_mac_operations method.') # pragma: no cover
403
403
 
404
404
  @abstractmethod
@@ -419,7 +419,7 @@ class FrameworkImplementation(ABC):
419
419
  Returns:
420
420
  A Graph after second moment correction.
421
421
  """
422
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
422
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
423
423
  f'framework\'s apply_second_moment_correction method.') # pragma: no cover
424
424
 
425
425
  @abstractmethod
@@ -436,7 +436,7 @@ class FrameworkImplementation(ABC):
436
436
  Returns:
437
437
  The output of the model inference on the given input.
438
438
  """
439
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
439
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
440
440
  f'framework\'s sensitivity_eval_inference method.') # pragma: no cover
441
441
 
442
442
  def get_inferable_quantizers(self, node: BaseNode):
@@ -452,5 +452,19 @@ class FrameworkImplementation(ABC):
452
452
 
453
453
  """
454
454
 
455
- raise NotImplemented(f'{self.__class__.__name__} have to implement the '
456
- f'framework\'s get_inferable_quantizers method.') # pragma: no cover
455
+ raise NotImplementedError(f'{self.__class__.__name__} have to implement the '
456
+ f'framework\'s get_inferable_quantizers method.') # pragma: no cover
457
+
458
+ @staticmethod
459
+ def convert_data_gen_to_dataloader(data_gen_fn: Callable[[], Generator], batch_size: int):
460
+ """
461
+ Create DataLoader based on samples yielded by data_gen.
462
+
463
+ Args:
464
+ data_gen_fn: data generator factory.
465
+ batch_size: target batch size.
466
+
467
+ Returns:
468
+ Framework dataloader.
469
+ """
470
+ raise NotImplementedError() # pragma: no cover
@@ -13,7 +13,7 @@
13
13
  # limitations under the License.
14
14
  # ==============================================================================
15
15
  from model_compression_toolkit.core.common.hessian.hessian_scores_request import (
16
- HessianScoresRequest, HessianMode, HessianScoresGranularity, HessianEstimationDistribution
16
+ HessianScoresRequest, HessianMode, HessianScoresGranularity
17
17
  )
18
18
  from model_compression_toolkit.core.common.hessian.hessian_info_service import HessianInfoService
19
19
  import model_compression_toolkit.core.common.hessian.hessian_info_utils as hessian_utils
@@ -0,0 +1,305 @@
1
+ # Copyright 2023 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 dataclasses import dataclass
16
+ from typing import List, Dict, Tuple, TYPE_CHECKING
17
+
18
+ import numpy as np
19
+
20
+ from model_compression_toolkit.constants import HESSIAN_NUM_ITERATIONS
21
+ from model_compression_toolkit.core.common.hessian.hessian_scores_request import HessianScoresRequest, HessianMode, \
22
+ HessianScoresGranularity
23
+
24
+ if TYPE_CHECKING: # pragma: no cover
25
+ from model_compression_toolkit.core.common import BaseNode
26
+
27
+
28
+ # type hints aliases
29
+ LayerName = str
30
+ Tensor = np.ndarray
31
+
32
+
33
+ @dataclass(eq=True, frozen=True)
34
+ class Query:
35
+ """ Query key for hessians cache. """
36
+ mode: HessianMode
37
+ granularity: HessianScoresGranularity
38
+ node: LayerName
39
+
40
+
41
+ class HessianCache:
42
+ """ Hessian cache """
43
+ def __init__(self):
44
+ self._data: Dict[Query, Tensor] = {}
45
+
46
+ def update(self, layers_hessians: Dict[str, np.ndarray], request: HessianScoresRequest) -> int:
47
+ """
48
+ Updates the cache with new hessians estimations.
49
+
50
+ Note: we assume that the new hessians were computed on different samples than previously stored hessians.
51
+ If same samples were used more than once, duplicates will be stored. This can only be a problem if hessians
52
+ for the same query were computed via multiple requests and dataloader in each request yields same samples.
53
+ We cannot just filter out duplicates since in some cases we can get valid identical hessians on different
54
+ samples.
55
+
56
+ Args:
57
+ layers_hessians: a dictionary from layer names to their hessian score tensors.
58
+ request: request per which hessians were computed.
59
+
60
+ Returns:
61
+ Minimal samples count after update (among updated layers).
62
+
63
+ """
64
+ assert set(layers_hessians.keys()) == set(n.name for n in request.target_nodes)
65
+ n_nodes_samples = [] # samples count per node after update
66
+ for node_name, hess in layers_hessians.items():
67
+ query = Query(request.mode, request.granularity, node_name)
68
+ saved_hess = self._data.get(query)
69
+ new_hess = hess if saved_hess is None else np.concatenate([saved_hess, hess], axis=0)
70
+ self._data[query] = new_hess
71
+ n_nodes_samples.append(new_hess.shape[0])
72
+
73
+ return min(n_nodes_samples)
74
+
75
+ def fetch_hessian(self, request: HessianScoresRequest) -> Tuple[Dict[LayerName, Tensor], Dict[LayerName, int]]:
76
+ """
77
+ Fetch available hessians per request and identify missing samples.
78
+
79
+ Note: if fewer samples are available than requested, hessians tensor will contain the available samples.
80
+
81
+ Args:
82
+ request: hessians fetch request.
83
+
84
+ Returns:
85
+ A tuple of two dictionaries:
86
+ - A dictionary from layer name to a tensor of its hessian.
87
+ - A dictionary from layer name to a number of missing samples.
88
+ """
89
+ assert request.n_samples is not None
90
+
91
+ result = {}
92
+ missing = {}
93
+ for node in request.target_nodes:
94
+ query = Query(request.mode, request.granularity, node.name)
95
+ hess = self._data.get(query)
96
+ if hess is None:
97
+ missing[node.name] = request.n_samples
98
+ continue
99
+ n_missing = request.n_samples - hess.shape[0]
100
+ if n_missing > 0:
101
+ missing[node.name] = n_missing
102
+ result[node.name] = hess[:request.n_samples, ...]
103
+
104
+ return result, missing
105
+
106
+ def clear(self):
107
+ """ Clear the cache. """
108
+ self._data.clear()
109
+
110
+
111
+ class HessianInfoService:
112
+ """
113
+ A service to manage, store, and compute information based on the Hessian matrix approximation.
114
+
115
+ This class provides functionalities to compute information based on the Hessian matrix approximation
116
+ based on the different parameters (such as number of iterations for approximating the scores)
117
+ and input images (using representative_dataset_gen).
118
+ It also offers cache management capabilities for efficient computation and retrieval.
119
+
120
+ Note:
121
+ - The Hessian provides valuable information about the curvature of the loss function.
122
+ - Computation can be computationally heavy and time-consuming.
123
+ - The computed information is based on Hessian approximation (and not the precise Hessian matrix).
124
+ """
125
+
126
+ def __init__(self,
127
+ graph,
128
+ fw_impl,
129
+ num_iterations_for_approximation: int = HESSIAN_NUM_ITERATIONS):
130
+ """
131
+ Args:
132
+ graph: Float graph.
133
+ fw_impl: Framework-specific implementation for Hessian approximation scores computation.
134
+ num_iterations_for_approximation: the number of iterations for hessian estimation.
135
+ """
136
+ self.graph = graph
137
+ self.fw_impl = fw_impl
138
+ self.num_iterations_for_approximation = num_iterations_for_approximation
139
+ self.cache = HessianCache()
140
+
141
+ def fetch_hessian(self, request: HessianScoresRequest,
142
+ force_compute: bool = False) -> Dict[LayerName, Tensor]:
143
+ """
144
+ Fetch hessians per request.
145
+ If 'force_compute' is False, will first try to retrieve previously cached hessians. If no or not enough
146
+ hessians are found in the cache, will compute the remaining number of hessians to fulfill the request.
147
+ If 'force_compute' is True, will compute the hessians (use when you need hessians for specific inputs).
148
+
149
+ Args:
150
+ request: request per which to fetch the hessians.
151
+ force_compute: if True, will compute the hessians.
152
+ If False, will look for cached hessians first.
153
+
154
+ Returns:
155
+ A dictionary of layers' hessian tensors of shape (samples, ...). The exact shape depends on the
156
+ requested granularity.
157
+ """
158
+ if request.n_samples is None and not force_compute:
159
+ raise ValueError('Number of samples can be None only when force_compute is True.')
160
+
161
+ orig_request = request
162
+ # replace reused nodes with primary nodes
163
+ # TODO need to check if there is a bug in reuse. While this is the same layer, the compare tensors and their
164
+ # gradients are not. It seems that currently the same compare tensor of the primary node is used multiple times
165
+ target_nodes = [self._get_primary_node(n) for n in request.target_nodes]
166
+ request = request.clone(target_nodes=target_nodes)
167
+
168
+ if force_compute:
169
+ res = self._compute_hessians(request, self.num_iterations_for_approximation, count_by_cache=False)
170
+ else:
171
+ res = self._fetch_hessians_with_compute(request, self.num_iterations_for_approximation)
172
+
173
+ # restore nodes from the original request
174
+ res = {n_orig.name: res[n.name] for n_orig, n in zip(orig_request.target_nodes, request.target_nodes)}
175
+ return res
176
+
177
+ def clear_cache(self):
178
+ """ Purge the cached hessians. """
179
+ self.cache.clear()
180
+
181
+ def _fetch_hessians_with_compute(self, request: HessianScoresRequest, n_iterations: int) -> Dict[LayerName, Tensor]:
182
+ """
183
+ Fetch pre-computed hessians for the request if available. Otherwise, compute the missing hessians.
184
+
185
+ Args:
186
+ request: hessian estimation request.
187
+ n_iterations: the number of iterations for hessian estimation.
188
+
189
+ Returns:
190
+ A dictionary from layers (by name) to their hessians.
191
+ """
192
+ res, missing = self.cache.fetch_hessian(request)
193
+ if not missing:
194
+ return res
195
+
196
+ if request.data_loader is None:
197
+ raise ValueError(f'Not enough hessians are cached to fulfill the request, but data loader was not passed '
198
+ f'for additional computation. Requested {request.n_samples}, '
199
+ f'available {min(missing.values())}.')
200
+
201
+ orig_request = request
202
+ # if some hessians were found generate a new request only for missing nodes.
203
+ if res:
204
+ target_nodes = [n for n in orig_request.target_nodes if n.name in missing]
205
+ request = request.clone(target_nodes=target_nodes)
206
+ self._compute_hessians(request, n_iterations, count_by_cache=True)
207
+ res, missing = self.cache.fetch_hessian(request)
208
+ assert not missing
209
+ return res
210
+
211
+ def _compute_hessians(self, request: HessianScoresRequest,
212
+ n_iterations: int, count_by_cache: bool) -> Dict[LayerName, Tensor]:
213
+ """
214
+ Computes hessian estimation per request.
215
+
216
+ Data loader from request is used as is, i.e. it should reflect the required batch size (e.g. if
217
+ hessians should be estimated sample by sample, the data loader should yield a single sample at a time).
218
+
219
+ NOTE: the returned value only contains hessians that were computed here, which may differ from the requested
220
+ number of samples. It's only intended for use when you specifically need sample-wise hessians for the
221
+ samples in the request.
222
+
223
+ Args:
224
+ request: hessian estimation request.
225
+ n_iterations: the number of iterations for hessian estimation.
226
+ count_by_cache: if True, computes hessians until the cache contains the requested number of samples.
227
+ if False, computes hessian for the first requested number of sample in the dataloader.
228
+ Returns:
229
+ A dictionary from layers (by name) to their hessian tensors that *were computed in this invocation*.
230
+ First axis corresponds to samples in the order determined by the data loader.
231
+ """
232
+ if count_by_cache:
233
+ assert request.n_samples is not None
234
+
235
+ n_samples = 0
236
+ hess_per_layer = []
237
+ for batch in request.data_loader:
238
+ batch_hess_per_layer = self._compute_hessian_for_batch(request, batch, n_iterations)
239
+ hess_per_layer.append(batch_hess_per_layer)
240
+ min_count = self.cache.update(batch_hess_per_layer, request)
241
+ n_samples = min_count if count_by_cache else (n_samples + batch[0].shape[0])
242
+ if request.n_samples and n_samples >= request.n_samples:
243
+ break
244
+
245
+ hess_per_layer = {
246
+ layer.name: np.concatenate([hess[layer.name] for hess in hess_per_layer], axis=0)
247
+ for layer in request.target_nodes
248
+ }
249
+
250
+ if request.n_samples:
251
+ if n_samples < request.n_samples:
252
+ raise ValueError(f'Could not compute the requested number of Hessians ({request.n_samples}), '
253
+ f'not enough samples in the provided representative dataset.')
254
+
255
+ if n_samples > request.n_samples:
256
+ hess_per_layer = {
257
+ layer: hess[:request.n_samples, ...] for layer, hess in hess_per_layer.items()
258
+ }
259
+ return hess_per_layer
260
+
261
+ def _compute_hessian_for_batch(self,
262
+ request: HessianScoresRequest,
263
+ inputs_batch: List[Tensor],
264
+ n_iterations: int) -> Dict[LayerName, Tensor]:
265
+ """
266
+ Use hessian score calculator to compute hessian approximations for a batch of inputs.
267
+
268
+ Args:
269
+ request: hessian estimation request.
270
+ inputs_batch: a batch of inputs to estimate hessians on.
271
+ n_iterations: the number of iterations for hessian estimation.
272
+
273
+ Returns:
274
+ A dictionary from layers (by name) to their hessians.
275
+ """
276
+ fw_hessian_calculator = self.fw_impl.get_hessian_scores_calculator(
277
+ graph=self.graph,
278
+ input_images=inputs_batch,
279
+ hessian_scores_request=request,
280
+ num_iterations_for_approximation=n_iterations
281
+ )
282
+
283
+ hessian_scores: list = fw_hessian_calculator.compute()
284
+
285
+ layers_hessian_scores = {
286
+ layer.name: score for layer, score in zip(request.target_nodes, hessian_scores)
287
+ }
288
+ return layers_hessian_scores
289
+
290
+ def _get_primary_node(self, node: 'BaseNode') -> 'BaseNode':
291
+ """
292
+ Get node's primary node that it reuses, or itself if not reused.
293
+
294
+ Args:
295
+ node: node's object to get its primary node.
296
+
297
+ Returns:
298
+ Node's primary node.
299
+ """
300
+ if node.reuse is False:
301
+ return node
302
+
303
+ father_nodes = [n for n in self.graph.nodes if not n.reuse and n.reuse_group == node.reuse_group]
304
+ assert len(father_nodes) == 1
305
+ return father_nodes[0]