mct-nightly 2.0.0.20240409.404__tar.gz → 2.0.0.20240411.406__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 (483) hide show
  1. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/PKG-INFO +1 -1
  2. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/mct_nightly.egg-info/PKG-INFO +1 -1
  3. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/mct_nightly.egg-info/SOURCES.txt +2 -0
  4. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/__init__.py +1 -1
  5. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/node_quantization_config.py +2 -1
  6. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_config.py +3 -1
  7. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_computation.py +2 -2
  8. mct-nightly-2.0.0.20240411.406/model_compression_toolkit/core/keras/graph_substitutions/substitutions/concat_threshold_update.py +66 -0
  9. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/keras_implementation.py +6 -3
  10. mct-nightly-2.0.0.20240411.406/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/concat_threshold_update.py +69 -0
  11. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/pytorch_implementation.py +4 -0
  12. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py +1 -1
  13. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py +1 -1
  14. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/gptq_training.py +17 -15
  15. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantizer/regularization_factory.py +2 -1
  16. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/gptq_training.py +18 -16
  17. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantizer/regularization_factory.py +2 -1
  18. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/LICENSE.md +0 -0
  19. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/README.md +0 -0
  20. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/mct_nightly.egg-info/dependency_links.txt +0 -0
  21. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/mct_nightly.egg-info/requires.txt +0 -0
  22. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/mct_nightly.egg-info/top_level.txt +0 -0
  23. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/constants.py +0 -0
  24. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/__init__.py +0 -0
  25. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/analyzer.py +0 -0
  26. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/__init__.py +0 -0
  27. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/back2framework/__init__.py +0 -0
  28. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/back2framework/base_model_builder.py +0 -0
  29. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/base_substitutions.py +0 -0
  30. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/collectors/__init__.py +0 -0
  31. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/collectors/base_collector.py +0 -0
  32. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/collectors/histogram_collector.py +0 -0
  33. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/collectors/mean_collector.py +0 -0
  34. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/collectors/min_max_per_channel_collector.py +0 -0
  35. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/collectors/statistics_collector.py +0 -0
  36. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/framework_implementation.py +0 -0
  37. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/framework_info.py +0 -0
  38. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/fusion/__init__.py +0 -0
  39. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/fusion/layer_fusing.py +0 -0
  40. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/__init__.py +0 -0
  41. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/base_graph.py +0 -0
  42. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/base_node.py +0 -0
  43. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/edge.py +0 -0
  44. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/functional_node.py +0 -0
  45. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/graph_matchers.py +0 -0
  46. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/graph_searches.py +0 -0
  47. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/memory_graph/__init__.py +0 -0
  48. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/memory_graph/bipartite_graph.py +0 -0
  49. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/memory_graph/compute_graph_max_cut.py +0 -0
  50. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/memory_graph/cut.py +0 -0
  51. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/memory_graph/max_cut_astar.py +0 -0
  52. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/memory_graph/memory_element.py +0 -0
  53. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/memory_graph/memory_graph.py +0 -0
  54. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/graph/virtual_activation_weights_node.py +0 -0
  55. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/hessian/__init__.py +0 -0
  56. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/hessian/hessian_info_service.py +0 -0
  57. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/hessian/hessian_info_utils.py +0 -0
  58. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/hessian/trace_hessian_calculator.py +0 -0
  59. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/hessian/trace_hessian_request.py +0 -0
  60. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/matchers/__init__.py +0 -0
  61. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/matchers/base_graph_filter.py +0 -0
  62. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/matchers/base_matcher.py +0 -0
  63. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/matchers/edge_matcher.py +0 -0
  64. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/matchers/function.py +0 -0
  65. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/matchers/node_matcher.py +0 -0
  66. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/matchers/walk_matcher.py +0 -0
  67. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/memory_computation.py +0 -0
  68. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/__init__.py +0 -0
  69. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/bit_width_setter.py +0 -0
  70. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/configurable_quant_id.py +0 -0
  71. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/configurable_quantizer_utils.py +0 -0
  72. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/distance_weighting.py +0 -0
  73. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_quantization_config.py +0 -0
  74. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_facade.py +0 -0
  75. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/mixed_precision_search_manager.py +0 -0
  76. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/__init__.py +0 -0
  77. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization.py +0 -0
  78. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/resource_utilization_data.py +0 -0
  79. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_aggregation_methods.py +0 -0
  80. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_functions_mapping.py +0 -0
  81. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/resource_utilization_tools/ru_methods.py +0 -0
  82. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/search_methods/__init__.py +0 -0
  83. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/search_methods/linear_programming.py +0 -0
  84. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/sensitivity_evaluation.py +0 -0
  85. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/set_layer_to_bitwidth.py +0 -0
  86. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/mixed_precision/solution_refinement_procedure.py +0 -0
  87. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/model_builder_mode.py +0 -0
  88. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/model_collector.py +0 -0
  89. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/model_validation.py +0 -0
  90. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/network_editors/__init__.py +0 -0
  91. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/network_editors/actions.py +0 -0
  92. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/network_editors/edit_network.py +0 -0
  93. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/network_editors/node_filters.py +0 -0
  94. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/node_prior_info.py +0 -0
  95. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/__init__.py +0 -0
  96. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/channels_grouping.py +0 -0
  97. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/greedy_mask_calculator.py +0 -0
  98. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/importance_metrics/__init__.py +0 -0
  99. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/importance_metrics/base_importance_metric.py +0 -0
  100. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/importance_metrics/importance_metric_factory.py +0 -0
  101. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/importance_metrics/lfh_importance_metric.py +0 -0
  102. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/mask/__init__.py +0 -0
  103. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/mask/per_channel_mask.py +0 -0
  104. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/mask/per_simd_group_mask.py +0 -0
  105. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/memory_calculator.py +0 -0
  106. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/prune_graph.py +0 -0
  107. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/pruner.py +0 -0
  108. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/pruning_config.py +0 -0
  109. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/pruning_framework_implementation.py +0 -0
  110. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/pruning_info.py +0 -0
  111. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/pruning/pruning_section.py +0 -0
  112. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/__init__.py +0 -0
  113. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/candidate_node_quantization_config.py +0 -0
  114. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/core_config.py +0 -0
  115. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/debug_config.py +0 -0
  116. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/filter_nodes_candidates.py +0 -0
  117. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_fn_selection.py +0 -0
  118. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_fn_selection.py +0 -0
  119. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_generation/__init__.py +0 -0
  120. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_generation/error_functions.py +0 -0
  121. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_generation/lut_kmeans_params.py +0 -0
  122. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_generation/outlier_filter.py +0 -0
  123. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_generation/power_of_two_selection.py +0 -0
  124. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_activations_computation.py +0 -0
  125. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_search.py +0 -0
  126. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_generation/qparams_weights_computation.py +0 -0
  127. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_generation/symmetric_selection.py +0 -0
  128. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantization_params_generation/uniform_selection.py +0 -0
  129. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantize_graph_weights.py +0 -0
  130. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantize_node.py +0 -0
  131. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantizers/__init__.py +0 -0
  132. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantizers/lut_kmeans_quantizer.py +0 -0
  133. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantizers/quantizers_helpers.py +0 -0
  134. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/quantizers/uniform_quantizers.py +0 -0
  135. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/quantization/set_node_quantization_config.py +0 -0
  136. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/similarity_analyzer.py +0 -0
  137. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/statistics_correction/__init__.py +0 -0
  138. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/statistics_correction/apply_bias_correction_to_graph.py +0 -0
  139. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/statistics_correction/apply_second_moment_correction_to_graph.py +0 -0
  140. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/statistics_correction/compute_bias_correction_of_graph.py +0 -0
  141. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/statistics_correction/statistics_correction.py +0 -0
  142. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/__init__.py +0 -0
  143. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/apply_substitutions.py +0 -0
  144. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/batchnorm_folding.py +0 -0
  145. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/batchnorm_reconstruction.py +0 -0
  146. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/batchnorm_refusing.py +0 -0
  147. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/linear_collapsing.py +0 -0
  148. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/linear_collapsing_substitution.py +0 -0
  149. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/residual_collapsing.py +0 -0
  150. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/scale_equalization.py +0 -0
  151. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/shift_negative_activation.py +0 -0
  152. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/softmax_shift.py +0 -0
  153. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/virtual_activation_weights_composition.py +0 -0
  154. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/substitutions/weights_activation_split.py +0 -0
  155. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/user_info.py +0 -0
  156. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/visualization/__init__.py +0 -0
  157. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/visualization/final_config_visualizer.py +0 -0
  158. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/visualization/nn_visualizer.py +0 -0
  159. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/common/visualization/tensorboard_writer.py +0 -0
  160. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/graph_prep_runner.py +0 -0
  161. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/__init__.py +0 -0
  162. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/back2framework/__init__.py +0 -0
  163. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/back2framework/factory_model_builder.py +0 -0
  164. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/back2framework/float_model_builder.py +0 -0
  165. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/back2framework/instance_builder.py +0 -0
  166. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/back2framework/keras_model_builder.py +0 -0
  167. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/back2framework/mixed_precision_model_builder.py +0 -0
  168. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/back2framework/quantized_model_builder.py +0 -0
  169. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/constants.py +0 -0
  170. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/custom_layer_validation.py +0 -0
  171. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/default_framework_info.py +0 -0
  172. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/__init__.py +0 -0
  173. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/__init__.py +0 -0
  174. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/activation_decomposition.py +0 -0
  175. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
  176. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
  177. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
  178. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/dwconv_to_conv.py +0 -0
  179. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/input_scaling.py +0 -0
  180. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/linear_collapsing.py +0 -0
  181. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/matmul_substitution.py +0 -0
  182. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
  183. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
  184. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/residual_collapsing.py +0 -0
  185. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/scale_equalization.py +0 -0
  186. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/separableconv_decomposition.py +0 -0
  187. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
  188. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/softmax_shift.py +0 -0
  189. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
  190. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/graph_substitutions/substitutions/weights_activation_split.py +0 -0
  191. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/hessian/__init__.py +0 -0
  192. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/hessian/activation_trace_hessian_calculator_keras.py +0 -0
  193. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/hessian/trace_hessian_calculator_keras.py +0 -0
  194. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/hessian/weights_trace_hessian_calculator_keras.py +0 -0
  195. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/keras_model_validation.py +0 -0
  196. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/keras_node_prior_info.py +0 -0
  197. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/mixed_precision/__init__.py +0 -0
  198. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/mixed_precision/configurable_activation_quantizer.py +0 -0
  199. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/mixed_precision/configurable_weights_quantizer.py +0 -0
  200. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/pruning/__init__.py +0 -0
  201. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/pruning/pruning_keras_implementation.py +0 -0
  202. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/quantizer/__init__.py +0 -0
  203. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/quantizer/base_quantizer.py +0 -0
  204. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/quantizer/fake_quant_builder.py +0 -0
  205. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/quantizer/lut_fake_quant.py +0 -0
  206. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/reader/__init__.py +0 -0
  207. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/reader/common.py +0 -0
  208. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/reader/connectivity_handler.py +0 -0
  209. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/reader/nested_model/__init__.py +0 -0
  210. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/reader/nested_model/edges_merger.py +0 -0
  211. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/reader/nested_model/nested_model_handler.py +0 -0
  212. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/reader/nested_model/nodes_merger.py +0 -0
  213. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/reader/nested_model/outputs_merger.py +0 -0
  214. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/reader/node_builder.py +0 -0
  215. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/reader/reader.py +0 -0
  216. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/resource_utilization_data_facade.py +0 -0
  217. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/statistics_correction/__init__.py +0 -0
  218. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/statistics_correction/apply_second_moment_correction.py +0 -0
  219. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/tf_tensor_numpy.py +0 -0
  220. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/keras/visualization/__init__.py +0 -0
  221. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/__init__.py +0 -0
  222. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/back2framework/__init__.py +0 -0
  223. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/back2framework/factory_model_builder.py +0 -0
  224. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/back2framework/float_model_builder.py +0 -0
  225. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/back2framework/instance_builder.py +0 -0
  226. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/back2framework/mixed_precision_model_builder.py +0 -0
  227. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/back2framework/pytorch_model_builder.py +0 -0
  228. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/__init__.py +0 -0
  229. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/quantized_layer_wrapper.py +0 -0
  230. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/back2framework/quantization_wrapper/wrapper_quantize_config.py +0 -0
  231. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/back2framework/quantized_model_builder.py +0 -0
  232. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/constants.py +0 -0
  233. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/default_framework_info.py +0 -0
  234. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/__init__.py +0 -0
  235. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/__init__.py +0 -0
  236. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_folding.py +0 -0
  237. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_reconstruction.py +0 -0
  238. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_refusing.py +0 -0
  239. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/const_holder_conv.py +0 -0
  240. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_batch_norm.py +0 -0
  241. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_layer_norm.py +0 -0
  242. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/linear_collapsing.py +0 -0
  243. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/multi_head_attention_decomposition.py +0 -0
  244. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/permute_call_method.py +0 -0
  245. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/relu_bound_to_power_of_2.py +0 -0
  246. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/reshape_with_static_shapes.py +0 -0
  247. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/residual_collapsing.py +0 -0
  248. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/scale_equalization.py +0 -0
  249. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/shift_negative_activation.py +0 -0
  250. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/softmax_shift.py +0 -0
  251. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/virtual_activation_weights_composition.py +0 -0
  252. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/weights_activation_split.py +0 -0
  253. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/hessian/__init__.py +0 -0
  254. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/hessian/activation_trace_hessian_calculator_pytorch.py +0 -0
  255. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/hessian/trace_hessian_calculator_pytorch.py +0 -0
  256. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/hessian/weights_trace_hessian_calculator_pytorch.py +0 -0
  257. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/mixed_precision/__init__.py +0 -0
  258. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_activation_quantizer.py +0 -0
  259. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/mixed_precision/configurable_weights_quantizer.py +0 -0
  260. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/pruning/__init__.py +0 -0
  261. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/pruning/pruning_pytorch_implementation.py +0 -0
  262. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/pytorch_device_config.py +0 -0
  263. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/pytorch_node_prior_info.py +0 -0
  264. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/quantizer/__init__.py +0 -0
  265. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/quantizer/fake_quant_builder.py +0 -0
  266. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/quantizer/lut_fake_quant.py +0 -0
  267. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/reader/__init__.py +0 -0
  268. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/reader/graph_builders.py +0 -0
  269. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/reader/node_holders.py +0 -0
  270. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/reader/reader.py +0 -0
  271. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py +0 -0
  272. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/statistics_correction/__init__.py +0 -0
  273. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/statistics_correction/apply_second_moment_correction.py +0 -0
  274. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/pytorch/utils.py +0 -0
  275. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/quantization_prep_runner.py +0 -0
  276. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/core/runner.py +0 -0
  277. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/__init__.py +0 -0
  278. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/common/__init__.py +0 -0
  279. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/common/constants.py +0 -0
  280. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/common/data_generation.py +0 -0
  281. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/common/data_generation_config.py +0 -0
  282. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/common/enums.py +0 -0
  283. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/common/image_pipeline.py +0 -0
  284. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/common/model_info_exctractors.py +0 -0
  285. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/common/optimization_utils.py +0 -0
  286. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/__init__.py +0 -0
  287. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/constants.py +0 -0
  288. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/image_pipeline.py +0 -0
  289. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/keras_data_generation.py +0 -0
  290. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/model_info_exctractors.py +0 -0
  291. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/optimization_functions/__init__.py +0 -0
  292. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/optimization_functions/batchnorm_alignment_functions.py +0 -0
  293. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/optimization_functions/bn_layer_weighting_functions.py +0 -0
  294. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/optimization_functions/image_initilization.py +0 -0
  295. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/optimization_functions/output_loss_functions.py +0 -0
  296. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/optimization_functions/scheduler_step_functions.py +0 -0
  297. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/keras/optimization_utils.py +0 -0
  298. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/__init__.py +0 -0
  299. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/constants.py +0 -0
  300. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/image_pipeline.py +0 -0
  301. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/model_info_exctractors.py +0 -0
  302. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/optimization_functions/__init__.py +0 -0
  303. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/optimization_functions/batchnorm_alignment_functions.py +0 -0
  304. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/optimization_functions/bn_layer_weighting_functions.py +0 -0
  305. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/optimization_functions/image_initilization.py +0 -0
  306. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/optimization_functions/output_loss_functions.py +0 -0
  307. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/optimization_functions/scheduler_step_functions.py +0 -0
  308. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/optimization_utils.py +0 -0
  309. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py +0 -0
  310. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/defaultdict.py +0 -0
  311. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/__init__.py +0 -0
  312. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/__init__.py +0 -0
  313. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/__init__.py +0 -0
  314. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/exporter.py +0 -0
  315. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/fw_agonstic/quantization_format.py +0 -0
  316. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/keras/__init__.py +0 -0
  317. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/keras/base_keras_exporter.py +0 -0
  318. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/keras/export_serialization_format.py +0 -0
  319. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_keras_exporter.py +0 -0
  320. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/keras/fakely_quant_tflite_exporter.py +0 -0
  321. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/keras/int8_tflite_exporter.py +0 -0
  322. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py +0 -0
  323. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/keras/mctq_keras_exporter.py +0 -0
  324. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/pytorch/__init__.py +0 -0
  325. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/pytorch/base_pytorch_exporter.py +0 -0
  326. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/pytorch/export_serialization_format.py +0 -0
  327. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py +0 -0
  328. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_torchscript_pytorch_exporter.py +0 -0
  329. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py +0 -0
  330. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/__init__.py +0 -0
  331. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/__init__.py +0 -0
  332. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/fw_agnostic/get_inferable_quantizers.py +0 -0
  333. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/keras/__init__.py +0 -0
  334. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/keras/builder/__init__.py +0 -0
  335. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/keras/builder/node_to_quantizer.py +0 -0
  336. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py +0 -0
  337. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/pytorch/__init__.py +0 -0
  338. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/__init__.py +0 -0
  339. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/pytorch/builder/node_to_quantizer.py +0 -0
  340. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py +0 -0
  341. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/__init__.py +0 -0
  342. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/common/__init__.py +0 -0
  343. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/common/gptq_config.py +0 -0
  344. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/common/gptq_constants.py +0 -0
  345. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/common/gptq_framework_implementation.py +0 -0
  346. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/common/gptq_graph.py +0 -0
  347. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/common/gptq_training.py +0 -0
  348. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/__init__.py +0 -0
  349. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/gptq_keras_implementation.py +0 -0
  350. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/gptq_loss.py +0 -0
  351. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/graph_info.py +0 -0
  352. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantization_facade.py +0 -0
  353. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantizer/__init__.py +0 -0
  354. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py +0 -0
  355. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantizer/quant_utils.py +0 -0
  356. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantizer/quantization_builder.py +0 -0
  357. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/__init__.py +0 -0
  358. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
  359. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
  360. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
  361. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/__init__.py +0 -0
  362. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
  363. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/__init__.py +0 -0
  364. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/gptq_loss.py +0 -0
  365. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/gptq_pytorch_implementation.py +0 -0
  366. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/graph_info.py +0 -0
  367. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantization_facade.py +0 -0
  368. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantizer/__init__.py +0 -0
  369. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py +0 -0
  370. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantizer/quant_utils.py +0 -0
  371. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantizer/quantization_builder.py +0 -0
  372. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/__init__.py +0 -0
  373. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/soft_quantizer_reg.py +0 -0
  374. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/symmetric_soft_quantizer.py +0 -0
  375. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantizer/soft_rounding/uniform_soft_quantizer.py +0 -0
  376. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/__init__.py +0 -0
  377. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
  378. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/gptq/runner.py +0 -0
  379. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/logger.py +0 -0
  380. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/pruning/__init__.py +0 -0
  381. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/pruning/keras/__init__.py +0 -0
  382. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/pruning/keras/pruning_facade.py +0 -0
  383. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/pruning/pytorch/__init__.py +0 -0
  384. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/pruning/pytorch/pruning_facade.py +0 -0
  385. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/ptq/__init__.py +0 -0
  386. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/ptq/keras/__init__.py +0 -0
  387. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/ptq/keras/quantization_facade.py +0 -0
  388. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/ptq/pytorch/__init__.py +0 -0
  389. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/ptq/pytorch/quantization_facade.py +0 -0
  390. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/ptq/runner.py +0 -0
  391. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/__init__.py +0 -0
  392. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/common/__init__.py +0 -0
  393. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/common/qat_config.py +0 -0
  394. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/__init__.py +0 -0
  395. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/quantization_facade.py +0 -0
  396. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/quantizer/__init__.py +0 -0
  397. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/quantizer/base_keras_qat_quantizer.py +0 -0
  398. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/quantizer/lsq/__init__.py +0 -0
  399. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/quantizer/lsq/symmetric_lsq.py +0 -0
  400. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/quantizer/lsq/uniform_lsq.py +0 -0
  401. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/quantizer/quant_utils.py +0 -0
  402. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/quantizer/quantization_builder.py +0 -0
  403. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/__init__.py +0 -0
  404. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/symmetric_ste.py +0 -0
  405. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/keras/quantizer/ste_rounding/uniform_ste.py +0 -0
  406. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/__init__.py +0 -0
  407. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/quantization_facade.py +0 -0
  408. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/quantizer/__init__.py +0 -0
  409. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_quantizer.py +0 -0
  410. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/quantizer/lsq/__init__.py +0 -0
  411. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/quantizer/lsq/symmetric_lsq.py +0 -0
  412. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/quantizer/lsq/uniform_lsq.py +0 -0
  413. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/quantizer/quantization_builder.py +0 -0
  414. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/quantizer/quantizer_utils.py +0 -0
  415. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/__init__.py +0 -0
  416. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/symmetric_ste.py +0 -0
  417. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/qat/pytorch/quantizer/ste_rounding/uniform_ste.py +0 -0
  418. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/__init__.py +0 -0
  419. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/constants.py +0 -0
  420. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/immutable.py +0 -0
  421. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/__init__.py +0 -0
  422. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/current_tp_model.py +0 -0
  423. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/fusing.py +0 -0
  424. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/op_quantization_config.py +0 -0
  425. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/operators.py +0 -0
  426. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model.py +0 -0
  427. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/target_platform_model_component.py +0 -0
  428. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/__init__.py +0 -0
  429. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/attribute_filter.py +0 -0
  430. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/current_tpc.py +0 -0
  431. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/layer_filter_params.py +0 -0
  432. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/operations_to_layers.py +0 -0
  433. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities.py +0 -0
  434. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/target_platform/targetplatform2framework/target_platform_capabilities_component.py +0 -0
  435. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/__init__.py +0 -0
  436. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/get_target_platform_capabilities.py +0 -0
  437. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/__init__.py +0 -0
  438. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py +0 -0
  439. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py +0 -0
  440. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/__init__.py +0 -0
  441. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tp_model.py +0 -0
  442. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py +0 -0
  443. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_pytorch.py +0 -0
  444. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/__init__.py +0 -0
  445. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tp_model.py +0 -0
  446. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py +0 -0
  447. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_pytorch.py +0 -0
  448. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/__init__.py +0 -0
  449. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tp_model.py +0 -0
  450. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py +0 -0
  451. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_pytorch.py +0 -0
  452. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/__init__.py +0 -0
  453. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py +0 -0
  454. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py +0 -0
  455. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/__init__.py +0 -0
  456. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tp_model.py +0 -0
  457. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_keras.py +0 -0
  458. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/v1/tpc_pytorch.py +0 -0
  459. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/__init__.py +0 -0
  460. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py +0 -0
  461. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py +0 -0
  462. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/__init__.py +0 -0
  463. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tp_model.py +0 -0
  464. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_keras.py +0 -0
  465. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/v1/tpc_pytorch.py +0 -0
  466. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/__init__.py +0 -0
  467. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/common/__init__.py +0 -0
  468. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/common/base_trainable_quantizer.py +0 -0
  469. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/common/constants.py +0 -0
  470. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/common/get_quantizer_config.py +0 -0
  471. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/common/get_quantizers.py +0 -0
  472. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/common/quant_utils.py +0 -0
  473. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/common/trainable_quantizer_config.py +0 -0
  474. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/keras/__init__.py +0 -0
  475. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py +0 -0
  476. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/keras/config_serialization.py +0 -0
  477. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/keras/load_model.py +0 -0
  478. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py +0 -0
  479. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/keras/quantizer_utils.py +0 -0
  480. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/pytorch/__init__.py +0 -0
  481. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py +0 -0
  482. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/setup.cfg +0 -0
  483. {mct-nightly-2.0.0.20240409.404 → mct-nightly-2.0.0.20240411.406}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mct-nightly
