diff --git a/docs/guides/frameworks/pytorch/pytorch_abseil.md b/docs/guides/frameworks/pytorch/pytorch_abseil.md new file mode 100644 index 00000000..3967617b --- /dev/null +++ b/docs/guides/frameworks/pytorch/pytorch_abseil.md @@ -0,0 +1,71 @@ +--- +title: PyTorch Abseil +--- + +The [pytorch_abseil.py](https://github.com/allegroai/clearml/blob/master/examples/frameworks/pytorch/pytorch_abseil.py) +example demonstrates the integration of ClearML into code that uses PyTorch and [`absl.flags`](https://abseil.io/docs/python/guides/flags). + +The example script does the following: +* Trains a simple deep neural network on the PyTorch built-in [MNIST](https://pytorch.org/vision/stable/datasets.html#mnist) + dataset +* Creates an experiment named `pytorch mnist train with abseil`, which is associated with the `examples` project +* ClearML automatically logs the absl.flags, and the models (and their snapshots) created by PyTorch +* Additional metrics are logged by calling the [Logger.report_scalar](../../../references/sdk/logger.md#report_scalar) + method + +## Scalars + +In the example script's `train` function, the following code explicitly reports scalars to **ClearML**: + +```python +Logger.current_logger().report_scalar( + "train", + "loss", + iteration=(epoch * len(train_loader) + batch_idx), + value=loss.item() +) +``` + +In the `test` method, the code explicitly reports `loss` and `accuracy` scalars. + +```python +Logger.current_logger().report_scalar( + "test", "loss", iteration=epoch, value=test_loss +) +Logger.current_logger().report_scalar( + "test", + "accuracy", + iteration=epoch, + value=(correct / len(test_loader.dataset)) +) +``` + +These scalars can be visualized in plots, which appear in the [ClearML web UI](../../../webapp/webapp_overview.md), in +the experiment's page **>** **RESULTS** **>** **SCALARS**. + +![image](../../../img/examples_pytorch_mnist_07.png) + +## Hyperparameters + +ClearML automatically logs command line options defined with abseil flags. They appear in **CONFIGURATIONS** **>** +**HYPER PARAMETERS** **>** **TF_DEFINE**. + +![image](../../../img/examples_pytorch_abseil_params.png) + +## Console + +Text printed to the console for training progress, as well as all other console output, appear in **RESULTS** **>** **CONSOLE**. + +![image](../../../img/examples_pytorch_mnist_06.png) + +## Artifacts + +Models created by the experiment appear in the experiment's **ARTIFACTS** tab. ClearML automatically logs and tracks +models and any snapshots created using PyTorch. + +![image](../../../img/examples_pytorch_abseil_models.png) + +Clicking on the model name takes you to the [model's page](../../../webapp/webapp_model_viewing.md), where you can view +the model's details and access the model. + +![image](../../../img/examples_pytorch_abseil_models_2.png) \ No newline at end of file diff --git a/docs/img/examples_pytorch_abseil_models.png b/docs/img/examples_pytorch_abseil_models.png new file mode 100644 index 00000000..f11e8d6d Binary files /dev/null and b/docs/img/examples_pytorch_abseil_models.png differ diff --git a/docs/img/examples_pytorch_abseil_models_2.png b/docs/img/examples_pytorch_abseil_models_2.png new file mode 100644 index 00000000..f379405c Binary files /dev/null and b/docs/img/examples_pytorch_abseil_models_2.png differ diff --git a/docs/img/examples_pytorch_abseil_params.png b/docs/img/examples_pytorch_abseil_params.png new file mode 100644 index 00000000..5098d024 Binary files /dev/null and b/docs/img/examples_pytorch_abseil_params.png differ diff --git a/sidebars.js b/sidebars.js index c2503f82..2e447db5 100644 --- a/sidebars.js +++ b/sidebars.js @@ -77,9 +77,10 @@ module.exports = { 'guides/frameworks/matplotlib/matplotlib_example', 'guides/frameworks/megengine/megengine_mnist', {'PyTorch': - ['guides/frameworks/pytorch/pytorch_distributed_example', 'guides/frameworks/pytorch/pytorch_matplotlib', - 'guides/frameworks/pytorch/pytorch_mnist', 'guides/frameworks/pytorch/pytorch_tensorboard', 'guides/frameworks/pytorch/pytorch_tensorboardx', - 'guides/frameworks/pytorch/tensorboard_toy_pytorch', + [ + 'guides/frameworks/pytorch/pytorch_distributed_example', 'guides/frameworks/pytorch/pytorch_matplotlib', + 'guides/frameworks/pytorch/pytorch_mnist', 'guides/frameworks/pytorch/pytorch_tensorboard','guides/frameworks/pytorch/tensorboard_toy_pytorch', + 'guides/frameworks/pytorch/pytorch_tensorboardx', 'guides/frameworks/pytorch/pytorch_abseil', {'PyTorch Notebooks': [ {'Audio': ['guides/frameworks/pytorch/notebooks/audio/audio_classification_UrbanSound8K', 'guides/frameworks/pytorch/notebooks/audio/audio_preprocessing_example']}, {'Image': ['guides/frameworks/pytorch/notebooks/image/hyperparameter_search', 'guides/frameworks/pytorch/notebooks/image/image_classification_CIFAR10']},