mct-nightly 2.1.0.20240812.432__py3-none-any.whl → 2.1.0.20240813.135859__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mct_nightly-2.1.0.20240812.432.dist-info → mct_nightly-2.1.0.20240813.135859.dist-info}/METADATA +1 -1
- {mct_nightly-2.1.0.20240812.432.dist-info → mct_nightly-2.1.0.20240813.135859.dist-info}/RECORD +60 -59
- model_compression_toolkit/__init__.py +1 -1
- model_compression_toolkit/constants.py +0 -7
- model_compression_toolkit/core/common/graph/functional_node.py +1 -1
- model_compression_toolkit/core/common/quantization/bit_width_config.py +6 -1
- model_compression_toolkit/core/common/quantization/quantization_config.py +1 -1
- model_compression_toolkit/core/keras/reader/node_builder.py +2 -1
- model_compression_toolkit/core/keras/resource_utilization_data_facade.py +4 -3
- model_compression_toolkit/core/pytorch/resource_utilization_data_facade.py +1 -1
- model_compression_toolkit/data_generation/__init__.py +1 -1
- model_compression_toolkit/data_generation/keras/keras_data_generation.py +7 -3
- model_compression_toolkit/data_generation/pytorch/pytorch_data_generation.py +1 -1
- model_compression_toolkit/exporter/model_exporter/keras/keras_export_facade.py +4 -3
- model_compression_toolkit/exporter/model_exporter/pytorch/fakely_quant_onnx_pytorch_exporter.py +1 -1
- model_compression_toolkit/exporter/model_exporter/pytorch/pytorch_export_facade.py +1 -1
- model_compression_toolkit/exporter/model_wrapper/keras/builder/fully_quantized_model_builder.py +4 -3
- model_compression_toolkit/exporter/model_wrapper/keras/validate_layer.py +4 -3
- model_compression_toolkit/exporter/model_wrapper/pytorch/builder/fully_quantized_model_builder.py +1 -1
- model_compression_toolkit/exporter/model_wrapper/pytorch/validate_layer.py +1 -2
- model_compression_toolkit/gptq/keras/quantization_facade.py +8 -5
- model_compression_toolkit/gptq/keras/quantizer/base_keras_gptq_quantizer.py +4 -3
- model_compression_toolkit/gptq/pytorch/quantization_facade.py +2 -1
- model_compression_toolkit/gptq/pytorch/quantizer/base_pytorch_gptq_quantizer.py +1 -1
- model_compression_toolkit/pruning/keras/pruning_facade.py +5 -3
- model_compression_toolkit/pruning/pytorch/pruning_facade.py +2 -1
- model_compression_toolkit/ptq/keras/quantization_facade.py +5 -3
- model_compression_toolkit/ptq/pytorch/quantization_facade.py +2 -1
- model_compression_toolkit/qat/keras/quantization_facade.py +7 -5
- model_compression_toolkit/qat/keras/quantizer/base_keras_qat_quantizer.py +4 -3
- model_compression_toolkit/qat/pytorch/quantization_facade.py +2 -1
- model_compression_toolkit/qat/pytorch/quantizer/base_pytorch_qat_quantizer.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/target_platform_capabilities.py +2 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tp_model.py +1 -0
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_keras.py +5 -3
- model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_pytorch.py +2 -0
- model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/target_platform_capabilities.py +2 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py +1 -1
- model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/target_platform_capabilities.py +2 -1
- model_compression_toolkit/trainable_infrastructure/keras/base_keras_quantizer.py +4 -3
- model_compression_toolkit/trainable_infrastructure/keras/load_model.py +4 -3
- model_compression_toolkit/trainable_infrastructure/keras/quantize_wrapper.py +4 -3
- model_compression_toolkit/trainable_infrastructure/pytorch/base_pytorch_quantizer.py +1 -1
- model_compression_toolkit/verify_packages.py +33 -0
- model_compression_toolkit/xquant/keras/facade_xquant_report.py +4 -3
- model_compression_toolkit/xquant/keras/tensorboard_utils.py +2 -1
- model_compression_toolkit/xquant/pytorch/facade_xquant_report.py +1 -1
- model_compression_toolkit/xquant/pytorch/tensorboard_utils.py +2 -1
- {mct_nightly-2.1.0.20240812.432.dist-info → mct_nightly-2.1.0.20240813.135859.dist-info}/LICENSE.md +0 -0
- {mct_nightly-2.1.0.20240812.432.dist-info → mct_nightly-2.1.0.20240813.135859.dist-info}/WHEEL +0 -0
- {mct_nightly-2.1.0.20240812.432.dist-info → mct_nightly-2.1.0.20240813.135859.dist-info}/top_level.txt +0 -0
@@ -21,7 +21,8 @@ from model_compression_toolkit.core.common.quantization.quantize_graph_weights i
|
|
21
21
|
from model_compression_toolkit.core.common.visualization.tensorboard_writer import init_tensorboard_writer
|
22
22
|
from model_compression_toolkit.gptq.common.gptq_constants import REG_DEFAULT
|
23
23
|
from model_compression_toolkit.logger import Logger
|
24
|
-
from model_compression_toolkit.constants import TENSORFLOW,
|
24
|
+
from model_compression_toolkit.constants import TENSORFLOW, ACT_HESSIAN_DEFAULT_BATCH_SIZE
|
25
|
+
from model_compression_toolkit.verify_packages import FOUND_TF
|
25
26
|
from model_compression_toolkit.core.common.user_info import UserInformation
|
26
27
|
from model_compression_toolkit.gptq.common.gptq_config import GradientPTQConfig, GPTQHessianScoresConfig
|
27
28
|
from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization import ResourceUtilization
|
@@ -251,10 +252,12 @@ else:
|
|
251
252
|
# If tensorflow is not installed,
|
252
253
|
# we raise an exception when trying to use these functions.
|
253
254
|
def get_keras_gptq_config(*args, **kwargs):
|
254
|
-
Logger.critical("Tensorflow must be installed to use
|
255
|
-
"The 'tensorflow' package is missing
|
255
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
256
|
+
"get_keras_gptq_config. The 'tensorflow' package is missing or is "
|
257
|
+
"installed with a version higher than 2.15.") # pragma: no cover
|
256
258
|
|
257
259
|
|
258
260
|
def keras_gradient_post_training_quantization(*args, **kwargs):
|
259
|
-
Logger.critical("Tensorflow must be installed to use
|
260
|
-
"The 'tensorflow' package is missing
|
261
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
262
|
+
"keras_gradient_post_training_quantization. The 'tensorflow' package is missing or is "
|
263
|
+
"installed with a version higher than 2.15.") # pragma: no cover
|
@@ -16,7 +16,7 @@ from abc import abstractmethod
|
|
16
16
|
from typing import Union, Dict, List
|
17
17
|
|
18
18
|
from model_compression_toolkit.logger import Logger
|
19
|
-
from model_compression_toolkit.
|
19
|
+
from model_compression_toolkit.verify_packages import FOUND_TF
|
20
20
|
from model_compression_toolkit.gptq.common.gptq_constants import WEIGHTS_QUANTIZATION_PARAMS
|
21
21
|
|
22
22
|
from model_compression_toolkit.trainable_infrastructure import TrainableQuantizerWeightsConfig, TrainableQuantizerActivationConfig
|
@@ -105,5 +105,6 @@ if FOUND_TF:
|
|
105
105
|
else:
|
106
106
|
class BaseKerasGPTQTrainableQuantizer: # pragma: no cover
|
107
107
|
def __init__(self, *args, **kwargs):
|
108
|
-
Logger.critical("Tensorflow must be installed to use
|
109
|
-
"The 'tensorflow' package is missing
|
108
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
109
|
+
"BaseKerasGPTQTrainableQuantizer. The 'tensorflow' package is missing or is "
|
110
|
+
"installed with a version higher than 2.15.") # pragma: no cover
|
@@ -16,7 +16,8 @@ import copy
|
|
16
16
|
|
17
17
|
from typing import Callable
|
18
18
|
from model_compression_toolkit.core import common
|
19
|
-
from model_compression_toolkit.constants import
|
19
|
+
from model_compression_toolkit.constants import ACT_HESSIAN_DEFAULT_BATCH_SIZE
|
20
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH
|
20
21
|
from model_compression_toolkit.core.common.visualization.tensorboard_writer import init_tensorboard_writer
|
21
22
|
from model_compression_toolkit.gptq.common.gptq_constants import REG_DEFAULT
|
22
23
|
from model_compression_toolkit.logger import Logger
|
@@ -16,7 +16,7 @@ from abc import abstractmethod
|
|
16
16
|
from typing import Union, Dict
|
17
17
|
|
18
18
|
from model_compression_toolkit.logger import Logger
|
19
|
-
from model_compression_toolkit.
|
19
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH
|
20
20
|
from model_compression_toolkit.gptq.common.gptq_constants import WEIGHTS_QUANTIZATION_PARAMS
|
21
21
|
|
22
22
|
from model_compression_toolkit.trainable_infrastructure import TrainableQuantizerWeightsConfig, \
|
@@ -16,7 +16,8 @@
|
|
16
16
|
from typing import Callable, Tuple
|
17
17
|
|
18
18
|
from model_compression_toolkit import get_target_platform_capabilities
|
19
|
-
from model_compression_toolkit.constants import TENSORFLOW
|
19
|
+
from model_compression_toolkit.constants import TENSORFLOW
|
20
|
+
from model_compression_toolkit.verify_packages import FOUND_TF
|
20
21
|
from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization import ResourceUtilization
|
21
22
|
from model_compression_toolkit.core.common.pruning.pruner import Pruner
|
22
23
|
from model_compression_toolkit.core.common.pruning.pruning_config import PruningConfig
|
@@ -149,5 +150,6 @@ else:
|
|
149
150
|
# If tensorflow is not installed,
|
150
151
|
# we raise an exception when trying to use these functions.
|
151
152
|
def keras_pruning_experimental(*args, **kwargs):
|
152
|
-
Logger.critical("Tensorflow must be installed to use
|
153
|
-
"The 'tensorflow' package is missing
|
153
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
154
|
+
"keras_pruning_experimental. The 'tensorflow' package is missing or is "
|
155
|
+
"installed with a version higher than 2.15.") # pragma: no cover
|
@@ -15,7 +15,8 @@
|
|
15
15
|
|
16
16
|
from typing import Callable, Tuple
|
17
17
|
from model_compression_toolkit import get_target_platform_capabilities
|
18
|
-
from model_compression_toolkit.constants import
|
18
|
+
from model_compression_toolkit.constants import PYTORCH
|
19
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH
|
19
20
|
from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization import ResourceUtilization
|
20
21
|
from model_compression_toolkit.core.common.pruning.pruner import Pruner
|
21
22
|
from model_compression_toolkit.core.common.pruning.pruning_config import PruningConfig
|
@@ -21,7 +21,8 @@ from model_compression_toolkit.core.analyzer import analyzer_model_quantization
|
|
21
21
|
from model_compression_toolkit.core.common.quantization.quantize_graph_weights import quantize_graph_weights
|
22
22
|
from model_compression_toolkit.core.common.visualization.tensorboard_writer import init_tensorboard_writer
|
23
23
|
from model_compression_toolkit.logger import Logger
|
24
|
-
from model_compression_toolkit.constants import TENSORFLOW
|
24
|
+
from model_compression_toolkit.constants import TENSORFLOW
|
25
|
+
from model_compression_toolkit.verify_packages import FOUND_TF
|
25
26
|
from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization import ResourceUtilization
|
26
27
|
from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import \
|
27
28
|
MixedPrecisionQuantizationConfig
|
@@ -178,5 +179,6 @@ else:
|
|
178
179
|
# If tensorflow is not installed,
|
179
180
|
# we raise an exception when trying to use these functions.
|
180
181
|
def keras_post_training_quantization(*args, **kwargs):
|
181
|
-
Logger.critical("Tensorflow must be installed to use
|
182
|
-
"The 'tensorflow' package is missing
|
182
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
183
|
+
"keras_post_training_quantization. The 'tensorflow' package is missing or is "
|
184
|
+
"installed with a version higher than 2.15.") # pragma: no cover
|
@@ -18,7 +18,8 @@ from typing import Callable
|
|
18
18
|
|
19
19
|
from model_compression_toolkit.core.common.visualization.tensorboard_writer import init_tensorboard_writer
|
20
20
|
from model_compression_toolkit.logger import Logger
|
21
|
-
from model_compression_toolkit.constants import PYTORCH
|
21
|
+
from model_compression_toolkit.constants import PYTORCH
|
22
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH
|
22
23
|
from model_compression_toolkit.target_platform_capabilities.target_platform import TargetPlatformCapabilities
|
23
24
|
from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization import ResourceUtilization
|
24
25
|
from model_compression_toolkit.core import CoreConfig
|
@@ -19,7 +19,7 @@ from functools import partial
|
|
19
19
|
from model_compression_toolkit.core import CoreConfig
|
20
20
|
from model_compression_toolkit.core.common.visualization.tensorboard_writer import init_tensorboard_writer
|
21
21
|
from model_compression_toolkit.logger import Logger
|
22
|
-
from model_compression_toolkit.
|
22
|
+
from model_compression_toolkit.verify_packages import FOUND_TF
|
23
23
|
from model_compression_toolkit.core.common.mixed_precision.resource_utilization_tools.resource_utilization import ResourceUtilization
|
24
24
|
from model_compression_toolkit.core.common.mixed_precision.mixed_precision_quantization_config import \
|
25
25
|
MixedPrecisionQuantizationConfig
|
@@ -291,10 +291,12 @@ else:
|
|
291
291
|
# If tensorflow is not installed,
|
292
292
|
# we raise an exception when trying to use these functions.
|
293
293
|
def keras_quantization_aware_training_init_experimental(*args, **kwargs):
|
294
|
-
Logger.critical("Tensorflow must be installed to use
|
295
|
-
"The 'tensorflow' package is missing
|
294
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
295
|
+
"keras_quantization_aware_training_init_experimental. The 'tensorflow' package is missing "
|
296
|
+
"or is installed with a version higher than 2.15.") # pragma: no cover
|
296
297
|
|
297
298
|
|
298
299
|
def keras_quantization_aware_training_finalize_experimental(*args, **kwargs):
|
299
|
-
Logger.critical("Tensorflow must be installed to use
|
300
|
-
"The 'tensorflow' package is missing
|
300
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
301
|
+
"keras_quantization_aware_training_finalize_experimental. The 'tensorflow' package is missing "
|
302
|
+
"or is installed with a version higher than 2.15.") # pragma: no cover
|
@@ -15,7 +15,7 @@
|
|
15
15
|
from typing import Union
|
16
16
|
|
17
17
|
from model_compression_toolkit.logger import Logger
|
18
|
-
from model_compression_toolkit.
|
18
|
+
from model_compression_toolkit.verify_packages import FOUND_TF
|
19
19
|
|
20
20
|
from model_compression_toolkit.trainable_infrastructure import TrainableQuantizerWeightsConfig, \
|
21
21
|
TrainableQuantizerActivationConfig, BaseKerasTrainableQuantizer
|
@@ -44,5 +44,6 @@ else: # pragma: no cover
|
|
44
44
|
quantization_config: Union[TrainableQuantizerWeightsConfig, TrainableQuantizerActivationConfig]):
|
45
45
|
|
46
46
|
super().__init__(quantization_config)
|
47
|
-
Logger.critical("Tensorflow must be installed to use
|
48
|
-
"The 'tensorflow' package is missing
|
47
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
48
|
+
"BaseKerasQATTrainableQuantizer. The 'tensorflow' package is missing "
|
49
|
+
"or is installed with a version higher than 2.15.") # pragma: no cover
|
@@ -16,7 +16,8 @@ import copy
|
|
16
16
|
from typing import Callable
|
17
17
|
from functools import partial
|
18
18
|
|
19
|
-
from model_compression_toolkit.constants import
|
19
|
+
from model_compression_toolkit.constants import PYTORCH
|
20
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH
|
20
21
|
|
21
22
|
from model_compression_toolkit.core import CoreConfig
|
22
23
|
from model_compression_toolkit.core import common
|
@@ -15,7 +15,7 @@
|
|
15
15
|
from typing import Union
|
16
16
|
|
17
17
|
from model_compression_toolkit.logger import Logger
|
18
|
-
from model_compression_toolkit.
|
18
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH
|
19
19
|
|
20
20
|
from model_compression_toolkit.trainable_infrastructure import TrainableQuantizerWeightsConfig, \
|
21
21
|
TrainableQuantizerActivationConfig
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/latest/__init__.py
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
# See the License for the specific language governing permissions and
|
13
13
|
# limitations under the License.
|
14
14
|
# ==============================================================================
|
15
|
-
from model_compression_toolkit.
|
15
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
|
16
16
|
from model_compression_toolkit.target_platform_capabilities.tpc_models.imx500_tpc.v1.tp_model import get_tp_model, generate_tp_model, \
|
17
17
|
get_op_quantization_configs
|
18
18
|
if FOUND_TF:
|
@@ -14,7 +14,8 @@
|
|
14
14
|
# ==============================================================================
|
15
15
|
from model_compression_toolkit.logger import Logger
|
16
16
|
|
17
|
-
from model_compression_toolkit.constants import
|
17
|
+
from model_compression_toolkit.constants import TENSORFLOW, PYTORCH
|
18
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
|
18
19
|
from model_compression_toolkit.target_platform_capabilities.constants import LATEST
|
19
20
|
|
20
21
|
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1/tpc_keras.py
CHANGED
@@ -16,7 +16,7 @@ import tensorflow as tf
|
|
16
16
|
from packaging import version
|
17
17
|
|
18
18
|
from model_compression_toolkit.defaultdict import DefaultDict
|
19
|
-
from model_compression_toolkit.
|
19
|
+
from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
|
20
20
|
from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_DEPTHWISE_KERNEL, \
|
21
21
|
KERAS_KERNEL, BIAS_ATTR, BIAS
|
22
22
|
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_lut/tpc_keras.py
CHANGED
@@ -16,7 +16,7 @@ import tensorflow as tf
|
|
16
16
|
from packaging import version
|
17
17
|
|
18
18
|
from model_compression_toolkit.defaultdict import DefaultDict
|
19
|
-
from model_compression_toolkit.
|
19
|
+
from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
|
20
20
|
from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_KERNEL, BIAS_ATTR, \
|
21
21
|
KERAS_DEPTHWISE_KERNEL, BIAS
|
22
22
|
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v1_pot/tpc_keras.py
CHANGED
@@ -16,7 +16,7 @@ import tensorflow as tf
|
|
16
16
|
from packaging import version
|
17
17
|
|
18
18
|
from model_compression_toolkit.defaultdict import DefaultDict
|
19
|
-
from model_compression_toolkit.
|
19
|
+
from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
|
20
20
|
from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_DEPTHWISE_KERNEL, \
|
21
21
|
KERAS_KERNEL, BIAS_ATTR, BIAS
|
22
22
|
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2/tpc_keras.py
CHANGED
@@ -16,7 +16,7 @@ import tensorflow as tf
|
|
16
16
|
from packaging import version
|
17
17
|
|
18
18
|
from model_compression_toolkit.defaultdict import DefaultDict
|
19
|
-
from model_compression_toolkit.
|
19
|
+
from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
|
20
20
|
from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_DEPTHWISE_KERNEL, \
|
21
21
|
KERAS_KERNEL, BIAS_ATTR, BIAS
|
22
22
|
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v2_lut/tpc_keras.py
CHANGED
@@ -16,7 +16,7 @@ import tensorflow as tf
|
|
16
16
|
from packaging import version
|
17
17
|
|
18
18
|
from model_compression_toolkit.defaultdict import DefaultDict
|
19
|
-
from model_compression_toolkit.
|
19
|
+
from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
|
20
20
|
from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_KERNEL, BIAS_ATTR, \
|
21
21
|
KERAS_DEPTHWISE_KERNEL, BIAS
|
22
22
|
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3/tpc_keras.py
CHANGED
@@ -16,7 +16,7 @@ import tensorflow as tf
|
|
16
16
|
from packaging import version
|
17
17
|
|
18
18
|
from model_compression_toolkit.defaultdict import DefaultDict
|
19
|
-
from model_compression_toolkit.
|
19
|
+
from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
|
20
20
|
from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_DEPTHWISE_KERNEL, \
|
21
21
|
KERAS_KERNEL, BIAS_ATTR, BIAS
|
22
22
|
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v3_lut/tpc_keras.py
CHANGED
@@ -16,7 +16,7 @@ import tensorflow as tf
|
|
16
16
|
from packaging import version
|
17
17
|
|
18
18
|
from model_compression_toolkit.defaultdict import DefaultDict
|
19
|
-
from model_compression_toolkit.
|
19
|
+
from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
|
20
20
|
from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_KERNEL, BIAS_ATTR, \
|
21
21
|
KERAS_DEPTHWISE_KERNEL, BIAS
|
22
22
|
|
@@ -199,6 +199,7 @@ def generate_tp_model(default_config: OpQuantizationConfig,
|
|
199
199
|
default_qco.clone_and_edit(enable_activation_quantization=False,
|
200
200
|
supported_input_activation_n_bits=(8, 16))
|
201
201
|
.clone_and_edit_weight_attribute(enable_weights_quantization=False))
|
202
|
+
tp.OperatorsSet("Default16BitInout", const_configuration_options_inout16)
|
202
203
|
|
203
204
|
# Create Mixed-Precision quantization configuration options from the given list of OpQuantizationConfig objects
|
204
205
|
mixed_precision_configuration_options = tp.QuantizationConfigOptions(mixed_precision_cfg_list,
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_keras.py
CHANGED
@@ -16,7 +16,7 @@ import tensorflow as tf
|
|
16
16
|
from packaging import version
|
17
17
|
|
18
18
|
from model_compression_toolkit.defaultdict import DefaultDict
|
19
|
-
from model_compression_toolkit.
|
19
|
+
from model_compression_toolkit.verify_packages import FOUND_SONY_CUSTOM_LAYERS
|
20
20
|
from model_compression_toolkit.target_platform_capabilities.constants import KERNEL_ATTR, KERAS_DEPTHWISE_KERNEL, \
|
21
21
|
KERAS_KERNEL, BIAS_ATTR, BIAS
|
22
22
|
|
@@ -26,11 +26,11 @@ if FOUND_SONY_CUSTOM_LAYERS:
|
|
26
26
|
if version.parse(tf.__version__) >= version.parse("2.13"):
|
27
27
|
from keras.src.layers import Conv2D, DepthwiseConv2D, Dense, Reshape, ZeroPadding2D, Dropout, \
|
28
28
|
MaxPooling2D, Activation, ReLU, Add, Subtract, Multiply, PReLU, Flatten, Cropping2D, LeakyReLU, Permute, \
|
29
|
-
Conv2DTranspose, Identity
|
29
|
+
Conv2DTranspose, Identity, Concatenate
|
30
30
|
else:
|
31
31
|
from keras.layers import Conv2D, DepthwiseConv2D, Dense, Reshape, ZeroPadding2D, Dropout, \
|
32
32
|
MaxPooling2D, Activation, ReLU, Add, Subtract, Multiply, PReLU, Flatten, Cropping2D, LeakyReLU, Permute, \
|
33
|
-
Conv2DTranspose, Identity
|
33
|
+
Conv2DTranspose, Identity, Concatenate
|
34
34
|
|
35
35
|
from model_compression_toolkit.target_platform_capabilities.tpc_models.imx500_tpc.v4.tp_model import get_tp_model
|
36
36
|
import model_compression_toolkit as mct
|
@@ -93,6 +93,8 @@ def generate_keras_tpc(name: str, tp_model: tp.TargetPlatformModel):
|
|
93
93
|
|
94
94
|
with keras_tpc:
|
95
95
|
tp.OperationsSetToLayers("NoQuantization", no_quant_list)
|
96
|
+
tp.OperationsSetToLayers("Default16BitInout", [tf.stack,
|
97
|
+
tf.concat, Concatenate])
|
96
98
|
tp.OperationsSetToLayers("Conv",
|
97
99
|
[Conv2D,
|
98
100
|
DepthwiseConv2D,
|
model_compression_toolkit/target_platform_capabilities/tpc_models/imx500_tpc/v4/tpc_pytorch.py
CHANGED
@@ -85,6 +85,8 @@ def generate_pytorch_tpc(name: str, tp_model: tp.TargetPlatformModel):
|
|
85
85
|
topk,
|
86
86
|
squeeze,
|
87
87
|
MaxPool2d])
|
88
|
+
tp.OperationsSetToLayers("Default16BitInout",
|
89
|
+
[torch.stack, torch.cat, torch.concat, torch.concatenate])
|
88
90
|
|
89
91
|
tp.OperationsSetToLayers("Conv", [Conv2d, ConvTranspose2d],
|
90
92
|
attr_mapping=pytorch_linear_attr_mapping)
|
model_compression_toolkit/target_platform_capabilities/tpc_models/qnnpack_tpc/latest/__init__.py
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
# See the License for the specific language governing permissions and
|
13
13
|
# limitations under the License.
|
14
14
|
# ==============================================================================
|
15
|
-
from model_compression_toolkit.
|
15
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
|
16
16
|
from model_compression_toolkit.target_platform_capabilities.tpc_models.qnnpack_tpc.v1.tp_model import get_tp_model, generate_tp_model, get_op_quantization_configs
|
17
17
|
if FOUND_TF:
|
18
18
|
from model_compression_toolkit.target_platform_capabilities.tpc_models.qnnpack_tpc.v1.tpc_keras import get_keras_tpc as get_keras_tpc_latest
|
@@ -13,7 +13,8 @@
|
|
13
13
|
# limitations under the License.
|
14
14
|
# ==============================================================================
|
15
15
|
|
16
|
-
from model_compression_toolkit.constants import
|
16
|
+
from model_compression_toolkit.constants import TENSORFLOW, PYTORCH
|
17
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
|
17
18
|
from model_compression_toolkit.logger import Logger
|
18
19
|
from model_compression_toolkit.target_platform_capabilities.constants import LATEST
|
19
20
|
|
model_compression_toolkit/target_platform_capabilities/tpc_models/tflite_tpc/latest/__init__.py
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
# See the License for the specific language governing permissions and
|
13
13
|
# limitations under the License.
|
14
14
|
# ==============================================================================
|
15
|
-
from model_compression_toolkit.
|
15
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
|
16
16
|
from model_compression_toolkit.target_platform_capabilities.tpc_models.tflite_tpc.v1.tp_model import get_tp_model, generate_tp_model, get_op_quantization_configs
|
17
17
|
if FOUND_TF:
|
18
18
|
from model_compression_toolkit.target_platform_capabilities.tpc_models.tflite_tpc.v1.tpc_keras import get_keras_tpc as get_keras_tpc_latest
|
@@ -13,7 +13,8 @@
|
|
13
13
|
# limitations under the License.
|
14
14
|
# ==============================================================================
|
15
15
|
|
16
|
-
from model_compression_toolkit.constants import
|
16
|
+
from model_compression_toolkit.constants import TENSORFLOW, PYTORCH
|
17
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH, FOUND_TF
|
17
18
|
from model_compression_toolkit.logger import Logger
|
18
19
|
from model_compression_toolkit.target_platform_capabilities.constants import LATEST
|
19
20
|
|
@@ -15,7 +15,7 @@
|
|
15
15
|
from typing import Dict, Any, Union, List
|
16
16
|
|
17
17
|
from model_compression_toolkit.logger import Logger
|
18
|
-
from model_compression_toolkit.
|
18
|
+
from model_compression_toolkit.verify_packages import FOUND_TF
|
19
19
|
from model_compression_toolkit.trainable_infrastructure.common.base_trainable_quantizer import VariableGroup
|
20
20
|
from model_compression_toolkit.trainable_infrastructure.common.base_trainable_quantizer import BaseTrainableQuantizer, VAR, GROUP
|
21
21
|
from model_compression_toolkit.trainable_infrastructure import TrainableQuantizerWeightsConfig, \
|
@@ -83,5 +83,6 @@ if FOUND_TF:
|
|
83
83
|
else:
|
84
84
|
class BaseKerasTrainableQuantizer(BaseTrainableQuantizer):
|
85
85
|
def __init__(self, *args, **kwargs):
|
86
|
-
Logger.critical("Tensorflow must be installed to use
|
87
|
-
"The 'tensorflow' package is missing
|
86
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
87
|
+
"BaseKerasTrainableQuantizer. The 'tensorflow' package is missing "
|
88
|
+
"or is installed with a version higher than 2.15.") # pragma: no cover
|
@@ -17,7 +17,7 @@ from typing import Any
|
|
17
17
|
import mct_quantizers
|
18
18
|
from mct_quantizers.common.get_all_subclasses import get_all_subclasses
|
19
19
|
|
20
|
-
from model_compression_toolkit.
|
20
|
+
from model_compression_toolkit.verify_packages import FOUND_TF
|
21
21
|
from model_compression_toolkit.logger import Logger
|
22
22
|
|
23
23
|
if FOUND_TF:
|
@@ -72,5 +72,6 @@ else:
|
|
72
72
|
Returns: A keras Model
|
73
73
|
|
74
74
|
"""
|
75
|
-
Logger.critical("Tensorflow must be installed to use
|
76
|
-
"The 'tensorflow' package is missing
|
75
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
76
|
+
"keras_load_quantized_model. The 'tensorflow' package is missing "
|
77
|
+
"or is installed with a version higher than 2.15.") # pragma: no cover
|
@@ -14,7 +14,7 @@
|
|
14
14
|
# ==============================================================================
|
15
15
|
from typing import Dict
|
16
16
|
|
17
|
-
from model_compression_toolkit.
|
17
|
+
from model_compression_toolkit.verify_packages import FOUND_TF
|
18
18
|
from model_compression_toolkit.logger import Logger
|
19
19
|
from model_compression_toolkit.trainable_infrastructure.common.base_trainable_quantizer import BaseTrainableQuantizer
|
20
20
|
|
@@ -110,5 +110,6 @@ else:
|
|
110
110
|
layer: A keras layer.
|
111
111
|
weights_quantizers: A dictionary between a weight's name to its quantizer.
|
112
112
|
"""
|
113
|
-
Logger.critical("Tensorflow must be installed to use
|
114
|
-
"The 'tensorflow' package is missing
|
113
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
114
|
+
"KerasTrainableQuantizationWrapper. The 'tensorflow' package is missing "
|
115
|
+
"or is installed with a version higher than 2.15.") # pragma: no cover
|
@@ -15,7 +15,7 @@
|
|
15
15
|
from typing import Union, List
|
16
16
|
|
17
17
|
from model_compression_toolkit.logger import Logger
|
18
|
-
from model_compression_toolkit.
|
18
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH
|
19
19
|
from model_compression_toolkit.trainable_infrastructure.common.base_trainable_quantizer import VariableGroup
|
20
20
|
from model_compression_toolkit.trainable_infrastructure.common.base_trainable_quantizer import BaseTrainableQuantizer, VAR, GROUP
|
21
21
|
from model_compression_toolkit.trainable_infrastructure import TrainableQuantizerWeightsConfig, \
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# Copyright 2024 Sony Semiconductor Israel, Inc. All rights reserved.
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
# ==============================================================================
|
15
|
+
|
16
|
+
import importlib
|
17
|
+
from packaging import version
|
18
|
+
|
19
|
+
from model_compression_toolkit.constants import TENSORFLOW
|
20
|
+
|
21
|
+
FOUND_TF = importlib.util.find_spec(TENSORFLOW) is not None
|
22
|
+
|
23
|
+
if FOUND_TF:
|
24
|
+
import tensorflow as tf
|
25
|
+
# MCT doesn't support TensorFlow version 2.16 or higher
|
26
|
+
if version.parse(tf.__version__) >= version.parse("2.16"):
|
27
|
+
FOUND_TF = False
|
28
|
+
|
29
|
+
FOUND_TORCH = importlib.util.find_spec("torch") is not None
|
30
|
+
FOUND_TORCHVISION = importlib.util.find_spec("torchvision") is not None
|
31
|
+
FOUND_ONNX = importlib.util.find_spec("onnx") is not None
|
32
|
+
FOUND_ONNXRUNTIME = importlib.util.find_spec("onnxruntime") is not None
|
33
|
+
FOUND_SONY_CUSTOM_LAYERS = importlib.util.find_spec('sony_custom_layers') is not None
|
@@ -15,7 +15,7 @@
|
|
15
15
|
|
16
16
|
from typing import Callable, Dict, Any
|
17
17
|
|
18
|
-
from model_compression_toolkit.
|
18
|
+
from model_compression_toolkit.verify_packages import FOUND_TF
|
19
19
|
from model_compression_toolkit.xquant.common.core_report_generator import core_report_generator
|
20
20
|
from model_compression_toolkit.xquant import XQuantConfig
|
21
21
|
from model_compression_toolkit.logger import Logger
|
@@ -61,5 +61,6 @@ if FOUND_TF:
|
|
61
61
|
return _collected_data
|
62
62
|
else:
|
63
63
|
def xquant_report_keras_experimental(*args, **kwargs):
|
64
|
-
Logger.critical("Tensorflow must be installed to use
|
65
|
-
|
64
|
+
Logger.critical("Tensorflow must be installed with a version of 2.15 or lower to use "
|
65
|
+
"xquant_report_keras_experimental. The 'tensorflow' package is missing "
|
66
|
+
"or is installed with a version higher than 2.15.") # pragma: no cover
|
@@ -76,7 +76,8 @@ class KerasTensorboardUtils(TensorboardUtils):
|
|
76
76
|
# Read the quantized model into a graph structure.
|
77
77
|
quant_graph = model_reader(quantized_model)
|
78
78
|
|
79
|
-
|
79
|
+
if 'scheduling_info' in quantized_model_metadata:
|
80
|
+
insert_cut_info_into_graph(quant_graph, quantized_model_metadata)
|
80
81
|
|
81
82
|
# Iterate over each node in the graph.
|
82
83
|
for node in quant_graph.nodes:
|
@@ -15,7 +15,7 @@
|
|
15
15
|
|
16
16
|
from typing import Callable
|
17
17
|
|
18
|
-
from model_compression_toolkit.
|
18
|
+
from model_compression_toolkit.verify_packages import FOUND_TORCH
|
19
19
|
from model_compression_toolkit.xquant.common.core_report_generator import core_report_generator
|
20
20
|
from model_compression_toolkit.xquant import XQuantConfig
|
21
21
|
from model_compression_toolkit.logger import Logger
|
@@ -79,7 +79,8 @@ class PytorchTensorboardUtils(TensorboardUtils):
|
|
79
79
|
to_tensor=self.fw_impl.to_tensor,
|
80
80
|
to_numpy=self.fw_impl.to_numpy)
|
81
81
|
|
82
|
-
|
82
|
+
if 'scheduling_info' in quantized_model_metadata:
|
83
|
+
insert_cut_info_into_graph(quant_graph, quantized_model_metadata, quantized_model)
|
83
84
|
|
84
85
|
# Iterate through each node in the graph
|
85
86
|
for node in quant_graph.nodes:
|
{mct_nightly-2.1.0.20240812.432.dist-info → mct_nightly-2.1.0.20240813.135859.dist-info}/LICENSE.md
RENAMED
File without changes
|
{mct_nightly-2.1.0.20240812.432.dist-info → mct_nightly-2.1.0.20240813.135859.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|