3
- Version: 2.0.0.20240409.404
3
+ Version: 2.0.0.20240411.406
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.0.0.20240409.404
3
+ Version: 2.0.0.20240411.406
4
4
  Summary: A Model Compression Toolkit for neural networks
5
5
  Home-page: UNKNOWN
6
6
  License: UNKNOWN
@@ -175,6 +175,7 @@ model_compression_toolkit/core/keras/graph_substitutions/substitutions/activatio
175
175
  model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_folding.py
176
176
  model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_reconstruction.py
177
177
  model_compression_toolkit/core/keras/graph_substitutions/substitutions/batchnorm_refusing.py
178
+ model_compression_toolkit/core/keras/graph_substitutions/substitutions/concat_threshold_update.py
178
179
  model_compression_toolkit/core/keras/graph_substitutions/substitutions/dwconv_to_conv.py
179
180
  model_compression_toolkit/core/keras/graph_substitutions/substitutions/input_scaling.py
180
181
  model_compression_toolkit/core/keras/graph_substitutions/substitutions/linear_collapsing.py
@@ -237,6 +238,7 @@ model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/__init_
237
238
  model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_folding.py
238
239
  model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_reconstruction.py
239
240
  model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/batchnorm_refusing.py
241
+ model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/concat_threshold_update.py
240
242
  model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/const_holder_conv.py
