From ac61247fa6b8d239bb1b72e93f2d59b77a6539b2 Mon Sep 17 00:00:00 2001 From: Harim Kang Date: Fri, 16 Aug 2024 16:38:21 +0900 Subject: [PATCH] Update docs: Remove DataModuleConfig (#3841) * Update DataModuleConfig docs * Fix typo --- .../auto_configuration.rst | 6 +-- .../class_incremental_sampler.rst | 8 ++-- .../additional_features/fast_data_loading.rst | 6 +-- .../additional_features/tiling.rst | 46 +++++++++---------- .../multi_class_classification.rst | 2 +- .../visual_prompting/fine_tuning.rst | 2 +- .../source/guide/get_started/cli_commands.rst | 6 +-- .../advanced/semi_supervised_learning.rst | 9 ++-- .../how_to_train/action_classification.rst | 7 ++- .../base/how_to_train/action_detection.rst | 7 ++- .../base/how_to_train/anomaly_detection.rst | 7 ++- .../base/how_to_train/classification.rst | 7 ++- .../tutorials/base/how_to_train/detection.rst | 7 ++- .../how_to_train/instance_segmentation.rst | 7 ++- .../how_to_train/semantic_segmentation.rst | 7 ++- .../base/how_to_train/visual_prompting.rst | 11 ++--- 16 files changed, 64 insertions(+), 81 deletions(-) diff --git a/docs/source/guide/explanation/additional_features/auto_configuration.rst b/docs/source/guide/explanation/additional_features/auto_configuration.rst index b45a5ed42dc..946d04c1a7c 100644 --- a/docs/source/guide/explanation/additional_features/auto_configuration.rst +++ b/docs/source/guide/explanation/additional_features/auto_configuration.rst @@ -152,14 +152,12 @@ To use this feature, add the following parameter: .. code-block:: python - from otx.core.config.data import DataModuleConfig from otx.core.data.module import OTXDataModule - data_config = DataModuleConfig(..., auto_num_workers=True) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., auto_num_workers=True) .. tab-item:: CLI .. code-block:: shell - (otx) ...$ otx train ... --data.config.auto_num_workers True + (otx) ...$ otx train ... --data.auto_num_workers True diff --git a/docs/source/guide/explanation/additional_features/class_incremental_sampler.rst b/docs/source/guide/explanation/additional_features/class_incremental_sampler.rst index 6c570695e19..60271f1d15d 100644 --- a/docs/source/guide/explanation/additional_features/class_incremental_sampler.rst +++ b/docs/source/guide/explanation/additional_features/class_incremental_sampler.rst @@ -25,9 +25,9 @@ For default setting, the square root of (number of old data/number of new data) .. code-block:: shell (otx) ...$ otx train ... \ - --data.config.train_subset.sampler.class_path otx.algo.samplers.class_incremental_sampler.ClassIncrementalSampler \ - --data.config.train_subset.sampler.init_args.old_classes '[car,truck]' \ - --data.config.train_subset.sampler.init_args.new_classes '[bus]' + --data.train_subset.sampler.class_path otx.algo.samplers.class_incremental_sampler.ClassIncrementalSampler \ + --data.train_subset.sampler.init_args.old_classes '[car,truck]' \ + --data.train_subset.sampler.init_args.new_classes '[bus]' Balanced Sampler @@ -55,4 +55,4 @@ It helps ensure balanced sampling by class based on the distribution of class la .. code-block:: shell (otx) ...$ otx train ... \ - --data.config.train_subset.sampler.class_path otx.algo.samplers.balanced_sampler.BalancedSampler + --data.train_subset.sampler.class_path otx.algo.samplers.balanced_sampler.BalancedSampler diff --git a/docs/source/guide/explanation/additional_features/fast_data_loading.rst b/docs/source/guide/explanation/additional_features/fast_data_loading.rst index 111412ac969..8b4546c7c56 100644 --- a/docs/source/guide/explanation/additional_features/fast_data_loading.rst +++ b/docs/source/guide/explanation/additional_features/fast_data_loading.rst @@ -27,14 +27,12 @@ training time in those cases. .. code-block:: python - from otx.core.config.data import DataModuleConfig from otx.core.data.module import OTXDataModule - data_config = DataModuleConfig(..., mem_cache_size="8GB") - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., mem_cache_size="8GB") .. tab-item:: CLI .. code-block:: shell - (otx) ...$ otx train ... --data.config.mem_cache_size 8GB + (otx) ...$ otx train ... --data.mem_cache_size 8GB diff --git a/docs/source/guide/explanation/additional_features/tiling.rst b/docs/source/guide/explanation/additional_features/tiling.rst index 6cf8cef1937..e25099eb21c 100644 --- a/docs/source/guide/explanation/additional_features/tiling.rst +++ b/docs/source/guide/explanation/additional_features/tiling.rst @@ -47,7 +47,7 @@ Enable Tiling via OTX Training Currently, tiling is supported for both detection and instance segmentation models. Please refer to :doc:`../algorithms/object_detection/object_detection` and :doc:`../algorithms/segmentation/instance_segmentation` for more details. -To enable tiling in OTX training, set ``data.config.tile_config.enable_tiler`` parameter to 1. Here's an example of enabling tiling: +To enable tiling in OTX training, set ``data.tile_config.enable_tiler`` parameter to 1. Here's an example of enabling tiling: .. tab-set:: @@ -55,17 +55,16 @@ To enable tiling in OTX training, set ``data.config.tile_config.enable_tiler`` p .. code-block:: python - from otx.core.config.data import DataModuleConfig, TileConfig + from otx.core.config.data import TileConfig from otx.core.data.module import OTXDataModule - data_config = DataModuleConfig(..., tile_config=TileConfig(enable_tiler=True)) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., tile_config=TileConfig(enable_tiler=True)) .. tab-item:: CLI .. code-block:: shell - (otx) ...$ otx train ... --data.config.tile_config.enable_tiler True + (otx) ...$ otx train ... --data.tile_config.enable_tiler True Tile Size and Tile Overlap Optimization @@ -86,20 +85,19 @@ Here's an example of setting the object size ratio to 5%: .. code-block:: python - from otx.core.config.data import DataModuleConfig, TileConfig + from otx.core.config.data import TileConfig from otx.core.data.module import OTXDataModule tile_config = TileConfig(enable_tiler=True, enable_adaptive_tiling=True, object_tile_ratio=0.05) - data_config = DataModuleConfig(..., tile_config=tile_config) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., tile_config=tile_config) .. tab-item:: CLI .. code-block:: shell - (otx) ...$ otx train ... --data.config.tile_config.enable_tiler True \ # enable tiling - --data.config.tile_config.enable_adaptive_tiling True \ # enable automatic tiling parameter optimization - --data.config.tile_config.object_tile_ratio 0.05 # set the object size ratio to 5% + (otx) ...$ otx train ... --data.tile_config.enable_tiler True \ # enable tiling + --data.tile_config.enable_adaptive_tiling True \ # enable automatic tiling parameter optimization + --data.tile_config.object_tile_ratio 0.05 # set the object size ratio to 5% After determining the tile size, the tile overlap is computed by dividing the largest object size in the training dataset by the adaptive tile size. @@ -116,7 +114,7 @@ Since training and validation on all tiles from a high-resolution image dataset It's important to note that sampling is applied to the training and validation datasets, not the test dataset. -This can be configured with ``data.config.tile_config.enable_adaptive_tiling`` parameter. Here's an example: +This can be configured with ``data.tile_config.enable_adaptive_tiling`` parameter. Here's an example: .. tab-set:: @@ -124,20 +122,19 @@ This can be configured with ``data.config.tile_config.enable_adaptive_tiling`` p .. code-block:: python - from otx.core.config.data import DataModuleConfig, TileConfig + from otx.core.config.data import TileConfig from otx.core.data.module import OTXDataModule tile_config = TileConfig(enable_tiler=True, enable_adaptive_tiling=True, sampling_ratio=0.5) - data_config = DataModuleConfig(..., tile_config=tile_config) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., tile_config=tile_config) .. tab-item:: CLI .. code-block:: shell - (otx) ...$ otx train ... --data.config.tile_config.enable_tiler True - --data.config.tile_config.enable_adaptive_tiling True - --data.config.tile_config.sampling_ratio 0.5 + (otx) ...$ otx train ... --data.tile_config.enable_tiler True + --data.tile_config.enable_adaptive_tiling True + --data.tile_config.sampling_ratio 0.5 Manual Tiling Parameter Configuration @@ -151,21 +148,20 @@ Users can disable adaptive tiling and customize the tiling process by setting th .. code-block:: python - from otx.core.config.data import DataModuleConfig, TileConfig + from otx.core.config.data import TileConfig from otx.core.data.module import OTXDataModule tile_config = TileConfig(enable_tiler=True, enable_adaptive_tiling=False, tile_size=(512,512), tile_overlap=0.2) - data_config = DataModuleConfig(..., tile_config=tile_config) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., tile_config=tile_config) .. tab-item:: CLI .. code-block:: shell - (otx) ...$ otx train ... --data.config.tile_config.enable_tiler True - --data.config.tile_config.enable_adaptive_tiling False - --data.config.tile_config.tile_size '[512,512]' - --data.config.tile_config.tile_overlap 0.2 + (otx) ...$ otx train ... --data.tile_config.enable_tiler True + --data.tile_config.enable_adaptive_tiling False + --data.tile_config.tile_size '[512,512]' + --data.tile_config.tile_overlap 0.2 By specifying these parameters, automatic tiling parameter optimization is disabled, and the tile size is configured to 512x512 pixels with a 10% overlap between tiles. diff --git a/docs/source/guide/explanation/algorithms/classification/multi_class_classification.rst b/docs/source/guide/explanation/algorithms/classification/multi_class_classification.rst index c7c529941ec..3b724a3ee7d 100644 --- a/docs/source/guide/explanation/algorithms/classification/multi_class_classification.rst +++ b/docs/source/guide/explanation/algorithms/classification/multi_class_classification.rst @@ -159,7 +159,7 @@ You can select the model configuration and run Semi-SL training with the command (otx) ...$ otx train \ --config {semi_sl_config_path} \ --data_root {path_to_labeled_data} \ - --data.config.unlabeled_subset.data_root {path_to_unlabeled_data} + --data.unlabeled_subset.data_root {path_to_unlabeled_data} Below are the results of comparing supervised learning and semi-supervised learning for each label per class on three datasets, three models. diff --git a/docs/source/guide/explanation/algorithms/visual_prompting/fine_tuning.rst b/docs/source/guide/explanation/algorithms/visual_prompting/fine_tuning.rst index 32550c0e479..2f96cc76fa3 100644 --- a/docs/source/guide/explanation/algorithms/visual_prompting/fine_tuning.rst +++ b/docs/source/guide/explanation/algorithms/visual_prompting/fine_tuning.rst @@ -93,5 +93,5 @@ According to datasets, ``learning rate`` and ``batch size`` can be adjusted like (otx) ...$ otx train \ --config \ --data_root \ - --data.config.train_subset.batch_size \ + --data.train_subset.batch_size \ --optimizer.lr diff --git a/docs/source/guide/get_started/cli_commands.rst b/docs/source/guide/get_started/cli_commands.rst index 0b79956025f..a7b03590e60 100644 --- a/docs/source/guide/get_started/cli_commands.rst +++ b/docs/source/guide/get_started/cli_commands.rst @@ -349,12 +349,12 @@ The results will be saved in ``./otx-workspace/`` folder by default. The output You also can visualize the training using ``Tensorboard`` as these logs are located in ``/tensorboard``. .. note:: - ``--data.config.mem_cache_size`` provides in-memory caching for decoded images in main memory. + ``--data.mem_cache_size`` provides in-memory caching for decoded images in main memory. If the batch size is large, such as for classification tasks, or if your dataset contains high-resolution images, image decoding can account for a non-negligible overhead in data pre-processing. This option can be useful for maximizing GPU utilization and reducing model training time in those cases. If your machine has enough main memory, we recommend increasing this value as much as possible. - For example, you can cache approximately 10,000 of ``500x375~500x439`` sized images with ``--data.config.mem_cache_size 8GB``. + For example, you can cache approximately 10,000 of ``500x375~500x439`` sized images with ``--data.mem_cache_size 8GB``. It is also possible to start training by omitting the recipe and just passing the paths to dataset roots, then the :doc:`auto-configuration <../explanation/additional_features/auto_configuration>` will be enabled. Based on the dataset, OpenVINO™ Training Extensions will choose the task type and recipe with the best accuracy/speed trade-off. @@ -363,7 +363,7 @@ For example, that is how you can change the max epochs and the batch size for th .. code-block:: shell - (otx) ...$ otx train ... --data.config.train_subset.batch_size --max_epochs + (otx) ...$ otx train ... --data.train_subset.batch_size --max_epochs .. note:: diff --git a/docs/source/guide/tutorials/advanced/semi_supervised_learning.rst b/docs/source/guide/tutorials/advanced/semi_supervised_learning.rst index c109c899f7e..2ddd460e705 100644 --- a/docs/source/guide/tutorials/advanced/semi_supervised_learning.rst +++ b/docs/source/guide/tutorials/advanced/semi_supervised_learning.rst @@ -127,7 +127,7 @@ Training (otx) ...$ otx train \ --config src/otx/recipe/classification/multi_class_cls/mobilenet_v3_large_semisl.yaml \ --data_root data/flower_photos/labeled \ - --data.config.unlabeled_subset.data_root data/flower_photos/unlabeled + --data.unlabeled_subset.data_root data/flower_photos/unlabeled .. tab-item:: API (from_config) @@ -137,7 +137,7 @@ Training data_root = "data/flower_photos" recipe = "src/otx/recipe/classification/multi_class_cls/mobilenet_v3_large_semisl.yaml" - overrides = {"data.config.unlabeled_subset.data_root": "data/flower_photos/unlabeled"} + overrides = {"data.unlabeled_subset.data_root": "data/flower_photos/unlabeled"} engine = Engine.from_config( config_path=recipe, @@ -152,12 +152,11 @@ Training .. code-block:: python - from otx.core.config.data import DataModuleConfig, UnlabeledDataConfig + from otx.core.config.data import UnlabeledDataConfig from otx.core.data.module import OTXDataModule from otx.engine import Engine - data_config = DataModuleConfig(..., unlabeled_subset=UnlabeledDataConfig(data_root="data/flower_photos/unlabeled", ...)) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., unlabeled_subset=UnlabeledDataConfig(data_root="data/flower_photos/unlabeled", ...)) engine = Engine(..., datamodule=datamodule) diff --git a/docs/source/guide/tutorials/base/how_to_train/action_classification.rst b/docs/source/guide/tutorials/base/how_to_train/action_classification.rst index 4d7ea78228b..aaee056e736 100644 --- a/docs/source/guide/tutorials/base/how_to_train/action_classification.rst +++ b/docs/source/guide/tutorials/base/how_to_train/action_classification.rst @@ -160,19 +160,18 @@ For example, to decrease the batch size to 4, fix the number of epochs to 100, e .. code-block:: shell - (otx) ...$ otx train ... --data.config.train_subset.batch_size 4 \ + (otx) ...$ otx train ... --data.train_subset.batch_size 4 \ --max_epochs 100 .. tab-item:: API .. code-block:: python - from otx.core.config.data import DataModuleConfig, SubsetConfig + from otx.core.config.data import SubsetConfig from otx.core.data.module import OTXDataModule from otx.engine import Engine - data_config = DataModuleConfig(..., train_subset=SubsetConfig(..., batch_size=4)) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., train_subset=SubsetConfig(..., batch_size=4)) engine = Engine(..., datamodule=datamodule) diff --git a/docs/source/guide/tutorials/base/how_to_train/action_detection.rst b/docs/source/guide/tutorials/base/how_to_train/action_detection.rst index 2688898af04..7707e803e62 100644 --- a/docs/source/guide/tutorials/base/how_to_train/action_detection.rst +++ b/docs/source/guide/tutorials/base/how_to_train/action_detection.rst @@ -153,19 +153,18 @@ For example, to decrease the batch size to 4, fix the number of epochs to 100, e .. code-block:: shell - (otx) ...$ otx train ... --data.config.train_subset.batch_size 4 \ + (otx) ...$ otx train ... --data.train_subset.batch_size 4 \ --max_epochs 100 .. tab-item:: API .. code-block:: python - from otx.core.config.data import DataModuleConfig, SubsetConfig + from otx.core.config.data import SubsetConfig from otx.core.data.module import OTXDataModule from otx.engine import Engine - data_config = DataModuleConfig(..., train_subset=SubsetConfig(..., batch_size=4)) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., train_subset=SubsetConfig(..., batch_size=4)) engine = Engine(..., datamodule=datamodule) diff --git a/docs/source/guide/tutorials/base/how_to_train/anomaly_detection.rst b/docs/source/guide/tutorials/base/how_to_train/anomaly_detection.rst index 31bcc365a53..d7e646aaae5 100644 --- a/docs/source/guide/tutorials/base/how_to_train/anomaly_detection.rst +++ b/docs/source/guide/tutorials/base/how_to_train/anomaly_detection.rst @@ -183,19 +183,18 @@ For example, to decrease the batch size to 4, fix the number of epochs to 100, e .. code-block:: shell - (otx) ...$ otx train ... --data.config.train_subset.batch_size 4 \ + (otx) ...$ otx train ... --data.train_subset.batch_size 4 \ --max_epochs 100 .. tab-item:: API .. code-block:: python - from otx.core.config.data import DataModuleConfig, SubsetConfig + from otx.core.config.data import SubsetConfig from otx.core.data.module import OTXDataModule from otx.engine import Engine - data_config = DataModuleConfig(..., train_subset=SubsetConfig(..., batch_size=4)) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., train_subset=SubsetConfig(..., batch_size=4)) engine = Engine(..., datamodule=datamodule) diff --git a/docs/source/guide/tutorials/base/how_to_train/classification.rst b/docs/source/guide/tutorials/base/how_to_train/classification.rst index e8f2019372f..88c3506802f 100644 --- a/docs/source/guide/tutorials/base/how_to_train/classification.rst +++ b/docs/source/guide/tutorials/base/how_to_train/classification.rst @@ -251,19 +251,18 @@ For example, to decrease the batch size to 4, fix the number of epochs to 100, e .. code-block:: shell - (otx) ...$ otx train ... --data.config.train_subset.batch_size 4 \ + (otx) ...$ otx train ... --data.train_subset.batch_size 4 \ --max_epochs 100 .. tab-item:: API .. code-block:: python - from otx.core.config.data import DataModuleConfig, SubsetConfig + from otx.core.config.data import SubsetConfig from otx.core.data.module import OTXDataModule from otx.engine import Engine - data_config = DataModuleConfig(..., train_subset=SubsetConfig(..., batch_size=4)) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., train_subset=SubsetConfig(..., batch_size=4)) engine = Engine(..., datamodule=datamodule) diff --git a/docs/source/guide/tutorials/base/how_to_train/detection.rst b/docs/source/guide/tutorials/base/how_to_train/detection.rst index 04459ba3963..fc21a798a2f 100644 --- a/docs/source/guide/tutorials/base/how_to_train/detection.rst +++ b/docs/source/guide/tutorials/base/how_to_train/detection.rst @@ -263,19 +263,18 @@ For example, to decrease the batch size to 4, fix the number of epochs to 100, e .. code-block:: shell - (otx) ...$ otx train ... --data.config.train_subset.batch_size 4 \ + (otx) ...$ otx train ... --data.train_subset.batch_size 4 \ --max_epochs 100 .. tab-item:: API .. code-block:: python - from otx.core.config.data import DataModuleConfig, SubsetConfig + from otx.core.config.data import SubsetConfig from otx.core.data.module import OTXDataModule from otx.engine import Engine - data_config = DataModuleConfig(..., train_subset=SubsetConfig(..., batch_size=4)) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., train_subset=SubsetConfig(..., batch_size=4)) engine = Engine(..., datamodule=datamodule) diff --git a/docs/source/guide/tutorials/base/how_to_train/instance_segmentation.rst b/docs/source/guide/tutorials/base/how_to_train/instance_segmentation.rst index 44e55b4533a..6af81f2f7ed 100644 --- a/docs/source/guide/tutorials/base/how_to_train/instance_segmentation.rst +++ b/docs/source/guide/tutorials/base/how_to_train/instance_segmentation.rst @@ -277,19 +277,18 @@ For example, to decrease the batch size to 4, fix the number of epochs to 100 an .. code-block:: shell - (otx) ...$ otx train ... --data.config.train_subset.batch_size 4 \ + (otx) ...$ otx train ... --data.train_subset.batch_size 4 \ --max_epochs 100 .. tab-item:: API .. code-block:: python - from otx.core.config.data import DataModuleConfig, SubsetConfig + from otx.core.config.data import SubsetConfig from otx.core.data.module import OTXDataModule from otx.engine import Engine - data_config = DataModuleConfig(..., train_subset=SubsetConfig(..., batch_size=4)) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., train_subset=SubsetConfig(..., batch_size=4)) engine = Engine(..., datamodule=datamodule) diff --git a/docs/source/guide/tutorials/base/how_to_train/semantic_segmentation.rst b/docs/source/guide/tutorials/base/how_to_train/semantic_segmentation.rst index 05f24156c2a..f9190b4bef0 100644 --- a/docs/source/guide/tutorials/base/how_to_train/semantic_segmentation.rst +++ b/docs/source/guide/tutorials/base/how_to_train/semantic_segmentation.rst @@ -196,19 +196,18 @@ For example, to decrease the batch size to 4, fix the number of epochs to 100 an .. code-block:: shell - (otx) ...$ otx train ... --data.config.train_subset.batch_size 4 \ + (otx) ...$ otx train ... --data.train_subset.batch_size 4 \ --max_epochs 100 .. tab-item:: API .. code-block:: python - from otx.core.config.data import DataModuleConfig, SubsetConfig + from otx.core.config.data import SubsetConfig from otx.core.data.module import OTXDataModule from otx.engine import Engine - data_config = DataModuleConfig(..., train_subset=SubsetConfig(..., batch_size=4)) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., train_subset=SubsetConfig(..., batch_size=4)) engine = Engine(..., datamodule=datamodule) diff --git a/docs/source/guide/tutorials/base/how_to_train/visual_prompting.rst b/docs/source/guide/tutorials/base/how_to_train/visual_prompting.rst index 07417045aed..0e17ee2f683 100644 --- a/docs/source/guide/tutorials/base/how_to_train/visual_prompting.rst +++ b/docs/source/guide/tutorials/base/how_to_train/visual_prompting.rst @@ -263,19 +263,18 @@ For example, to increase the batch size to 4, fix the number of epochs to 100, e .. code-block:: shell - (otx) ...$ otx train ... --data.config.train_subset.batch_size 4 \ + (otx) ...$ otx train ... --data.train_subset.batch_size 4 \ --max_epochs 100 .. tab-item:: API .. code-block:: python - from otx.core.config.data import DataModuleConfig, SubsetConfig + from otx.core.config.data import SubsetConfig from otx.core.data.module import OTXDataModule from otx.engine import Engine - data_config = DataModuleConfig(..., train_subset=SubsetConfig(..., batch_size=4)) - datamodule = OTXDataModule(..., config=data_config) + datamodule = OTXDataModule(..., train_subset=SubsetConfig(..., batch_size=4)) engine = Engine(..., datamodule=datamodule) @@ -551,7 +550,7 @@ with OpenVINO™ PTQ. (otx) ...$ otx optimize --work_dir otx-workspace \ --checkpoint otx-workspace/.latest/export/exported_model_decoder.xml \ - --data.config.train_subset.num_workers 0 + --data.train_subset.num_workers 0 ... Statistics collection ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 55/55 • 0:00:35 • 0:00:00 @@ -571,7 +570,7 @@ Please note, that PTQ will take some time without logging to optimize the model. .. note:: Optimization is performed in the following order: image encoder then decoder. Because the optimized image encoder is used for decoder optimization, segmentation fault error can occur when releasing threads and memories after optimization step. - It doesn't affect optimization results, but it's recommended to set ``--data.config.train_subset.num_workers 0`` to avoid this error. + It doesn't affect optimization results, but it's recommended to set ``--data.train_subset.num_workers 0`` to avoid this error. 3. Finally, we can also evaluate the optimized model by passing it to the ``otx test`` function.