From a25e56d452e0aaa6e0eed7d026d556f663544526 Mon Sep 17 00:00:00 2001 From: Andrey Churkin Date: Mon, 1 Jul 2024 07:44:57 +0100 Subject: [PATCH] Support TF 2.15 (#2609) ### Changes Support TF 2.15 ### Reason for changes Support TF 2.15 ### Related tickets 133742 ### Tests pre-commit tests --- .github/workflows/precommit.yml | 2 +- README.md | 2 +- constraints.txt | 3 ++- docs/Installation.md | 4 +++- .../tensorflow/mobilenet_v2/requirements.txt | 3 ++- .../object_detection/architecture/darknet.py | 12 ++++++++++-- examples/tensorflow/requirements.txt | 3 ++- nncf/version.py | 5 +++-- .../2.15/functional_insert_after.dot | 1 + .../2.15/functional_insert_before.dot | 1 + .../2.15/sequential_block_insert_after.dot | 1 + .../2.15/sequential_block_insert_before.dot | 1 + .../2.15/pruning/filter_pruning/densenet121.pb | 1 + .../2.15/pruning/filter_pruning/inception_v3.dot | 1 + .../2.15/pruning/filter_pruning/mobilenet_v1.pb | 1 + .../2.15/pruning/filter_pruning/mobilenet_v2.pb | 1 + .../pruning/filter_pruning/mobilenet_v3_large.pb | 1 + .../pruning/filter_pruning/mobilenet_v3_small.pb | 1 + .../2.15/pruning/filter_pruning/resnet50.pb | 1 + .../2.15/pruning/filter_pruning/retinanet.pb | 1 + .../pruning/filter_pruning/sequential_model.pb | 1 + .../filter_pruning/sequential_no_input_model.pb | 1 + .../pruning/filter_pruning/shared_layers_model.pb | 1 + .../2.15/pruning/filter_pruning/vgg16.pb | 1 + .../2.15/pruning/filter_pruning/yolo_v4.pb | 1 + .../2.15/quantized/hw/CPU/inception_v3.dot | 1 + .../2.15/quantized/hw/CPU/mobilenet_v2.pb | 1 + .../2.15/quantized/hw/CPU/resnet50.pb | 1 + .../2.15/quantized/hw/GPU/inception_v3.dot | 1 + .../2.15/quantized/hw/GPU/mobilenet_v2.pb | 1 + .../2.15/quantized/hw/GPU/resnet50.pb | 1 + .../2.15/quantized/hw/NPU/inception_v3.dot | 1 + .../2.15/quantized/hw/NPU/mobilenet_v2.pb | 1 + .../2.15/quantized/hw/NPU/resnet50.pb | 1 + .../quantized/w_sym_ch_a_asym_t/densenet121.pb | 1 + .../quantized/w_sym_ch_a_asym_t/inception_v3.dot | 1 + .../quantized/w_sym_ch_a_asym_t/mask_rcnn.dot | 1 + .../quantized/w_sym_ch_a_asym_t/mobilenet_v1.pb | 1 + .../quantized/w_sym_ch_a_asym_t/mobilenet_v2.pb | 1 + .../mobilenet_v2_quantize_outputs.pb | 1 + .../w_sym_ch_a_asym_t/mobilenet_v3_large.pb | 1 + .../w_sym_ch_a_asym_t/mobilenet_v3_small.pb | 1 + .../2.15/quantized/w_sym_ch_a_asym_t/resnet50.pb | 1 + .../quantized/w_sym_ch_a_asym_t/resnet50v2.pb | 1 + .../2.15/quantized/w_sym_ch_a_asym_t/retinanet.pb | 1 + .../retinanet_quantize_outputs.pb | 1 + .../w_sym_ch_a_asym_t/sequential_model.pb | 1 + .../sequential_model_quantize_outputs.pb | 1 + .../sequential_no_input_model.pb | 1 + .../w_sym_ch_a_asym_t/shared_layers_model.pb | 1 + .../shared_layers_model_quantize_outputs.pb | 1 + .../2.15/quantized/w_sym_ch_a_asym_t/vgg16.pb | 1 + .../2.15/quantized/w_sym_ch_a_asym_t/yolo_v4.pb | 1 + .../2.15/quantized/w_sym_t_a_sym_t/densenet121.pb | 1 + .../quantized/w_sym_t_a_sym_t/inception_v3.dot | 1 + .../2.15/quantized/w_sym_t_a_sym_t/mask_rcnn.dot | 1 + .../quantized/w_sym_t_a_sym_t/mobilenet_v1.pb | 1 + .../quantized/w_sym_t_a_sym_t/mobilenet_v2.pb | 1 + .../mobilenet_v2_quantize_outputs.pb | 1 + .../w_sym_t_a_sym_t/mobilenet_v3_large.pb | 1 + .../w_sym_t_a_sym_t/mobilenet_v3_small.pb | 1 + .../2.15/quantized/w_sym_t_a_sym_t/resnet50.pb | 1 + .../2.15/quantized/w_sym_t_a_sym_t/resnet50v2.pb | 1 + .../2.15/quantized/w_sym_t_a_sym_t/retinanet.pb | 1 + .../w_sym_t_a_sym_t/retinanet_quantize_outputs.pb | 1 + .../quantized/w_sym_t_a_sym_t/sequential_model.pb | 1 + .../sequential_model_quantize_outputs.pb | 1 + .../w_sym_t_a_sym_t/sequential_no_input_model.pb | 1 + .../w_sym_t_a_sym_t/shared_layers_model.pb | 1 + .../shared_layers_model_quantize_outputs.pb | 1 + .../2.15/quantized/w_sym_t_a_sym_t/vgg16.pb | 1 + .../2.15/quantized/w_sym_t_a_sym_t/yolo_v4.pb | 1 + .../sparsity/magnitude_sparsity/densenet121.pb | 1 + .../sparsity/magnitude_sparsity/inception_v3.dot | 1 + .../sparsity/magnitude_sparsity/mask_rcnn.dot | 1 + .../sparsity/magnitude_sparsity/mobilenet_v1.pb | 1 + .../sparsity/magnitude_sparsity/mobilenet_v2.pb | 1 + .../magnitude_sparsity/mobilenet_v2_slim.dot | 1 + .../magnitude_sparsity/mobilenet_v3_large.pb | 1 + .../magnitude_sparsity/mobilenet_v3_small.pb | 1 + .../2.15/sparsity/magnitude_sparsity/resnet50.pb | 1 + .../sparsity/magnitude_sparsity/resnet50v2.pb | 1 + .../2.15/sparsity/magnitude_sparsity/retinanet.pb | 1 + .../magnitude_sparsity/sequential_model.pb | 1 + .../sequential_no_input_model.pb | 1 + .../magnitude_sparsity/shared_layers_model.pb | 1 + .../2.15/sparsity/magnitude_sparsity/vgg16.pb | 1 + .../2.15/sparsity/magnitude_sparsity/yolo_v4.pb | 1 + .../2.15/sparsity/rb_sparsity/densenet121.dot | 1 + .../sparsity/rb_sparsity/inception_resnet_v2.dot | 1 + .../2.15/sparsity/rb_sparsity/inception_v3.dot | 1 + .../2.15/sparsity/rb_sparsity/mask_rcnn.dot | 1 + .../2.15/sparsity/rb_sparsity/mobilenet_v1.dot | 1 + .../2.15/sparsity/rb_sparsity/mobilenet_v2.dot | 1 + .../sparsity/rb_sparsity/mobilenet_v3_large.dot | 1 + .../sparsity/rb_sparsity/mobilenet_v3_small.dot | 1 + .../2.15/sparsity/rb_sparsity/nasnet_mobile.dot | 1 + .../2.15/sparsity/rb_sparsity/resnet50.dot | 1 + .../2.15/sparsity/rb_sparsity/resnet50v2.dot | 1 + .../2.15/sparsity/rb_sparsity/retinanet.dot | 1 + .../sparsity/rb_sparsity/sequential_model.dot | 1 + .../rb_sparsity/sequential_no_input_model.dot | 1 + .../sparsity/rb_sparsity/shared_layers_model.dot | 1 + .../2.15/sparsity/rb_sparsity/vgg16.dot | 1 + .../2.15/sparsity/rb_sparsity/xception.dot | 1 + .../2.15/sparsity/rb_sparsity/yolo_v4.dot | 1 + tests/tensorflow/requirements.txt | 6 ++---- tests/tensorflow/sparsity/rb/test_components.py | 15 ++++++++++++--- tests/tensorflow/sparsity/rb/test_integration.py | 8 ++++---- tests/tensorflow/test_sanity_sample.py | 2 ++ 110 files changed, 142 insertions(+), 21 deletions(-) create mode 120000 tests/tensorflow/data/model_transormer/2.15/functional_insert_after.dot create mode 120000 tests/tensorflow/data/model_transormer/2.15/functional_insert_before.dot create mode 120000 tests/tensorflow/data/model_transormer/2.15/sequential_block_insert_after.dot create mode 120000 tests/tensorflow/data/model_transormer/2.15/sequential_block_insert_before.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/densenet121.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/inception_v3.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v1.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v2.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v3_large.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v3_small.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/resnet50.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/retinanet.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/sequential_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/sequential_no_input_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/shared_layers_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/vgg16.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/yolo_v4.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/inception_v3.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/mobilenet_v2.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/resnet50.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/inception_v3.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/mobilenet_v2.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/resnet50.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/inception_v3.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/mobilenet_v2.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/resnet50.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/densenet121.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/inception_v3.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mask_rcnn.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v1.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v2.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v2_quantize_outputs.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v3_large.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v3_small.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/resnet50.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/resnet50v2.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/retinanet.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/retinanet_quantize_outputs.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_model_quantize_outputs.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_no_input_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/shared_layers_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/shared_layers_model_quantize_outputs.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/vgg16.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/yolo_v4.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/densenet121.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/inception_v3.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mask_rcnn.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v1.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v2.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v2_quantize_outputs.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v3_large.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v3_small.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/resnet50.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/resnet50v2.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/retinanet.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/retinanet_quantize_outputs.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_model_quantize_outputs.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_no_input_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/shared_layers_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/shared_layers_model_quantize_outputs.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/vgg16.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/yolo_v4.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/densenet121.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/inception_v3.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mask_rcnn.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v1.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v2.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v2_slim.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v3_large.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v3_small.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/resnet50.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/resnet50v2.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/retinanet.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/sequential_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/sequential_no_input_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/shared_layers_model.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/vgg16.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/yolo_v4.pb create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/densenet121.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/inception_resnet_v2.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/inception_v3.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mask_rcnn.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v1.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v2.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v3_large.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v3_small.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/nasnet_mobile.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/resnet50.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/resnet50v2.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/retinanet.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/sequential_model.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/sequential_no_input_model.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/shared_layers_model.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/vgg16.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/xception.dot create mode 120000 tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/yolo_v4.dot diff --git a/.github/workflows/precommit.yml b/.github/workflows/precommit.yml index 6f7ec2906d6..e72b0e32244 100644 --- a/.github/workflows/precommit.yml +++ b/.github/workflows/precommit.yml @@ -208,7 +208,7 @@ jobs: lfs: true - uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0 with: - python-version: 3.8.18 + python-version: 3.9.19 cache: pip - name: Install NNCF and test requirements run: make install-tensorflow-test diff --git a/README.md b/README.md index b4751f20673..66e063ba322 100644 --- a/README.md +++ b/README.md @@ -429,7 +429,7 @@ conda install -c conda-forge nncf - Python\* 3.8 or later - Supported frameworks: - PyTorch\* >=2.2, <2.4 - - TensorFlow\* >=2.8.4, <=2.12.1 + - TensorFlow\* >=2.8.4, <=2.15.1 - ONNX\* ==1.16.0 - OpenVINO\* >=2022.3.0 diff --git a/constraints.txt b/constraints.txt index 297fed7c170..4fdec840b57 100644 --- a/constraints.txt +++ b/constraints.txt @@ -10,7 +10,8 @@ onnx==1.16.0 onnxruntime==1.17.1 # TensorFlow -tensorflow==2.12.1 +tensorflow==2.12.1; python_version < '3.9' +tensorflow==2.15.1; python_version >= '3.9' # Tests and examples pytest==8.0.2 diff --git a/docs/Installation.md b/docs/Installation.md index c6f8512fee8..2215a1025d7 100644 --- a/docs/Installation.md +++ b/docs/Installation.md @@ -43,7 +43,7 @@ as well as the supported versions of Python: | NNCF | OpenVINO | PyTorch | ONNX | TensorFlow | Python | |-----------|------------|----------|----------|------------|--------| -| `develop` | `2024.2.0` | `2.3.0` | `1.16.0` | `2.12.0` | `3.8` | +| `develop` | `2024.2.0` | `2.3.0` | `1.16.0` | `2.15.1` | `3.8`* | | `2.11.0` | `2024.2.0` | `2.3.0` | `1.16.0` | `2.12.0` | `3.8` | | `2.10.0` | `2024.1.0` | `2.2.1` | `1.16.0` | `2.12.0` | `3.8` | | `2.9.0` | `2024.0.0` | `2.1.2` | `1.13.1` | `2.12.0` | `3.8` | @@ -53,3 +53,5 @@ as well as the supported versions of Python: | `2.6.0` | `2023.1.0` | `2.0.1` | `1.13.1` | `2.12.0` | `3.8` | | `2.5.0` | `2023.0.0` | `1.13.1` | `1.13.1` | `2.11.1` | `3.8` | | `2.4.0` | `2022.1.0` | `1.12.1` | `1.12.0` | `2.8.2` | `3.8` | + +> (*) Python 3.9 or higher is required for TensorFlow 2.15.1 diff --git a/examples/post_training_quantization/tensorflow/mobilenet_v2/requirements.txt b/examples/post_training_quantization/tensorflow/mobilenet_v2/requirements.txt index e9753580fb3..53c7fd67f48 100644 --- a/examples/post_training_quantization/tensorflow/mobilenet_v2/requirements.txt +++ b/examples/post_training_quantization/tensorflow/mobilenet_v2/requirements.txt @@ -1,4 +1,5 @@ -tensorflow~=2.12.0 +tensorflow~=2.12.0; python_version < '3.9' +tensorflow~=2.15.1; python_version >= '3.9' tensorflow-datasets tqdm openvino==2024.2 diff --git a/examples/tensorflow/common/object_detection/architecture/darknet.py b/examples/tensorflow/common/object_detection/architecture/darknet.py index 94678c3bda6..2cd9672590b 100644 --- a/examples/tensorflow/common/object_detection/architecture/darknet.py +++ b/examples/tensorflow/common/object_detection/architecture/darknet.py @@ -11,9 +11,12 @@ import tensorflow as tf import tensorflow.keras.backend as K +from packaging import version from examples.tensorflow.common.object_detection.architecture import nn_ops +tensorflow_version = version.parse(version.parse(tf.__version__).base_version) + class CSPDarknet53: """Class to build CSPDarknet53""" @@ -25,12 +28,17 @@ def DarknetConv2D_BN_Mish(self, *args, **kwargs): """Darknet Convolution2D followed by SyncBatchNormalization and Mish.""" no_bias_kwargs = {"use_bias": False} no_bias_kwargs.update(kwargs) + + if tensorflow_version < version.parse("2.15"): + mish = tf.keras.layers.Activation(self.mish) + else: + mish = tf.keras.layers.Activation("mish") + return nn_ops.compose( nn_ops.DarknetConv2D(*args, **no_bias_kwargs), # TODO(nsavelyev) replace by BatchNormalization(synchronized=True) once support for TF < 2.12 is dropped tf.keras.layers.experimental.SyncBatchNormalization(), - # TODO(nsavelyev) change to tf.keras.activations.mish after upgrade to TF 2.13 - tf.keras.layers.Activation(self.mish), + mish, ) def csp_resblock_body(self, x, num_filters, num_blocks, all_narrow=True): diff --git a/examples/tensorflow/requirements.txt b/examples/tensorflow/requirements.txt index 575778387f9..2a7da4ea429 100644 --- a/examples/tensorflow/requirements.txt +++ b/examples/tensorflow/requirements.txt @@ -4,7 +4,8 @@ absl-py==1.0.0 tensorflow tensorflow_datasets==4.2.0 tensorflow_hub -tensorflow_addons==0.20.0 +tensorflow_addons==0.20.0; python_version < '3.9' +tensorflow_addons==0.23.0; python_version >= '3.9' tensorflow-metadata==1.13.0 opencv-python pycocotools==2.0.6 diff --git a/nncf/version.py b/nncf/version.py index 4c17a984b6d..47d51cdc879 100644 --- a/nncf/version.py +++ b/nncf/version.py @@ -11,6 +11,7 @@ __version__ = "2.12.0" + BKC_TORCH_SPEC = "==2.3.*" -BKC_TF_SPEC = "==2.12.*" -STRICT_TF_SPEC = ">=2.8.4,<2.14.0" +BKC_TF_SPEC = "==2.15.*" +STRICT_TF_SPEC = ">=2.8.4,<2.16.0" diff --git a/tests/tensorflow/data/model_transormer/2.15/functional_insert_after.dot b/tests/tensorflow/data/model_transormer/2.15/functional_insert_after.dot new file mode 120000 index 00000000000..e9ea75df18b --- /dev/null +++ b/tests/tensorflow/data/model_transormer/2.15/functional_insert_after.dot @@ -0,0 +1 @@ +../2.12/functional_insert_after.dot \ No newline at end of file diff --git a/tests/tensorflow/data/model_transormer/2.15/functional_insert_before.dot b/tests/tensorflow/data/model_transormer/2.15/functional_insert_before.dot new file mode 120000 index 00000000000..8aa41699d62 --- /dev/null +++ b/tests/tensorflow/data/model_transormer/2.15/functional_insert_before.dot @@ -0,0 +1 @@ +../2.12/functional_insert_before.dot \ No newline at end of file diff --git a/tests/tensorflow/data/model_transormer/2.15/sequential_block_insert_after.dot b/tests/tensorflow/data/model_transormer/2.15/sequential_block_insert_after.dot new file mode 120000 index 00000000000..872db3b1041 --- /dev/null +++ b/tests/tensorflow/data/model_transormer/2.15/sequential_block_insert_after.dot @@ -0,0 +1 @@ +../2.12/sequential_block_insert_after.dot \ No newline at end of file diff --git a/tests/tensorflow/data/model_transormer/2.15/sequential_block_insert_before.dot b/tests/tensorflow/data/model_transormer/2.15/sequential_block_insert_before.dot new file mode 120000 index 00000000000..cee27532357 --- /dev/null +++ b/tests/tensorflow/data/model_transormer/2.15/sequential_block_insert_before.dot @@ -0,0 +1 @@ +../2.12/sequential_block_insert_before.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/densenet121.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/densenet121.pb new file mode 120000 index 00000000000..0ac669d1841 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/densenet121.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/densenet121.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/inception_v3.dot b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/inception_v3.dot new file mode 120000 index 00000000000..cd82798c8f3 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/inception_v3.dot @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/inception_v3.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v1.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v1.pb new file mode 120000 index 00000000000..550fd56ff01 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v1.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/mobilenet_v1.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v2.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v2.pb new file mode 120000 index 00000000000..37740a232c6 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v2.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/mobilenet_v2.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v3_large.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v3_large.pb new file mode 120000 index 00000000000..90eb450309a --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v3_large.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/mobilenet_v3_large.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v3_small.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v3_small.pb new file mode 120000 index 00000000000..18780be0ff5 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/mobilenet_v3_small.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/mobilenet_v3_small.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/resnet50.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/resnet50.pb new file mode 120000 index 00000000000..3859a7048d3 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/resnet50.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/resnet50.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/retinanet.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/retinanet.pb new file mode 120000 index 00000000000..072164a1b69 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/retinanet.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/retinanet.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/sequential_model.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/sequential_model.pb new file mode 120000 index 00000000000..a6cb9b2143a --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/sequential_model.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/sequential_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/sequential_no_input_model.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/sequential_no_input_model.pb new file mode 120000 index 00000000000..7077c7d581a --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/sequential_no_input_model.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/sequential_no_input_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/shared_layers_model.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/shared_layers_model.pb new file mode 120000 index 00000000000..4f53e5ca9ac --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/shared_layers_model.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/shared_layers_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/vgg16.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/vgg16.pb new file mode 120000 index 00000000000..e27f2e831b9 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/vgg16.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/vgg16.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/yolo_v4.pb b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/yolo_v4.pb new file mode 120000 index 00000000000..0bd3dcbd02e --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/pruning/filter_pruning/yolo_v4.pb @@ -0,0 +1 @@ +../../../2.12/pruning/filter_pruning/yolo_v4.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/inception_v3.dot b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/inception_v3.dot new file mode 120000 index 00000000000..d02d556c08f --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/inception_v3.dot @@ -0,0 +1 @@ +../../../../2.12/quantized/hw/CPU/inception_v3.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/mobilenet_v2.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/mobilenet_v2.pb new file mode 120000 index 00000000000..0108fe1cbee --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/mobilenet_v2.pb @@ -0,0 +1 @@ +../../../../2.12/quantized/hw/CPU/mobilenet_v2.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/resnet50.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/resnet50.pb new file mode 120000 index 00000000000..30915b37ed0 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/CPU/resnet50.pb @@ -0,0 +1 @@ +../../../../2.12/quantized/hw/CPU/resnet50.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/inception_v3.dot b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/inception_v3.dot new file mode 120000 index 00000000000..e9adf069d05 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/inception_v3.dot @@ -0,0 +1 @@ +../../../../2.12/quantized/hw/GPU/inception_v3.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/mobilenet_v2.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/mobilenet_v2.pb new file mode 120000 index 00000000000..4b8c101ec2b --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/mobilenet_v2.pb @@ -0,0 +1 @@ +../../../../2.12/quantized/hw/GPU/mobilenet_v2.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/resnet50.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/resnet50.pb new file mode 120000 index 00000000000..9a81042d3f3 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/GPU/resnet50.pb @@ -0,0 +1 @@ +../../../../2.12/quantized/hw/GPU/resnet50.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/inception_v3.dot b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/inception_v3.dot new file mode 120000 index 00000000000..ddc8bd6a95a --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/inception_v3.dot @@ -0,0 +1 @@ +../../../../2.12/quantized/hw/NPU/inception_v3.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/mobilenet_v2.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/mobilenet_v2.pb new file mode 120000 index 00000000000..7f8b3798623 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/mobilenet_v2.pb @@ -0,0 +1 @@ +../../../../2.12/quantized/hw/NPU/mobilenet_v2.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/resnet50.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/resnet50.pb new file mode 120000 index 00000000000..7431d58ae2f --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/hw/NPU/resnet50.pb @@ -0,0 +1 @@ +../../../../2.12/quantized/hw/NPU/resnet50.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/densenet121.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/densenet121.pb new file mode 120000 index 00000000000..5a33cdbc7a8 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/densenet121.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/densenet121.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/inception_v3.dot b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/inception_v3.dot new file mode 120000 index 00000000000..0676f8cf7a7 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/inception_v3.dot @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/inception_v3.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mask_rcnn.dot b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mask_rcnn.dot new file mode 120000 index 00000000000..bfd867dda46 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mask_rcnn.dot @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/mask_rcnn.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v1.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v1.pb new file mode 120000 index 00000000000..a62017786cd --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v1.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/mobilenet_v1.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v2.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v2.pb new file mode 120000 index 00000000000..aeaf575629f --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v2.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/mobilenet_v2.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v2_quantize_outputs.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v2_quantize_outputs.pb new file mode 120000 index 00000000000..794d631cd1d --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v2_quantize_outputs.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/mobilenet_v2_quantize_outputs.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v3_large.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v3_large.pb new file mode 120000 index 00000000000..42adb9e18a2 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v3_large.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/mobilenet_v3_large.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v3_small.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v3_small.pb new file mode 120000 index 00000000000..2b7daddc1b3 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/mobilenet_v3_small.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/mobilenet_v3_small.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/resnet50.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/resnet50.pb new file mode 120000 index 00000000000..e745dc2b112 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/resnet50.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/resnet50.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/resnet50v2.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/resnet50v2.pb new file mode 120000 index 00000000000..05200311a07 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/resnet50v2.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/resnet50v2.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/retinanet.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/retinanet.pb new file mode 120000 index 00000000000..13177bf0d5a --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/retinanet.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/retinanet.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/retinanet_quantize_outputs.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/retinanet_quantize_outputs.pb new file mode 120000 index 00000000000..e6b423b8146 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/retinanet_quantize_outputs.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/retinanet_quantize_outputs.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_model.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_model.pb new file mode 120000 index 00000000000..d1bc7197759 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_model.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/sequential_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_model_quantize_outputs.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_model_quantize_outputs.pb new file mode 120000 index 00000000000..e813fad00ac --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_model_quantize_outputs.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/sequential_model_quantize_outputs.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_no_input_model.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_no_input_model.pb new file mode 120000 index 00000000000..c6d43c379dc --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/sequential_no_input_model.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/sequential_no_input_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/shared_layers_model.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/shared_layers_model.pb new file mode 120000 index 00000000000..5859501afdd --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/shared_layers_model.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/shared_layers_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/shared_layers_model_quantize_outputs.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/shared_layers_model_quantize_outputs.pb new file mode 120000 index 00000000000..6a7734f8bd9 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/shared_layers_model_quantize_outputs.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/shared_layers_model_quantize_outputs.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/vgg16.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/vgg16.pb new file mode 120000 index 00000000000..9c4fbd51839 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/vgg16.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/vgg16.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/yolo_v4.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/yolo_v4.pb new file mode 120000 index 00000000000..7761629cd4d --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_ch_a_asym_t/yolo_v4.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_ch_a_asym_t/yolo_v4.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/densenet121.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/densenet121.pb new file mode 120000 index 00000000000..b4c9c8bf621 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/densenet121.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/densenet121.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/inception_v3.dot b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/inception_v3.dot new file mode 120000 index 00000000000..cb1cc1f6e62 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/inception_v3.dot @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/inception_v3.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mask_rcnn.dot b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mask_rcnn.dot new file mode 120000 index 00000000000..3faeea6fe2c --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mask_rcnn.dot @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/mask_rcnn.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v1.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v1.pb new file mode 120000 index 00000000000..a2323a3ae5b --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v1.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/mobilenet_v1.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v2.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v2.pb new file mode 120000 index 00000000000..82c2fffe73b --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v2.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/mobilenet_v2.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v2_quantize_outputs.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v2_quantize_outputs.pb new file mode 120000 index 00000000000..844f66c5e17 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v2_quantize_outputs.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/mobilenet_v2_quantize_outputs.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v3_large.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v3_large.pb new file mode 120000 index 00000000000..dfe53cfceb6 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v3_large.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/mobilenet_v3_large.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v3_small.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v3_small.pb new file mode 120000 index 00000000000..7df4b37dc48 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/mobilenet_v3_small.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/mobilenet_v3_small.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/resnet50.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/resnet50.pb new file mode 120000 index 00000000000..109b0c9ac01 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/resnet50.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/resnet50.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/resnet50v2.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/resnet50v2.pb new file mode 120000 index 00000000000..dfaba2b631b --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/resnet50v2.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/resnet50v2.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/retinanet.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/retinanet.pb new file mode 120000 index 00000000000..cc2b18cdfa0 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/retinanet.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/retinanet.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/retinanet_quantize_outputs.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/retinanet_quantize_outputs.pb new file mode 120000 index 00000000000..0c1d746d958 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/retinanet_quantize_outputs.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/retinanet_quantize_outputs.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_model.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_model.pb new file mode 120000 index 00000000000..ce8bc90e2d1 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_model.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/sequential_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_model_quantize_outputs.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_model_quantize_outputs.pb new file mode 120000 index 00000000000..4a837109769 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_model_quantize_outputs.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/sequential_model_quantize_outputs.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_no_input_model.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_no_input_model.pb new file mode 120000 index 00000000000..542d67d07b5 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/sequential_no_input_model.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/sequential_no_input_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/shared_layers_model.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/shared_layers_model.pb new file mode 120000 index 00000000000..4e04b40f7fe --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/shared_layers_model.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/shared_layers_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/shared_layers_model_quantize_outputs.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/shared_layers_model_quantize_outputs.pb new file mode 120000 index 00000000000..3ea3545e296 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/shared_layers_model_quantize_outputs.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/shared_layers_model_quantize_outputs.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/vgg16.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/vgg16.pb new file mode 120000 index 00000000000..ebf82f937f8 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/vgg16.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/vgg16.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/yolo_v4.pb b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/yolo_v4.pb new file mode 120000 index 00000000000..b627a242884 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/quantized/w_sym_t_a_sym_t/yolo_v4.pb @@ -0,0 +1 @@ +../../../2.12/quantized/w_sym_t_a_sym_t/yolo_v4.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/densenet121.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/densenet121.pb new file mode 120000 index 00000000000..8bfaecacec2 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/densenet121.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/densenet121.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/inception_v3.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/inception_v3.dot new file mode 120000 index 00000000000..a81e0fc50da --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/inception_v3.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/inception_v3.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mask_rcnn.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mask_rcnn.dot new file mode 120000 index 00000000000..a77e73de065 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mask_rcnn.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/mask_rcnn.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v1.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v1.pb new file mode 120000 index 00000000000..aaac673646c --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v1.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/mobilenet_v1.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v2.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v2.pb new file mode 120000 index 00000000000..85947f19cfb --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v2.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/mobilenet_v2.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v2_slim.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v2_slim.dot new file mode 120000 index 00000000000..bbecea6d5b8 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v2_slim.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/mobilenet_v2_slim.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v3_large.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v3_large.pb new file mode 120000 index 00000000000..b31a7041281 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v3_large.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/mobilenet_v3_large.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v3_small.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v3_small.pb new file mode 120000 index 00000000000..245a6a92498 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/mobilenet_v3_small.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/mobilenet_v3_small.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/resnet50.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/resnet50.pb new file mode 120000 index 00000000000..6621bfc64d1 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/resnet50.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/resnet50.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/resnet50v2.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/resnet50v2.pb new file mode 120000 index 00000000000..3e50cc3498d --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/resnet50v2.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/resnet50v2.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/retinanet.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/retinanet.pb new file mode 120000 index 00000000000..a8d0f5ea168 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/retinanet.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/retinanet.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/sequential_model.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/sequential_model.pb new file mode 120000 index 00000000000..beb67ce3e37 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/sequential_model.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/sequential_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/sequential_no_input_model.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/sequential_no_input_model.pb new file mode 120000 index 00000000000..c77bd74851e --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/sequential_no_input_model.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/sequential_no_input_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/shared_layers_model.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/shared_layers_model.pb new file mode 120000 index 00000000000..170e1c71544 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/shared_layers_model.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/shared_layers_model.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/vgg16.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/vgg16.pb new file mode 120000 index 00000000000..126e16648d1 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/vgg16.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/vgg16.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/yolo_v4.pb b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/yolo_v4.pb new file mode 120000 index 00000000000..e3c751adf71 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/magnitude_sparsity/yolo_v4.pb @@ -0,0 +1 @@ +../../../2.12/sparsity/magnitude_sparsity/yolo_v4.pb \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/densenet121.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/densenet121.dot new file mode 120000 index 00000000000..f91cc6bac4a --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/densenet121.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/densenet121.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/inception_resnet_v2.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/inception_resnet_v2.dot new file mode 120000 index 00000000000..fbd8056431d --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/inception_resnet_v2.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/inception_resnet_v2.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/inception_v3.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/inception_v3.dot new file mode 120000 index 00000000000..c890fe1a3a8 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/inception_v3.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/inception_v3.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mask_rcnn.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mask_rcnn.dot new file mode 120000 index 00000000000..3249a992f7a --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mask_rcnn.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/mask_rcnn.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v1.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v1.dot new file mode 120000 index 00000000000..02dffae448f --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v1.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/mobilenet_v1.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v2.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v2.dot new file mode 120000 index 00000000000..e3436b6ee87 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v2.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/mobilenet_v2.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v3_large.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v3_large.dot new file mode 120000 index 00000000000..a8c63fd9210 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v3_large.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/mobilenet_v3_large.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v3_small.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v3_small.dot new file mode 120000 index 00000000000..a34204e0453 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/mobilenet_v3_small.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/mobilenet_v3_small.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/nasnet_mobile.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/nasnet_mobile.dot new file mode 120000 index 00000000000..9452f1cf54c --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/nasnet_mobile.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/nasnet_mobile.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/resnet50.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/resnet50.dot new file mode 120000 index 00000000000..dee98c70db2 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/resnet50.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/resnet50.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/resnet50v2.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/resnet50v2.dot new file mode 120000 index 00000000000..5f560112cca --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/resnet50v2.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/resnet50v2.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/retinanet.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/retinanet.dot new file mode 120000 index 00000000000..01d00c8f317 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/retinanet.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/retinanet.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/sequential_model.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/sequential_model.dot new file mode 120000 index 00000000000..17966bb2898 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/sequential_model.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/sequential_model.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/sequential_no_input_model.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/sequential_no_input_model.dot new file mode 120000 index 00000000000..be226417685 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/sequential_no_input_model.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/sequential_no_input_model.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/shared_layers_model.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/shared_layers_model.dot new file mode 120000 index 00000000000..d1f2307d2f4 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/shared_layers_model.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/shared_layers_model.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/vgg16.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/vgg16.dot new file mode 120000 index 00000000000..17b5b155fd2 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/vgg16.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/vgg16.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/xception.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/xception.dot new file mode 120000 index 00000000000..0f4f7348f52 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/xception.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/xception.dot \ No newline at end of file diff --git a/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/yolo_v4.dot b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/yolo_v4.dot new file mode 120000 index 00000000000..04357a63b72 --- /dev/null +++ b/tests/tensorflow/data/reference_graphs/2.15/sparsity/rb_sparsity/yolo_v4.dot @@ -0,0 +1 @@ +../../../2.12/sparsity/rb_sparsity/yolo_v4.dot \ No newline at end of file diff --git a/tests/tensorflow/requirements.txt b/tests/tensorflow/requirements.txt index 96c86a0c338..d9924cc6765 100644 --- a/tests/tensorflow/requirements.txt +++ b/tests/tensorflow/requirements.txt @@ -1,6 +1,7 @@ -c ../../constraints.txt PyYAML -tensorflow_addons==0.20.0 +tensorflow_addons==0.20.0; python_version < '3.9' +tensorflow_addons==0.23.0; python_version >= '3.9' tensorflow-metadata==1.13.0 pytest pytest-cov @@ -11,7 +12,4 @@ pydot tensorflow_hub virtualenv -# filelock 3.12.3 requires typing-extensions>=4.7.1, but tensorflow 2.12.1 requires typing-extensions<4.6.0,>=3.6.6 -# TODO: remove after upgrade to TF 2.13 -filelock<3.12.3 openvino diff --git a/tests/tensorflow/sparsity/rb/test_components.py b/tests/tensorflow/sparsity/rb/test_components.py index d4c46b14045..acb9b2db612 100644 --- a/tests/tensorflow/sparsity/rb/test_components.py +++ b/tests/tensorflow/sparsity/rb/test_components.py @@ -73,17 +73,26 @@ def wrapper(*args, **kwargs): return wrapper +@pytest.fixture(scope="module") +def mirrored_strategy(): + gpus = tf.config.list_physical_devices("GPU") + if len(gpus) == 0: + return tf.distribute.get_strategy() + num_of_replicas = 3 + strategy = tf.distribute.MirroredStrategy([f"GPU:{i}" for i in range(num_of_replicas)]) + return strategy + + @pytest.mark.parametrize("quantization", [False, True], ids=["without_quantization", "with_quantization"]) @patch("nncf.tensorflow.sparsity.rb.operation.calc_rb_binary_mask", new=calc_rb_mask_decorator(calc_rb_binary_mask)) -def test_distributed_masks_are_equal(quantization): +def test_distributed_masks_are_equal(quantization, mirrored_strategy): # Clean output file with contextlib.suppress(OSError): os.remove(MASKS_SEEDS_PATH) # Fill file with seeds num_of_replicas = 3 - strategy = tf.distribute.MirroredStrategy([f"GPU:{i}" for i in range(num_of_replicas)]) - with strategy.scope(): + with mirrored_strategy.scope(): config = NNCFConfig.from_json(CONF) if quantization: config.update({"compression": [config["compression"], {"algorithm": "quantization"}]}) diff --git a/tests/tensorflow/sparsity/rb/test_integration.py b/tests/tensorflow/sparsity/rb/test_integration.py index 2c43945fb90..0935b3d2ef3 100644 --- a/tests/tensorflow/sparsity/rb/test_integration.py +++ b/tests/tensorflow/sparsity/rb/test_integration.py @@ -137,10 +137,10 @@ def test_rb_sparse_target_lenet(distributed, deterministic_mode): batch_size = 128 if distributed: - num_of_replicas = 3 - strategy = tf.distribute.MirroredStrategy([f"GPU:{i}" for i in range(num_of_replicas)]) + coeff = 3 + strategy = tf.distribute.MirroredStrategy() else: - num_of_replicas = 1 + coeff = 1 strategy = tf.distribute.OneDeviceStrategy("device:CPU:0") tf.keras.backend.clear_session() @@ -199,7 +199,7 @@ def on_epoch_end(self, epoch, logs=None): compress_model.compile( loss=loss_obj, - optimizer=tf.keras.optimizers.Adam(5e-3 * num_of_replicas), + optimizer=tf.keras.optimizers.Adam(5e-3 * coeff), metrics=metrics, ) diff --git a/tests/tensorflow/test_sanity_sample.py b/tests/tensorflow/test_sanity_sample.py index 429793949c4..fea641326e4 100644 --- a/tests/tensorflow/test_sanity_sample.py +++ b/tests/tensorflow/test_sanity_sample.py @@ -17,6 +17,7 @@ import pytest import tensorflow as tf +from tensorflow.python.eager import context import nncf from examples.common.sample_config import EVAL_ONLY_ERROR_TEXT @@ -215,6 +216,7 @@ def test_model_eval(_config, tmp_path): @pytest.mark.nightly @pytest.mark.dependency(name="tf_test_model_train") def test_model_train(_config, tmp_path, _case_common_dirs): + context._reset_context() if _config["sample_type"] == "segmentation": pytest.skip("ticket #58759") checkpoint_save_dir = os.path.join(_case_common_dirs["checkpoint_save_dir"], _config["tid"])