241
243
  model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_batch_norm.py
242
244
  model_compression_toolkit/core/pytorch/graph_substitutions/substitutions/functional_layer_norm.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.0.0.20240409.000404"
30
+ __version__ = "2.0.0.20240411.000406"
@@ -106,6 +106,7 @@ class NodeActivationQuantizationConfig(BaseNodeQuantizationConfig):
106
106
  self.z_threshold = qc.z_threshold
107
107
  self.shift_negative_ratio = qc.shift_negative_ratio
108
108
  self.shift_negative_threshold_recalculation = qc.shift_negative_threshold_recalculation
109
+ self.concat_threshold_update = qc.concat_threshold_update
109
110
 
110
111
  def quantize_node_output(self,
111
112
  tensors: Any) -> Any:
@@ -219,7 +220,7 @@ class NodeActivationQuantizationConfig(BaseNodeQuantizationConfig):
219
220
  self.shift_negative_activation_correction == other.shift_negative_activation_correction and \
220
221
  self.z_threshold == other.z_threshold and \
221
222
  self.shift_negative_ratio == other.shift_negative_ratio and \
222
- self.shift_negative_threshold_recalculation == other.shift_negative_threshold_recalculation
223
+ self.shift_negative_threshold_recalculation == other.shift_negative_threshold_recalculation
223
224
 
224
225
  def __hash__(self):
225
226
  return hash((self.activation_quantization_fn,
@@ -62,7 +62,8 @@ class QuantizationConfig:
62
62
  residual_collapsing: bool = True,
63
63
  shift_negative_ratio: float = 0.05,
64
64
  shift_negative_threshold_recalculation: bool = False,
65
- shift_negative_params_search: bool = False):
65
+ shift_negative_params_search: bool = False,
66
+ concat_threshold_update: bool = False):
66
67
  """
67
68
  Class to wrap all different parameters the library quantize the input model according to.
68
69
 
@@ -117,6 +118,7 @@ class QuantizationConfig:
117
118
  self.shift_negative_ratio = shift_negative_ratio
118
119
  self.shift_negative_threshold_recalculation = shift_negative_threshold_recalculation
119
120
  self.shift_negative_params_search = shift_negative_params_search
121
+ self.concat_threshold_update = concat_threshold_update
120
122
 
121
123
  def __repr__(self):
122
124
  return str(self.__dict__)
@@ -42,14 +42,14 @@ def calculate_quantization_params(graph: Graph,
42
42
 
43
43
  """
44
44
 
45
- Logger.info(f"Running quantization parameters search. "
45
+ Logger.info(f"\nRunning quantization parameters search. "
46
46
  f"This process might take some time, "
47
47
  f"depending on the model size and the selected quantization methods.\n")
48
48
 
49
49
  # Create a list of nodes to compute their thresholds
50
50
  nodes_list: List[BaseNode] = nodes if specific_nodes else graph.nodes()
51
51
 
52
- for n in tqdm(nodes_list, "Calculating quantization params"): # iterate only nodes that we should compute their thresholds
52
+ for n in tqdm(nodes_list, "Calculating quantization parameters"): # iterate only nodes that we should compute their thresholds
53
53
  for candidate_qc in n.candidates_quantization_cfg:
54
54
  for attr in n.get_node_weights_attributes():
55
55
  if n.is_weights_quantization_enabled(attr):
@@ -0,0 +1,66 @@
1
+ # Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ # ==============================================================================
15
+
16
+
17
+ from tensorflow.keras.layers import Concatenate
18
+ import tensorflow as tf
19
+
20
+ from model_compression_toolkit.core import common
21
+ from model_compression_toolkit.core.common import Graph, BaseNode
22
+ from model_compression_toolkit.core.common.graph.graph_matchers import NodeOperationMatcher
23
+ from model_compression_toolkit.constants import THRESHOLD
24
+
25
+
26
+
27
+ class ConcatThresholdUpdate(common.BaseSubstitution):
28
+
29
+
30
+ """
31
+ Find concat layers and match their prior layers thresholds unless prior layer outputs to multiple layers.
32
+ """
33
+
34
+ def __init__(self):
35
+ """
36
+ Initialize a threshold_updater object.
37
+ """
38
+ concatination_node = NodeOperationMatcher(Concatenate) | \
39
+ NodeOperationMatcher(tf.concat)
40
+ super().__init__(matcher_instance=concatination_node)
41
+
42
+ def substitute(self,
43
+ graph: Graph,
44
+ node: BaseNode) -> Graph:
45
+ """
46
+ Update previous layers thresholds to match concatinations quantization thresholds. No change if
47
+ previous layer outputs to multiple layers. No change in case of uniform quantization.
48
+ No change in case of multiple quantization candidates (mixed precision).
49
+
50
+
51
+ Args:
52
+ graph: Graph we apply the substitution on.
53
+ node: Node refference to edit previous nodes thresholds.
54
+
55
+ Returns:
56
+ Graph after applying the substitution.
57
+ """
58
+
59
+ if len(node.candidates_quantization_cfg) == 1 and THRESHOLD in node.candidates_quantization_cfg[0].activation_quantization_cfg.activation_quantization_params:
60
+ concat_threshold = node.candidates_quantization_cfg[0].activation_quantization_cfg.activation_quantization_params[THRESHOLD]
61
+ prev_nodes = graph.get_prev_nodes(node)
62
+ for prev_node in prev_nodes:
63
+ if len(graph.get_next_nodes(prev_node))==1 and prev_node.type != Concatenate and prev_node.type != tf.concat:
64
+ prev_node.candidates_quantization_cfg[0].activation_quantization_cfg.activation_quantization_params[THRESHOLD] = concat_threshold
65
+
66
+ return graph
@@ -80,7 +80,8 @@ from model_compression_toolkit.core.keras.graph_substitutions.substitutions.line
80
80
  from model_compression_toolkit.core.keras.graph_substitutions.substitutions.residual_collapsing import \
81
81
  keras_residual_collapsing
82
82
  from model_compression_toolkit.core.keras.graph_substitutions.substitutions.input_scaling import InputScaling, \
83
- InputScalingWithPad
83
+ InputScalingWithPad
84
+ from model_compression_toolkit.core.keras.graph_substitutions.substitutions.concat_threshold_update import ConcatThresholdUpdate
84
85
  from model_compression_toolkit.core.keras.graph_substitutions.substitutions.relu_bound_to_power_of_2 import \
85
86
  ReLUBoundToPowerOfTwo
86
87
  from model_compression_toolkit.core.keras.graph_substitutions.substitutions.multi_head_attention_decomposition import \
@@ -300,8 +301,8 @@ class KerasImplementation(FrameworkImplementation):
300
301
  """
301
302
  return keras_op2d_add_const_collapsing()
302
303
 
303
- def get_substitutions_post_statistics_collection(self, quant_config: QuantizationConfig) \
304
- -> List[common.BaseSubstitution]:
304
+ def get_substitutions_post_statistics_collection(self,
305
+ quant_config: QuantizationConfig) -> List[common.BaseSubstitution]:
305
306
  """
306
307
  Return a list of the framework substitutions used after we collect statistics.
307
308
 
@@ -317,6 +318,8 @@ class KerasImplementation(FrameworkImplementation):
317
318
  if quant_config.input_scaling:
318
319
  substitutions_list.append(InputScaling())
319
320
  substitutions_list.append(InputScalingWithPad())
321
+ if quant_config.concat_threshold_update:
322
+ substitutions_list.append(ConcatThresholdUpdate())
320
323
  return substitutions_list
321
324
 
322
325
 
@@ -0,0 +1,69 @@
1
+ # Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ # ==============================================================================
15
+
16
+ from typing import List
17
+
18
+ import torch
19
+
20
+ from model_compression_toolkit.core import common
21
+ from model_compression_toolkit.core.common.graph.base_graph import Graph
22
+ from model_compression_toolkit.core.common.graph.graph_matchers import NodeOperationMatcher
23
+ from model_compression_toolkit.core.common.graph.base_node import BaseNode
24
+ from model_compression_toolkit.constants import THRESHOLD
25
+
26
+
27
+ class ConcatThresholdUpdate(common.BaseSubstitution):
28
+ """
29
+ Find concat layers and match their prior layers thresholds unless prior layer outputs to multiple layers.
30
+ """
31
+
32
+
33
+ def __init__(self):
34
+ """
35
+ Initialize a threshold_updater object.
36
+ """
37
+ concatination_node = NodeOperationMatcher(torch.cat) | \
38
+ NodeOperationMatcher(torch.concat)
39
+ super().__init__(matcher_instance=concatination_node)
40
+
41
+ def substitute(self,
42
+ graph: Graph,
43
+ node: BaseNode) -> Graph:
44
+ """
45
+ Update previous layers thresholds to match concatinations quantization thresholds. No change if
46
+ previous layer outputs to multiple layers. No change in case of uniform quantization.
47
+ No change in case of multiple quantization candidates (mixed precision).
48
+
49
+
50
+ Args:
51
+ graph: Graph we apply the substitution on.
52
+ node: Node refference to edit previous nodes thresholds.
53
+
54
+ Returns:
55
+ Graph after applying the substitution.
56
+ """
57
+
58
+ if len(node.candidates_quantization_cfg) == 1 and THRESHOLD in node.candidates_quantization_cfg[0].activation_quantization_cfg.activation_quantization_params:
59
+ concat_threshold = node.candidates_quantization_cfg[0].activation_quantization_cfg.activation_quantization_params[THRESHOLD]
60
+ prev_nodes = graph.get_prev_nodes(node)
61
+ for prev_node in prev_nodes:
62
+ if len(graph.get_next_nodes(prev_node))==1 and prev_node.type != torch.cat and prev_node.type != torch.concat:
63
+ prev_node.candidates_quantization_cfg[0].activation_quantization_cfg.activation_quantization_params[THRESHOLD] = concat_threshold
64
+
65
+ return graph
66
+
67
+
68
+
69
+
@@ -73,6 +73,8 @@ from model_compression_toolkit.core.pytorch.graph_substitutions.substitutions.vi
73
73
  VirtualActivationWeightsComposition
74
74
  from model_compression_toolkit.core.pytorch.graph_substitutions.substitutions.weights_activation_split import \
75
75
  WeightsActivationSplit
76
+ from model_compression_toolkit.core.pytorch.graph_substitutions.substitutions.concat_threshold_update import \
77
+ ConcatThresholdUpdate
76
78
  from model_compression_toolkit.core.pytorch.hessian.activation_trace_hessian_calculator_pytorch import \
77
79
  ActivationTraceHessianCalculatorPytorch
78
80
  from model_compression_toolkit.core.pytorch.hessian.weights_trace_hessian_calculator_pytorch import \
@@ -302,6 +304,8 @@ class PytorchImplementation(FrameworkImplementation):
302
304
  substitutions_list.append(pytorch_softmax_shift())
303
305
  if quant_config.input_scaling:
304
306
  Logger.critical('Input scaling is currently not supported for Pytorch.')
307
+ if quant_config.concat_threshold_update:
308
+ substitutions_list.append(ConcatThresholdUpdate())
305
309
  return substitutions_list
306
310
 
307
311
 
@@ -90,7 +90,7 @@ if FOUND_TF:
90
90
  fw_impl=C.keras.keras_implementation.KerasImplementation())).build_model()
91
91
  exportable_model.trainable = False
92
92
 
93
- Logger.info("Please run your accuracy evaluation on the exported quantized model to verify it's accuracy.\n"
93
+ Logger.info("\nPlease run your accuracy evaluation on the exported quantized model to verify it's accuracy.\n"
94
94
  "Checkout the FAQ and Troubleshooting pages for resolving common issues and improving the quantized model accuracy:\n"
95
95
  "FAQ: https://github.com/sony/model_optimization/tree/main/FAQ.md\n"
96
96
  "Quantization Troubleshooting: https://github.com/sony/model_optimization/tree/main/quantization_troubleshooting.md")
@@ -82,7 +82,7 @@ if FOUND_TORCH:
82
82
  get_activation_quantizer_holder(n,
83
83
  fw_impl=C.pytorch.pytorch_implementation.PytorchImplementation())).build_model()
84
84
 
85
- Logger.info("Please run your accuracy evaluation on the exported quantized model to verify it's accuracy.\n"
85
+ Logger.info("\nPlease run your accuracy evaluation on the exported quantized model to verify it's accuracy.\n"
86
86
  "Checkout the FAQ and Troubleshooting pages for resolving common issues and improving the quantized model accuracy:\n"
87
87
  "FAQ: https://github.com/sony/model_optimization/tree/main/FAQ.md\n"
88
88
  "Quantization Troubleshooting: https://github.com/sony/model_optimization/tree/main/quantization_troubleshooting.md")
@@ -301,21 +301,23 @@ class KerasGPTQTrainer(GPTQTrainer):
301
301
  Returns: None
302
302
 
303
303
  """
304
- for _ in tqdm(range(n_epochs)):
305
- for data in tqdm(data_function()):
306
- input_data = [d * self.input_scale for d in data]
307
-
308
- loss_value_step, grads = self.nano_training_step(input_data, in_compute_gradients,
309
- in_optimizer_with_param, is_training)
310
- # Run one step of gradient descent by updating
311
- # the value of the variables to minimize the loss.
312
- for i, (o, p) in enumerate(in_optimizer_with_param):
313
- o.apply_gradients(zip(grads[i], p))
314
- if self.gptq_config.log_function is not None:
315
- self.gptq_config.log_function(loss_value_step, grads[0], in_optimizer_with_param[0][-1],
316
- self.compare_points)
317
- self.loss_list.append(loss_value_step.numpy())
318
- Logger.debug(f'last loss value: {self.loss_list[-1]}')
304
+ with tqdm(range(n_epochs), "Running GPTQ optimization") as epochs_pbar:
305
+ for _ in epochs_pbar:
306
+ with tqdm(data_function(), position=1, leave=False) as data_pbar:
307
+ for data in data_pbar:
308
+ input_data = [d * self.input_scale for d in data]
309
+
310
+ loss_value_step, grads = self.nano_training_step(input_data, in_compute_gradients,
311
+ in_optimizer_with_param, is_training)
312
+ # Run one step of gradient descent by updating
313
+ # the value of the variables to minimize the loss.
314
+ for i, (o, p) in enumerate(in_optimizer_with_param):
315
+ o.apply_gradients(zip(grads[i], p))
316
+ if self.gptq_config.log_function is not None:
317
+ self.gptq_config.log_function(loss_value_step, grads[0], in_optimizer_with_param[0][-1],
318
+ self.compare_points)
319
+ self.loss_list.append(loss_value_step.numpy())
320
+ Logger.debug(f'last loss value: {self.loss_list[-1]}')
319
321
 
320
322
  def update_graph(self):
321
323
  """
@@ -12,6 +12,7 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
  # ==============================================================================
15
+ from tqdm import tqdm
15
16
  from typing import Callable
16
17
 
17
18
  from model_compression_toolkit.gptq import RoundingType, GradientPTQConfig, GradientPTQConfig
@@ -35,7 +36,7 @@ def get_regularization(gptq_config: GradientPTQConfig, representative_data_gen:
35
36
  if gptq_config.rounding_type == RoundingType.SoftQuantizer:
36
37
  # dry run on the representative dataset to count number of batches
37
38
  num_batches = 0
38
- for _ in representative_data_gen():
39
+ for _ in tqdm(representative_data_gen(), "GPTQ initialization"):
39
40
  num_batches += 1
40
41
 
41
42
  return SoftQuantizerRegularization(total_gradient_steps=num_batches * gptq_config.n_epochs)
@@ -248,22 +248,24 @@ class PytorchGPTQTrainer(GPTQTrainer):
248
248
  data_function: A callable function that give a batch of samples.
249
249
  n_epochs: Number of update iterations of representative dataset.
250
250
  """
251
- for _ in tqdm(range(n_epochs)):
252
- for data in tqdm(data_function()):
253
- input_data = [d * self.input_scale for d in data]
254
- input_tensor = to_torch_tensor(input_data)
255
- y_float = self.float_model(input_tensor) # running float model
256
- loss_value, grads = self.compute_gradients(y_float, input_tensor)
257
- # Run one step of gradient descent by updating the value of the variables to minimize the loss.
258
- for (optimizer, _) in self.optimizer_with_param:
259
- optimizer.step()
260
- optimizer.zero_grad()
261
- if self.gptq_config.log_function is not None:
262
- self.gptq_config.log_function(loss_value.item(),
263
- torch_tensor_to_numpy(grads),
264
- torch_tensor_to_numpy(self.optimizer_with_param[0][-1]))
265
- self.loss_list.append(loss_value.item())
266
- Logger.debug(f'last loss value: {self.loss_list[-1]}')
251
+ with tqdm(range(n_epochs), "Running GPTQ optimization") as epochs_pbar:
252
+ for _ in epochs_pbar:
253
+ with tqdm(data_function(), position=1, leave=False) as data_pbar:
254
+ for data in data_pbar:
255
+ input_data = [d * self.input_scale for d in data]
256
+ input_tensor = to_torch_tensor(input_data)
257
+ y_float = self.float_model(input_tensor) # running float model
258
+ loss_value, grads = self.compute_gradients(y_float, input_tensor)
259
+ # Run one step of gradient descent by updating the value of the variables to minimize the loss.
260
+ for (optimizer, _) in self.optimizer_with_param:
261
+ optimizer.step()
262
+ optimizer.zero_grad()
263
+ if self.gptq_config.log_function is not None:
264
+ self.gptq_config.log_function(loss_value.item(),
265
+ torch_tensor_to_numpy(grads),
266
+ torch_tensor_to_numpy(self.optimizer_with_param[0][-1]))
267
+ self.loss_list.append(loss_value.item())
268
+ Logger.debug(f'last loss value: {self.loss_list[-1]}')
267
269
 
268
270
  def update_graph(self) -> Graph:
269
271
  """
@@ -12,6 +12,7 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
  # ==============================================================================
15
+ from tqdm import tqdm
15
16
  from typing import Callable
16
17
 
17
18
  from model_compression_toolkit.gptq import RoundingType, GradientPTQConfig, GradientPTQConfig
@@ -35,7 +36,7 @@ def get_regularization(gptq_config: GradientPTQConfig, representative_data_gen:
35
36
  if gptq_config.rounding_type == RoundingType.SoftQuantizer:
36
37
  # dry run on the representative dataset to count number of batches
37
38
  num_batches = 0
38
- for _ in representative_data_gen():
39
+ for _ in tqdm(representative_data_gen(), "GPTQ initialization"):
39
40
  num_batches += 1
40
41
 
41
42
  return SoftQuantizerRegularization(total_gradient_steps=num_batches * gptq_config.n_epochs)