{"cells": [{"cell_type": "markdown", "id": "b36d598d", "metadata": {"papermill": {"duration": 0.00325, "end_time": "2025-04-03T20:53:24.581994", "exception": false, "start_time": "2025-04-03T20:53:24.578744", "status": "completed"}, "tags": []}, "source": ["\n", "# Introduction to PyTorch Lightning\n", "\n", "* **Author:** Lightning.ai\n", "* **License:** CC BY-SA\n", "* **Generated:** 2025-04-03T20:53:18.167877\n", "\n", "In this notebook, we'll go over the basics of lightning by preparing models to train on the [MNIST Handwritten Digits dataset](https://en.wikipedia.org/wiki/MNIST_database).\n", "\n", "---\n", "Open in [![Open In Colab](data:image/png;base64,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){height=\"20px\" width=\"117px\"}](https://colab.research.google.com/github/PytorchLightning/lightning-tutorials/blob/publication/.notebooks/lightning_examples/mnist-hello-world.ipynb)\n", "\n", "Give us a \u2b50 [on Github](https://www.github.com/Lightning-AI/lightning/)\n", "| Check out [the documentation](https://lightning.ai/docs/)\n", "| Join us [on Discord](https://discord.com/invite/tfXFetEZxv)"]}, {"cell_type": "markdown", "id": "27a8ad74", "metadata": {"papermill": {"duration": 0.00234, "end_time": "2025-04-03T20:53:24.586994", "exception": false, "start_time": "2025-04-03T20:53:24.584654", "status": "completed"}, "tags": []}, "source": ["## Setup\n", "This notebook requires some packages besides pytorch-lightning."]}, {"cell_type": "code", "execution_count": 1, "id": "0def7e9d", "metadata": {"colab": {}, "colab_type": "code", "execution": {"iopub.execute_input": "2025-04-03T20:53:24.592596Z", "iopub.status.busy": "2025-04-03T20:53:24.592415Z", "iopub.status.idle": "2025-04-03T20:53:25.767242Z", "shell.execute_reply": "2025-04-03T20:53:25.765748Z"}, "id": "LfrJLKPFyhsK", "lines_to_next_cell": 0, "papermill": {"duration": 1.179969, "end_time": "2025-04-03T20:53:25.769318", "exception": false, "start_time": "2025-04-03T20:53:24.589349", "status": "completed"}, "tags": []}, "outputs": [{"name": "stdout", "output_type": "stream", "text": ["\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager, possibly rendering your system unusable.It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv. Use the --root-user-action option if you know what you are doing and want to suppress this warning.\u001b[0m\u001b[33m\r\n", "\u001b[0m"]}, {"name": "stdout", "output_type": "stream", "text": ["\r\n", "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m24.2\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m25.0.1\u001b[0m\r\n", "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\r\n"]}], "source": ["! pip install --quiet \"torch>=1.8.1, <2.7\" \"matplotlib\" \"torchmetrics>=1.0, <1.8\" \"pandas\" \"torchmetrics >=0.11.0\" \"numpy <3.0\" \"pytorch-lightning >=2.0,<2.6\" \"torchvision\" \"seaborn\""]}, {"cell_type": "code", "execution_count": 2, "id": "9a148e57", "metadata": {"execution": {"iopub.execute_input": "2025-04-03T20:53:25.776575Z", "iopub.status.busy": "2025-04-03T20:53:25.776033Z", "iopub.status.idle": "2025-04-03T20:53:29.333206Z", "shell.execute_reply": "2025-04-03T20:53:29.331870Z"}, "papermill": {"duration": 3.563765, "end_time": "2025-04-03T20:53:29.335766", "exception": false, "start_time": "2025-04-03T20:53:25.772001", "status": "completed"}, "tags": []}, "outputs": [], "source": ["\n", "# ------------------- Preliminaries ------------------- #\n", "import os\n", "from dataclasses import dataclass\n", "from typing import Tuple\n", "\n", "import pandas as pd\n", "import pytorch_lightning as pl\n", "import seaborn as sn\n", "import torch\n", "from IPython.display import display\n", "from pytorch_lightning.loggers import CSVLogger\n", "from torch import nn\n", "from torch.nn import functional as F\n", "from torch.utils.data import DataLoader, random_split\n", "from torchmetrics import Accuracy\n", "from torchvision import transforms\n", "from torchvision.datasets import MNIST\n", "\n", "# ------------------- Configuration ------------------- #\n", "\n", "\n", "@dataclass\n", "class Config:\n", " \"\"\"Configuration options for the Lightning MNIST example.\n", "\n", " Args:\n", " data_dir : The path to the directory where the MNIST dataset is stored. Defaults to the value of\n", " the 'PATH_DATASETS' environment variable or '.' if not set.\n", "\n", " save_dir : The path to the directory where the training logs will be saved. Defaults to 'logs/'.\n", "\n", " batch_size : The batch size to use during training. Defaults to 256 if a GPU is available,\n", " or 64 otherwise.\n", "\n", " max_epochs : The maximum number of epochs to train the model for. Defaults to 3.\n", "\n", " accelerator : The accelerator to use for training. Can be one of \"cpu\", \"gpu\", \"tpu\", \"ipu\", \"auto\".\n", "\n", " devices : The number of devices to use for training. Defaults to 1.\n", "\n", " Examples:\n", " This dataclass can be used to specify the configuration options for training a PyTorch Lightning model on the\n", " MNIST dataset. A new instance of this dataclass can be created as follows:\n", "\n", " >>> config = Config()\n", "\n", " The default values for each argument are shown in the documentation above. If desired, any of these values can be\n", " overridden when creating a new instance of the dataclass:\n", "\n", " >>> config = Config(batch_size=128, max_epochs=5)\n", "\n", " \"\"\"\n", "\n", " data_dir: str = os.environ.get(\"PATH_DATASETS\", \".\")\n", " save_dir: str = \"logs/\"\n", " batch_size: int = 256 if torch.cuda.is_available() else 64\n", " max_epochs: int = 3\n", " accelerator: str = \"auto\"\n", " devices: int = 1\n", "\n", "\n", "config = Config()"]}, {"cell_type": "markdown", "id": "b7fa54a6", "metadata": {"lines_to_next_cell": 2, "papermill": {"duration": 0.005546, "end_time": "2025-04-03T20:53:29.347310", "exception": false, "start_time": "2025-04-03T20:53:29.341764", "status": "completed"}, "tags": []}, "source": ["## Simplest example\n", "\n", "Here's the simplest most minimal example with just a training loop (no validation, no testing).\n", "\n", "**Keep in Mind** - A `LightningModule` *is* a PyTorch `nn.Module` - it just has a few more helpful features."]}, {"cell_type": "code", "execution_count": 3, "id": "8e611193", "metadata": {"execution": {"iopub.execute_input": "2025-04-03T20:53:29.360014Z", "iopub.status.busy": "2025-04-03T20:53:29.359609Z", "iopub.status.idle": "2025-04-03T20:53:29.371985Z", "shell.execute_reply": "2025-04-03T20:53:29.370820Z"}, "papermill": {"duration": 0.021379, "end_time": "2025-04-03T20:53:29.374211", "exception": false, "start_time": "2025-04-03T20:53:29.352832", "status": "completed"}, "tags": []}, "outputs": [], "source": ["\n", "\n", "class MNISTModel(pl.LightningModule):\n", " \"\"\"A PyTorch Lightning module for classifying images in the MNIST dataset.\n", "\n", " Attributes:\n", " l1 : A linear layer that maps input features to output features.\n", "\n", " Methods:\n", " forward(x):\n", " Performs a forward pass through the model.\n", "\n", " training_step(batch, batch_nb):\n", " Defines a single training step for the model.\n", "\n", " configure_optimizers():\n", " Configures the optimizer to use during training.\n", "\n", " Examples:\n", " The MNISTModel class can be used to create and train a PyTorch Lightning model for classifying images in the MNIST\n", " dataset. To create a new instance of the model, simply instantiate the class:\n", "\n", " >>> model = MNISTModel()\n", "\n", " The model can then be trained using a PyTorch Lightning trainer object:\n", "\n", " >>> trainer = pl.Trainer()\n", " >>> trainer.fit(model)\n", "\n", " \"\"\"\n", "\n", " def __init__(self):\n", " \"\"\"Initializes a new instance of the MNISTModel class.\"\"\"\n", " super().__init__()\n", " self.l1 = torch.nn.Linear(28 * 28, 10)\n", "\n", " def forward(self, x: torch.Tensor) -> torch.Tensor:\n", " \"\"\"Performs a forward pass through the model.\n", "\n", " Args:\n", " x : The input tensor to pass through the model.\n", "\n", " Returns:\n", " activated : The output tensor produced by the model.\n", "\n", " Examples:\n", " >>> model = MNISTModel()\n", " >>> x = torch.randn(1, 1, 28, 28)\n", " >>> output = model(x)\n", "\n", " \"\"\"\n", " flattened = x.view(x.size(0), -1)\n", " hidden = self.l1(flattened)\n", " activated = torch.relu(hidden)\n", "\n", " return activated\n", "\n", " def training_step(self, batch: Tuple[torch.Tensor, torch.Tensor], batch_nb: int) -> torch.Tensor:\n", " \"\"\"Defines a single training step for the model.\n", "\n", " Args:\n", " batch: A tuple containing the input and target tensors for the batch.\n", " batch_nb: The batch number.\n", "\n", " Returns:\n", " torch.Tensor: The loss value for the current batch.\n", "\n", " Examples:\n", " >>> model = MNISTModel()\n", " >>> x = torch.randn(1, 1, 28, 28)\n", " >>> y = torch.tensor([1])\n", " >>> loss = model.training_step((x, y), 0)\n", "\n", " \"\"\"\n", " x, y = batch\n", " loss = F.cross_entropy(self(x), y)\n", " return loss\n", "\n", " def configure_optimizers(self) -> torch.optim.Optimizer:\n", " \"\"\"Configures the optimizer to use during training.\n", "\n", " Returns:\n", " torch.optim.Optimizer: The optimizer to use during training.\n", "\n", " Examples:\n", " >>> model = MNISTModel()\n", " >>> optimizer = model.configure_optimizers()\n", "\n", " \"\"\"\n", " return torch.optim.Adam(self.parameters(), lr=0.02)"]}, {"cell_type": "markdown", "id": "70f96910", "metadata": {"papermill": {"duration": 0.005677, "end_time": "2025-04-03T20:53:29.385581", "exception": false, "start_time": "2025-04-03T20:53:29.379904", "status": "completed"}, "tags": []}, "source": ["By using the `Trainer` you automatically get:\n", "1. Tensorboard logging\n", "2. Model checkpointing\n", "3. Training and validation loop\n", "4. early-stopping"]}, {"cell_type": "code", "execution_count": 4, "id": "36648472", "metadata": {"execution": {"iopub.execute_input": "2025-04-03T20:53:29.399010Z", "iopub.status.busy": "2025-04-03T20:53:29.397956Z", "iopub.status.idle": "2025-04-03T20:53:48.559987Z", "shell.execute_reply": "2025-04-03T20:53:48.558794Z"}, "papermill": {"duration": 19.171314, "end_time": "2025-04-03T20:53:48.562520", "exception": false, "start_time": "2025-04-03T20:53:29.391206", "status": "completed"}, "tags": []}, "outputs": [{"name": "stdout", "output_type": "stream", "text": ["Downloading http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz\n", "Failed to download (trying next):\n", "HTTP Error 404: Not Found\n", "\n", "Downloading https://ossci-datasets.s3.amazonaws.com/mnist/train-images-idx3-ubyte.gz\n", "Downloading https://ossci-datasets.s3.amazonaws.com/mnist/train-images-idx3-ubyte.gz to /__w/11/s/.datasets/MNIST/raw/train-images-idx3-ubyte.gz\n"]}, {"name": "stderr", "output_type": "stream", "text": ["\r", " 0%| | 0/9912422 [00:00 torch.Tensor:\n", " \"\"\"Performs a forward pass through the MLP.\n", "\n", " Args:\n", " x : The input data.\n", "\n", " Returns:\n", " torch.Tensor: The output of the MLP.\n", "\n", " \"\"\"\n", " x = self.model(x)\n", " return F.log_softmax(x, dim=1)\n", "\n", " def training_step(self, batch: Tuple[torch.Tensor, torch.Tensor], batch_nb: int) -> torch.Tensor:\n", " \"\"\"Defines a single training step for the MLP.\n", "\n", " Args:\n", " batch: A tuple containing the input data and target labels.\n", "\n", " batch_idx: The index of the current batch.\n", "\n", " Returns:\n", " (torch.Tensor): The training loss.\n", "\n", " \"\"\"\n", " x, y = batch\n", " logits = self(x)\n", " loss = F.nll_loss(logits, y)\n", " return loss\n", "\n", " def validation_step(self, batch: Tuple[torch.Tensor, torch.Tensor], batch_nb: int) -> None:\n", " \"\"\"Defines a single validation step for the MLP.\n", "\n", " Args:\n", " batch : A tuple containing the input data and target labels.\n", " batch_idx : The index of the current batch.\n", "\n", " \"\"\"\n", " x, y = batch\n", " logits = self(x)\n", " loss = F.nll_loss(logits, y)\n", " preds = torch.argmax(logits, dim=1)\n", " self.val_accuracy.update(preds, y)\n", "\n", " # Calling self.log will surface up scalars for you in TensorBoard\n", " self.log(\"val_loss\", loss, prog_bar=True)\n", " self.log(\"val_acc\", self.val_accuracy, prog_bar=True)\n", "\n", " def test_step(self, batch: Tuple[torch.Tensor, torch.Tensor], batch_nb: int) -> None:\n", " \"\"\"Defines a single testing step for the MLP.\n", "\n", " Args:\n", " batch : A tuple containing the input data and target labels.\n", " batch_idx : The index of the current batch.\n", "\n", " \"\"\"\n", " x, y = batch\n", " logits = self(x)\n", " loss = F.nll_loss(logits, y)\n", " preds = torch.argmax(logits, dim=1)\n", " self.test_accuracy.update(preds, y)\n", "\n", " # Calling self.log will surface up scalars for you in TensorBoard\n", " self.log(\"test_loss\", loss, prog_bar=True)\n", " self.log(\"test_acc\", self.test_accuracy, prog_bar=True)\n", "\n", " def configure_optimizers(self) -> torch.optim.Optimizer:\n", " \"\"\"Configures the optimizer to use for training the MLP.\n", "\n", " Returns:\n", " torch.optim.Optimizer: The optimizer.\n", "\n", " \"\"\"\n", " optimizer = torch.optim.Adam(self.parameters(), lr=self.learning_rate)\n", "\n", " return optimizer\n", "\n", " # ------------------------------------- #\n", " # DATA RELATED HOOKS\n", " # ------------------------------------- #\n", "\n", " def prepare_data(self) -> None:\n", " \"\"\"Downloads the MNIST dataset.\"\"\"\n", " MNIST(self.data_dir, train=True, download=True)\n", "\n", " MNIST(self.data_dir, train=False, download=True)\n", "\n", " def setup(self, stage: str = None) -> None:\n", " \"\"\"Splits the MNIST dataset into train, validation, and test sets.\n", "\n", " Args:\n", " stage : The current stage (either \"fit\" or \"test\"). Defaults to None.\n", "\n", " \"\"\"\n", " # Assign train/val datasets for use in dataloaders\n", " if stage == \"fit\" or stage is None:\n", " mnist_full = MNIST(self.data_dir, train=True, transform=self.transform)\n", "\n", " self.mnist_train, self.mnist_val = random_split(mnist_full, [55000, 5000])\n", "\n", " # Assign test dataset for use in dataloader(s)\n", " if stage == \"test\" or stage is None:\n", " self.mnist_test = MNIST(self.data_dir, train=False, transform=self.transform)\n", "\n", " def train_dataloader(self) -> DataLoader:\n", " \"\"\"Returns a DataLoader for the training set.\n", "\n", " Returns:\n", " DataLoader: The training DataLoader.\n", "\n", " \"\"\"\n", " return DataLoader(self.mnist_train, batch_size=config.batch_size)\n", "\n", " def val_dataloader(self) -> DataLoader:\n", " \"\"\"Returns a DataLoader for the validation set.\n", "\n", " Returns:\n", " DataLoader: The validation DataLoader.\n", "\n", " \"\"\"\n", " return DataLoader(self.mnist_val, batch_size=config.batch_size)\n", "\n", " def test_dataloader(self) -> DataLoader:\n", " \"\"\"Returns a DataLoader for the test set.\n", "\n", " Returns:\n", " DataLoader: The test DataLoader.\n", "\n", " \"\"\"\n", " return DataLoader(self.mnist_test, batch_size=config.batch_size)"]}, {"cell_type": "code", "execution_count": 6, "id": "dd757f00", "metadata": {"execution": {"iopub.execute_input": "2025-04-03T20:53:48.636025Z", "iopub.status.busy": "2025-04-03T20:53:48.635786Z", "iopub.status.idle": "2025-04-03T20:54:17.240844Z", "shell.execute_reply": "2025-04-03T20:54:17.239903Z"}, "papermill": {"duration": 28.613771, "end_time": "2025-04-03T20:54:17.243279", "exception": false, "start_time": "2025-04-03T20:53:48.629508", "status": "completed"}, "tags": []}, "outputs": [{"name": "stderr", "output_type": "stream", "text": ["GPU available: True (cuda), used: True\n"]}, {"name": "stderr", "output_type": "stream", "text": ["TPU available: False, using: 0 TPU cores\n"]}, {"name": "stderr", "output_type": "stream", "text": ["HPU available: False, using: 0 HPUs\n"]}, {"name": "stderr", "output_type": "stream", "text": ["LOCAL_RANK: 0 - CUDA_VISIBLE_DEVICES: [0,1]\n"]}, {"name": "stderr", "output_type": "stream", "text": ["\n", " | Name | Type | Params | Mode \n", "-------------------------------------------------------------\n", "0 | model | Sequential | 55.1 K | train\n", "1 | val_accuracy | MulticlassAccuracy | 0 | train\n", "2 | test_accuracy | MulticlassAccuracy | 0 | train\n", "-------------------------------------------------------------\n", "55.1 K Trainable params\n", "0 Non-trainable params\n", "55.1 K Total params\n", "0.220 Total estimated model params size (MB)\n", "11 Modules in train mode\n", "0 Modules in eval mode\n"]}, {"data": {"application/vnd.jupyter.widget-view+json": {"model_id": "b06e7dc4754045cab50324d13c347f42", "version_major": 2, "version_minor": 0}, "text/plain": ["Sanity Checking: | | 0/? [00:00\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
test_acctest_lossval_accval_loss
epoch
0NaNNaN0.87900.442527
1NaNNaN0.90660.326151
2NaNNaN0.91900.283037
30.92570.255571NaNNaN
\n", ""], "text/plain": [" test_acc test_loss val_acc val_loss\n", "epoch \n", "0 NaN NaN 0.8790 0.442527\n", "1 NaN NaN 0.9066 0.326151\n", "2 NaN NaN 0.9190 0.283037\n", "3 0.9257 0.255571 NaN NaN"]}, "metadata": {}, "output_type": "display_data"}, {"data": {"text/plain": [""]}, "execution_count": 9, "metadata": {}, "output_type": "execute_result"}, {"data": {"image/png": "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kBAADhw44BzZAQgPD+fbb7/l4YcfpkOHDoSFhfHggw/y+OOPV14vRERERC6AntUlIiIipnHJZ3WJiIiIXC4UfERERMQ0FHxERETENBR8RERExDQUfERERKRS7du3D4vFwubNm6u7lLMo+IiIiNQwvXv35qGHHqq0/Y0ePdp54+IrnYKPiIiImIaCj4iISA0yevRoVq9ezaxZs7BYLFgsFvbt28fWrVu57rrr8PHxISQkhBEjRpCenu7cbtGiRbRv3x4vLy9q165N3759ycnJ4emnn+a9997jyy+/dO5v1apVLte1evVqunXrht1up169ekycOJHi4uI/PT7AqlWr6NatG7Vq1SIgIICYmBj2799foc9HwUdERMQVhTnnf5X8/h9zigvP37Yo7/e2hlF+GxfNmjWLHj16MG7cOI4ePcrRo0fx9fXlmmuuoWPHjvz8888sW7aMtLQ05/O2jh49ytChQxk7dizbt29n1apVDB48GMMweOSRR7j11lu59tprnfvr2bOnSzUdPnyY66+/nq5du/LLL7/wxhtv8M477/Dcc8/96fGLi4sZOHAgvXr14tdffyUpKYm77roLi8Xi8mcDFXhkhYiIiKm9UP/8798yH9oOKv37+2mwdva529bvCHetKv079wT8o+nZbZ7OdKk8f39/bDYb3t7ehIaGAvDcc8/RsWNHXnjhBWe7efPmER4ezs6dO8nOzqa4uJjBgwfTqFEjANq3b+9s6+XlRUFBgXN/rnr99dcJDw/ntddew2Kx0KpVK44cOcLjjz/OlClTOHr06DmPn5GRQWZmJjfeeCNNm5Z+Pq1bt65QHaARHxERkRrvl19+YeXKlfj4+DhfrVq1AmD37t1ERkbSp08f2rdvzy233MLbb7/NyZMnK+3427dvp0ePHmVGaWJiYsjOzubQoUPnPX5QUBCjR48mNjaWuLg4Zs2axdGjRytci0Z8REREXPHEkfO/72b//e9rpkDvSedua/nD+IN37T/fdwVlZ2cTFxfHSy+9dNZ79erVw83NjRUrVrB27VqWL1/O7NmzmTx5MuvWraNx48aXpKY/+rPjv/vuuzzwwAMsW7aMhQsX8uSTT7JixQq6d+/u8rE04iMiIuIKW63zv9z+MKbgbjt/Ww+v39taLOW3qUiJNhslJSXO5U6dOpGcnExERATNmjUr86pVq9Z/D28hJiaGZ555hk2bNmGz2fj888/L3Z+rWrduTVJSEn98LvqaNWvw9fWlQYMGf3p8gI4dOzJp0iTWrl1Lu3bt+PjjjytUi4KPiIhIDRMREcG6devYt28f6enp3H///WRkZDB06FB++ukndu/ezbfffsuYMWMoKSlh3bp1vPDCC/z8888cOHCAJUuWcPz4cee1NBEREfz666+kpKSQnp5OUVGRS/Xcd999HDx4kAkTJrBjxw6+/PJLpk6dSnx8PFar9bzH37t3L5MmTSIpKYn9+/ezfPlydu3aVfHrfIwrQGZmpgEYmZmZ1V2KiIjIZS8lJcXo3r274eXlZQDG3r17jZ07dxqDBg0yAgICDC8vL6NVq1bGQw89ZDgcDmPbtm1GbGysUadOHcNutxstWrQwZs+e7dzfsWPHjH79+hk+Pj4GYKxcufK8x9+7d68BGJs2bXKuW7VqldG1a1fDZrMZoaGhxuOPP24UFRUZhmGc9/ipqanGwIEDjXr16hk2m81o1KiRMWXKFKOkpKRCn43FMP4w7nSZysrKwt/fn8zMTPz8/Kq7HBEREblC6VSXiIiImIaCj4iIiLjkhRdeKDM1/o+v6667rrrLOy+d6hIRERGXZGRkkJGRUe57Xl5ehIWFVXFFF0738RERERGXBAUFERQUVN1lVIhOdYmIiIhpKPiIiIiIaSj4iIiIiGko+IiIiIhpKPiIiIiIaSj4iIiISBkRERHMnDmzusu4JBR8RERExDQUfERERMQ0FHxERERqkLfeeov69evjcDjKrB8wYABjx45l9+7dDBgwgJCQEHx8fOjatSvfffddhY83Y8YM2rdvT61atQgPD+e+++4jOzu7TJs1a9bQu3dvvL29CQwMJDY2lpMnTwLgcDj4+9//TrNmzbDb7TRs2JDnn3++wvX8GQUfERERF+QW5ZJblMuZJz7lFeeRW5RLiaMEgIKSAnKLcilyFAFQVFJEblEuhSWFABQ7isktyiW/OB8Ah+Fw7vNcx3DFLbfcwokTJ1i5cqVzXUZGBsuWLWP48OFkZ2dz/fXXk5iYyKZNm7j22muJi4vjwIEDFfo8rFYrr776KsnJybz33nt8//33PPbYY873N2/eTJ8+fWjTpg1JSUn8+OOPxMXFUVJS+nlNmjSJF198kaeeeopt27bx8ccfExISUqFaLohxBcjMzDQAIzMzs7pLERERk2s3v53Rbn4740TeCcMwDGPA5wOMdvPbGeuPrjcMwzAeXvmw0W5+O+Pj7R8bhmEYczbNMdrNb2c8m/SsYRiGsWzvMqPd/HbG6G9GG4ZhGLsydhnt5rcz/vLJX855DFcNGDDAGDt2rHP5zTffNOrXr2+UlJSU275t27bG7NmzncuNGjUyXnnllQod+7PPPjNq167tXB46dKgRExNTbtusrCzDbrcbb7/9doWOVREa8REREalhhg8fzuLFiykoKADgo48+4rbbbsNqtZKdnc0jjzxC69atCQgIwMfHh+3bt1d4xOe7776jT58+hIWF4evry4gRIzhx4gS5uaUjWGdGfMqzfft2CgoKzvn+paCHlIqIiLhg3bB1AHi5ewHwyY2fYBgGdjc7AAl/SeC5mOfwcPMAYFz7cYxuOxp3a+l/cvs07MO6YeuwWkrHHpoENHHu81zHcFVcXByGYbB06VK6du3KDz/8wCuvvALAI488wooVK3j55Zdp1qwZXl5e/PWvf6WwsNDl4+zbt48bb7yRe++9l+eff56goCB+/PFH7rjjDgoLC/H29sbL69x9ON97l4pGfERERFzg7eGNt4c3FosFKA0n3h7euFndALC72fH28MbDWhp8PNw88PbwxuZmA8Dd6o63hzee7p4AWC1W5z7PdQxXeXp6MnjwYD766CM++eQTWrZsSadOnYDSC41Hjx7NoEGDaN++PaGhoezbt69Cx9mwYQMOh4Pp06fTvXt3WrRowZEjR8q06dChA4mJieVu37x5c7y8vM75/qWgER8REZEaaPjw4dx4440kJydz++23O9c3b96cJUuWEBcXh8Vi4amnnjprBtiFatasGUVFRcyePZu4uDjWrFnD3Llzy7SZNGkS7du357777uOee+7BZrOxcuVKbrnlFoKDg3n88cd57LHHsNlsxMTEcPz4cZKTk7njjjsuqv/nohEfERGRGuiaa64hKCiIlJQUhg0b5lw/Y8YMAgMD6dmzJ3FxccTGxjpHg1wVGRnJjBkzeOmll2jXrh0fffQRCQkJZdq0aNGC5cuX88svv9CtWzd69OjBl19+ibt76djLU089xd/+9jemTJlC69atGTJkCMeOHat4x/+ExTAqMFeuimVlZeHv709mZiZ+fn7VXY6IiIhcoTTiIyIiIqah4CMiIiLl+uijj/Dx8Sn31bZt2+our0J0qktE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FuHh4Rw8eNB0/2NW383Xd7P2G8zbd7P2Gy5N3zXiUzNdESM+VquVBg0aVNr+/Pz8TPd/Cmeo7+bru1n7Debtu1n7Debuu1wYXdwsIiIipqHgIyIiIqZhquBjt9uZOnUqdru9ukupcuq7+fpu1n6Deftu1n6DufsurrkiLm4WERERqQymGvERERERc1PwEREREdNQ8BERERHTqHHBZ86cOURERODp6Ul0dDTr168/b/vPPvuMVq1a4enpSfv27fn666+rqNLK50rf58+fj8ViKfPy9PSswmorx7///W/i4uKoX78+FouFL7744k+3WbVqFZ06dcJut9OsWTPmz59/yeu8FFzt+6pVq876zi0WC6mpqVVTcCVJSEiga9eu+Pr6UrduXQYOHEhKSsqfbnel/9Yr0u+a8jt/44036NChg/MePT169OCbb7457zZX+vctl06NCj4LFy4kPj6eqVOnsnHjRiIjI4mNjeXYsWPltl+7di1Dhw7ljjvuYNOmTQwcOJCBAweydevWKq784rnadyi90dfRo0edr/3791dhxZUjJyeHyMhI5syZc0Ht9+7dyw033MDVV1/N5s2beeihh7jzzjv59ttvL3Gllc/Vvp+RkpJS5nuvW7fuJarw0li9ejX3338///nPf1ixYgVFRUX079+fnJycc25TE37rFek31IzfeYMGDXjxxRfZsGEDP//8M9dccw0DBgwgOTm53PY14fuWS8ioQbp162bcf//9zuWSkhKjfv36RkJCQrntb731VuOGG24osy46Otq4++67L2mdl4KrfX/33XcNf3//KqquagDG559/ft42jz32mNG2bdsy64YMGWLExsZewsouvQvp+8qVKw3AOHnyZJXUVFWOHTtmAMbq1avP2aYm/dbPuJB+18Tf+RmBgYHGP//5z3Lfq4nft1SeGjPiU1hYyIYNG+jbt69zndVqpW/fviQlJZW7TVJSUpn2ALGxsedsf7mqSN8BsrOzadSoEeHh4ef911NNUlO+84sRFRVFvXr16NevH2vWrKnuci5aZmYmAEFBQedsUxO/9wvpN9S833lJSQkLFiwgJyeHHj16lNumJn7fUnlqTPBJT0+npKSEkJCQMutDQkLOeQ1DamqqS+0vVxXpe8uWLZk3bx5ffvklH374IQ6Hg549e3Lo0KGqKLnanOs7z8rKIi8vr5qqqhr1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", "text/plain": ["
"]}, "metadata": {}, "output_type": "display_data"}], "source": ["\n", "# Read in the training metrics from the CSV file generated by the logger\n", "metrics = pd.read_csv(f\"{trainer.logger.log_dir}/metrics.csv\")\n", "\n", "# Remove the \"step\" column, which is not needed for our analysis\n", "del metrics[\"step\"]\n", "\n", "# Set the epoch column as the index, for easier plotting\n", "metrics.set_index(\"epoch\", inplace=True)\n", "\n", "# Display the first few rows of the metrics table, excluding any columns with all NaN values\n", "display(metrics.dropna(axis=1, how=\"all\").head())\n", "\n", "# Create a line plot of the training metrics using Seaborn\n", "sn.relplot(data=metrics, kind=\"line\")"]}, {"cell_type": "markdown", "id": "bfb41ed6", "metadata": {"papermill": {"duration": 0.013403, "end_time": "2025-04-03T20:54:19.495910", "exception": false, "start_time": "2025-04-03T20:54:19.482507", "status": "completed"}, "tags": []}, "source": ["## Congratulations - Time to Join the Community!\n", "\n", "Congratulations on completing this notebook tutorial! If you enjoyed this and would like to join the Lightning\n", "movement, you can do so in the following ways!\n", "\n", "### Star [Lightning](https://github.com/Lightning-AI/lightning) on GitHub\n", "The easiest way to help our community is just by starring the GitHub repos! This helps raise awareness of the cool\n", "tools we're building.\n", "\n", "### Join our [Discord](https://discord.com/invite/tfXFetEZxv)!\n", "The best way to keep up to date on the latest advancements is to join our community! Make sure to introduce yourself\n", "and share your interests in `#general` channel\n", "\n", "\n", "### Contributions !\n", "The best way to contribute to our community is to become a code contributor! At any time you can go to\n", "[Lightning](https://github.com/Lightning-AI/lightning) or [Bolt](https://github.com/Lightning-AI/lightning-bolts)\n", "GitHub Issues page and filter for \"good first issue\".\n", "\n", "* [Lightning good first issue](https://github.com/Lightning-AI/lightning/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22)\n", "* [Bolt good first issue](https://github.com/Lightning-AI/lightning-bolts/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22)\n", "* You can also contribute your own notebooks with useful examples !\n", "\n", "### Great thanks from the entire Pytorch Lightning Team for your interest !\n", "\n", "[![Pytorch Lightning](data:image/png;base64,NDA0OiBOb3QgRm91bmQ=){height=\"60px\" width=\"240px\"}](https://pytorchlightning.ai)"]}, {"cell_type": "raw", "metadata": {"raw_mimetype": "text/restructuredtext"}, "source": [".. customcarditem::\n", " :header: Introduction to PyTorch Lightning\n", " :card_description: In this notebook, we'll go over the basics of lightning by preparing models to train on the [MNIST Handwritten Digits dataset](https://en.wikipedia.org/wiki/MNIST_database).\n", " :tags: Image,GPU/TPU,Lightning-Examples"]}], "metadata": {"jupytext": {"cell_metadata_filter": "colab,id,colab_type,-all", "formats": "ipynb,py:percent", "main_language": "python"}, "language_info": {"codemirror_mode": {"name": "ipython", "version": 3}, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.12"}, "papermill": {"default_parameters": {}, "duration": 58.220327, "end_time": "2025-04-03T20:54:21.967627", "environment_variables": {}, "exception": null, "input_path": "lightning_examples/mnist-hello-world/hello-world.ipynb", "output_path": ".notebooks/lightning_examples/mnist-hello-world.ipynb", "parameters": {}, "start_time": "2025-04-03T20:53:23.747300", "version": "2.6.0"}, "widgets": {"application/vnd.jupyter.widget-state+json": {"state": {"08fa5b890f52427cb815649322500771": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": "inline-flex", "flex": null, "flex_flow": "row wrap", "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": "100%"}}, "0b57d3b729fe4dd7b618f05bcbef2612": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": "2", "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "0b7ee95e83294ee4b1b30a282f588d0e": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "0ed2dea8c00c4634b60bcdaef5d11e8a": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": ""}}, "0f9c45b5f1b647d282960edcf6d5ab05": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "0fb55b990a92475383be710a74758088": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_fdb388fc2dcd483c867f1ec3945ac13a", "placeholder": "\u200b", "style": "IPY_MODEL_35a5dd17b5344fbb85ce47ec1c156d17", "tabbable": null, "tooltip": null, "value": "Testing\u2007DataLoader\u20070:\u2007100%"}}, "108ab490e8a7407f8642910faeb079e0": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": ""}}, "132c4159cde94a479e21626dcb4e79de": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "15c1b64638fa46e49df46c6cb49bd5fe": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_c0e23327badf4d4f85bb67f2c0e3b18b", "IPY_MODEL_c332a60c961945f2bfbd595a9df76142", "IPY_MODEL_be304446acbb438b93d8c5be635343dd"], "layout": "IPY_MODEL_eea547d7235745b7a42b6989071b26af", "tabbable": null, "tooltip": null}}, "19eee1ac4491408eb7b1052cbac499d4": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": "2", "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "1a40a4ea6a2543c6b0ff4376ad924fcc": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "1cc2ea91fdd44f1eada275a978b3638e": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "1d67748a08b94f89bd87c26915aba5b9": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "23a320034964420a9bea7e0239beb52a": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "27a2538679a3409789c2c299391d780d": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": "2", "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "2ebc642dcc34421e8c9b28a04f8239e9": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "31c5e979bf4040c9a5447de5fce6c8dd": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_ab80d2ca25ab4fe1a194115ae60ca5ab", "placeholder": "\u200b", "style": "IPY_MODEL_941ac579842f4db0a46b5c1ca10c906e", "tabbable": null, "tooltip": null, "value": "\u20072/2\u2007[00:00<00:00,\u200718.73it/s]"}}, "32dc5742765f4695919fe147205998fe": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "3539b47435bf46a6ba131a5769b1404c": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": "2", "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "35a5dd17b5344fbb85ce47ec1c156d17": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "394994819a6e43609e10a6e94d53874a": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_ddd171a2f1964a41af9fff35433a6c1e", "IPY_MODEL_8bbcad267400471d8abcb99f9acf0331", "IPY_MODEL_74455eefcdde4bb5887f19188a92399a"], "layout": "IPY_MODEL_480c82e08963485785bcf5c6ce8eb92e", "tabbable": null, "tooltip": null}}, "3b53078028eb4bf38c81d0b2b10f1e04": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": "inline-flex", "flex": null, "flex_flow": "row wrap", "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": "100%"}}, "3d692a181b264b979fd3683bf90f5589": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": "2", "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "3ee52374c20342399ae82d6a996c8495": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_698d40ee72e643a8ae122eeb41611776", "placeholder": "\u200b", "style": "IPY_MODEL_e75ae36fcc004a2895858c1c4b653ef7", "tabbable": null, "tooltip": null, "value": "\u20072/2\u2007[00:00<00:00,\u200747.01it/s]"}}, "3f7a2a32592b4bba88f09f94be52a497": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "408fb8c049e24343b6efe7c735c4fc2c": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_0fb55b990a92475383be710a74758088", "IPY_MODEL_bb063412547b4bd8958df33a316242ac", "IPY_MODEL_5324091e2ebc405396a987ee9c754365"], "layout": "IPY_MODEL_c4812dc141584d6ca18e8c50ab709cc9", "tabbable": null, "tooltip": null}}, "417e26c3bfda418e82d744705fb0d7fd": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_19eee1ac4491408eb7b1052cbac499d4", "max": 20.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_829a1d28637f46ad852822db7e007268", "tabbable": null, "tooltip": null, "value": 20.0}}, "43c912919d304fbba9f1940738b760af": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": ""}}, "452a869d16334adcad394dd2b9252c58": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "46d0294217554364aac9e027f77dbb9c": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "47e438a957694db79f0f1a5917943bf3": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": "inline-flex", "flex": null, "flex_flow": "row wrap", "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": "hidden", "width": "100%"}}, "480c82e08963485785bcf5c6ce8eb92e": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": "inline-flex", "flex": null, "flex_flow": "row wrap", "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": "hidden", "width": "100%"}}, "5067aa9fcc5d4342bef3f972b5a3536e": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": ""}}, "5324091e2ebc405396a987ee9c754365": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_682d79e213154ffa98e553ca353ffeb3", "placeholder": "\u200b", "style": "IPY_MODEL_46d0294217554364aac9e027f77dbb9c", "tabbable": null, "tooltip": null, "value": "\u200740/40\u2007[00:01<00:00,\u200729.30it/s]"}}, "5caba23d6cba46668a678c4033edc26c": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_88e690a19e994590a7d633e2a7a54c83", "max": 2.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_c633db76e15b45afa1f8a9f285023652", "tabbable": null, "tooltip": null, "value": 2.0}}, "67358ade57a347f78f5cce81d785c9af": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "682d79e213154ffa98e553ca353ffeb3": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "698d40ee72e643a8ae122eeb41611776": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "74455eefcdde4bb5887f19188a92399a": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_1cc2ea91fdd44f1eada275a978b3638e", "placeholder": "\u200b", "style": "IPY_MODEL_dc414987812e442592ce2a49cce73b26", "tabbable": null, "tooltip": null, "value": "\u200720/20\u2007[00:00<00:00,\u200727.23it/s]"}}, "7d7de8a1e82a4ffaa23a99081a47cad3": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": ""}}, "829a1d28637f46ad852822db7e007268": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": ""}}, "858435a4da12427a844f13e20f396498": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "88e690a19e994590a7d633e2a7a54c83": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": "2", "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "89f0ab030b8a428685e3f2fc35793606": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_2ebc642dcc34421e8c9b28a04f8239e9", "placeholder": "\u200b", "style": "IPY_MODEL_bcf3b287cd0343de8ea53e50704a6d37", "tabbable": null, "tooltip": null, "value": "Sanity\u2007Checking\u2007DataLoader\u20070:\u2007100%"}}, "8bbcad267400471d8abcb99f9acf0331": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_8f1ecfd52b6e4fc38e4f66f06bba42fd", "max": 20.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_7d7de8a1e82a4ffaa23a99081a47cad3", "tabbable": null, "tooltip": null, "value": 20.0}}, "8f1ecfd52b6e4fc38e4f66f06bba42fd": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": "2", "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "8f2d61af170941f4951c1b56d3a41064": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_89f0ab030b8a428685e3f2fc35793606", "IPY_MODEL_f7169e1638624f1193809752eb0133c3", "IPY_MODEL_3ee52374c20342399ae82d6a996c8495"], "layout": "IPY_MODEL_b002498ee4504a20b453eb69f7990e08", "tabbable": null, "tooltip": null}}, "941ac579842f4db0a46b5c1ca10c906e": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "957b67ea403349b797a8735868d30bb8": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_ec1a7ddeb3fa4b9db42d6eceb8f2e8d0", "placeholder": "\u200b", "style": "IPY_MODEL_f66b54a7bc3f43a682ae8ebc3860ad9b", "tabbable": null, "tooltip": null, "value": "Epoch\u20072:\u2007100%"}}, "9aa667a6ceae4dd8ba608eb6adceece3": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_db1345260ec4448aacf242ebe4d41ee7", "placeholder": "\u200b", "style": "IPY_MODEL_baa786045a6c4b56841e77b431f04e39", "tabbable": null, "tooltip": null, "value": "Validation\u2007DataLoader\u20070:\u2007100%"}}, "9cfe602d815c4b14b2fdb00d045a9d23": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_67358ade57a347f78f5cce81d785c9af", "placeholder": "\u200b", "style": "IPY_MODEL_c7cf97ee50d2404fbf4bdd399e18c94e", "tabbable": null, "tooltip": null, "value": "Sanity\u2007Checking\u2007DataLoader\u20070:\u2007100%"}}, "a5cfcc20194644078211a301ab736c21": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_23a320034964420a9bea7e0239beb52a", "placeholder": "\u200b", "style": "IPY_MODEL_3f7a2a32592b4bba88f09f94be52a497", "tabbable": null, "tooltip": null, "value": "Epoch\u20072:\u2007100%"}}, "a765046b4e634fce9691a728a0a8fb4a": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": "2", "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "a7ec9de44cfd4f4292f464e573810d60": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_0b57d3b729fe4dd7b618f05bcbef2612", "max": 215.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_5067aa9fcc5d4342bef3f972b5a3536e", "tabbable": null, "tooltip": null, "value": 215.0}}, "ab80d2ca25ab4fe1a194115ae60ca5ab": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "ab867e58a0bd4096b4eb4490883c009c": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "ac764eec944d419abb915ed77c441432": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_0b7ee95e83294ee4b1b30a282f588d0e", "placeholder": "\u200b", "style": "IPY_MODEL_32dc5742765f4695919fe147205998fe", "tabbable": null, "tooltip": null, "value": "\u2007235/235\u2007[00:05<00:00,\u200743.56it/s,\u2007v_num=0]"}}, "b002498ee4504a20b453eb69f7990e08": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": "inline-flex", "flex": null, "flex_flow": "row wrap", "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": "hidden", "width": "100%"}}, "b06e7dc4754045cab50324d13c347f42": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_9cfe602d815c4b14b2fdb00d045a9d23", "IPY_MODEL_5caba23d6cba46668a678c4033edc26c", "IPY_MODEL_31c5e979bf4040c9a5447de5fce6c8dd"], "layout": "IPY_MODEL_e5c01acabdfc4e1dbffc52b1f4994516", "tabbable": null, "tooltip": null}}, "b3a533554db649cab6393ae980a9a083": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "b78a6bd2f4fd46a283c97b7770ca1691": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_a5cfcc20194644078211a301ab736c21", "IPY_MODEL_e5ddc6dcbec849ac8398b159fe34cbf1", "IPY_MODEL_ac764eec944d419abb915ed77c441432"], "layout": "IPY_MODEL_3b53078028eb4bf38c81d0b2b10f1e04", "tabbable": null, "tooltip": null}}, "baa786045a6c4b56841e77b431f04e39": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "bb063412547b4bd8958df33a316242ac": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_3d692a181b264b979fd3683bf90f5589", "max": 40.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_43c912919d304fbba9f1940738b760af", "tabbable": null, "tooltip": null, "value": 40.0}}, "bcf3b287cd0343de8ea53e50704a6d37": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "be304446acbb438b93d8c5be635343dd": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_b3a533554db649cab6393ae980a9a083", "placeholder": "\u200b", "style": "IPY_MODEL_858435a4da12427a844f13e20f396498", "tabbable": null, "tooltip": null, "value": "\u200720/20\u2007[00:00<00:00,\u200727.34it/s]"}}, "beed699aeea54e46a47611de51b4cd5b": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_957b67ea403349b797a8735868d30bb8", "IPY_MODEL_a7ec9de44cfd4f4292f464e573810d60", "IPY_MODEL_fe8d50a0609840b9b8ed80003255fd2d"], "layout": "IPY_MODEL_08fa5b890f52427cb815649322500771", "tabbable": null, "tooltip": null}}, "c0e23327badf4d4f85bb67f2c0e3b18b": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_ab867e58a0bd4096b4eb4490883c009c", "placeholder": "\u200b", "style": "IPY_MODEL_1a40a4ea6a2543c6b0ff4376ad924fcc", "tabbable": null, "tooltip": null, "value": "Validation\u2007DataLoader\u20070:\u2007100%"}}, "c332a60c961945f2bfbd595a9df76142": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_a765046b4e634fce9691a728a0a8fb4a", "max": 20.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_108ab490e8a7407f8642910faeb079e0", "tabbable": null, "tooltip": null, "value": 20.0}}, "c36b73debc9b44f49af7984a928ba42f": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "c4812dc141584d6ca18e8c50ab709cc9": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": "inline-flex", "flex": null, "flex_flow": "row wrap", "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": "100%"}}, "c633db76e15b45afa1f8a9f285023652": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": ""}}, "c7cf97ee50d2404fbf4bdd399e18c94e": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "d1aff6b314bf4c66bb0063029db12176": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "d612e0efaa5e4ec88703ce7383abdf15": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_0f9c45b5f1b647d282960edcf6d5ab05", "placeholder": "\u200b", "style": "IPY_MODEL_d1aff6b314bf4c66bb0063029db12176", "tabbable": null, "tooltip": null, "value": "\u200720/20\u2007[00:00<00:00,\u200727.15it/s]"}}, "db1345260ec4448aacf242ebe4d41ee7": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "dc414987812e442592ce2a49cce73b26": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "ddd171a2f1964a41af9fff35433a6c1e": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_452a869d16334adcad394dd2b9252c58", "placeholder": "\u200b", "style": "IPY_MODEL_1d67748a08b94f89bd87c26915aba5b9", "tabbable": null, "tooltip": null, "value": "Validation\u2007DataLoader\u20070:\u2007100%"}}, "e437145402f349a594d50fd9e1f7560f": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "ProgressStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "ProgressStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "bar_color": null, "description_width": ""}}, "e4745f2eb188404cbc71cfd57f3e6197": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HBoxModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HBoxModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HBoxView", "box_style": "", "children": ["IPY_MODEL_9aa667a6ceae4dd8ba608eb6adceece3", "IPY_MODEL_417e26c3bfda418e82d744705fb0d7fd", "IPY_MODEL_d612e0efaa5e4ec88703ce7383abdf15"], "layout": "IPY_MODEL_47e438a957694db79f0f1a5917943bf3", "tabbable": null, "tooltip": null}}, "e5c01acabdfc4e1dbffc52b1f4994516": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": "inline-flex", "flex": null, "flex_flow": "row wrap", "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": "hidden", "width": "100%"}}, "e5ddc6dcbec849ac8398b159fe34cbf1": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "success", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_27a2538679a3409789c2c299391d780d", "max": 235.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_0ed2dea8c00c4634b60bcdaef5d11e8a", "tabbable": null, "tooltip": null, "value": 235.0}}, "e75ae36fcc004a2895858c1c4b653ef7": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "ec1a7ddeb3fa4b9db42d6eceb8f2e8d0": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "eea547d7235745b7a42b6989071b26af": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": "inline-flex", "flex": null, "flex_flow": "row wrap", "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": "hidden", "width": "100%"}}, "f66b54a7bc3f43a682ae8ebc3860ad9b": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLStyleModel", "state": {"_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLStyleModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "StyleView", "background": null, "description_width": "", "font_size": null, "text_color": null}}, "f7169e1638624f1193809752eb0133c3": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "FloatProgressModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "FloatProgressModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "ProgressView", "bar_style": "", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_3539b47435bf46a6ba131a5769b1404c", "max": 2.0, "min": 0.0, "orientation": "horizontal", "style": "IPY_MODEL_e437145402f349a594d50fd9e1f7560f", "tabbable": null, "tooltip": null, "value": 2.0}}, "fdb388fc2dcd483c867f1ec3945ac13a": {"model_module": "@jupyter-widgets/base", "model_module_version": "2.0.0", "model_name": "LayoutModel", "state": {"_model_module": "@jupyter-widgets/base", "_model_module_version": "2.0.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "2.0.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border_bottom": null, "border_left": null, "border_right": null, "border_top": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null}}, "fe8d50a0609840b9b8ed80003255fd2d": {"model_module": "@jupyter-widgets/controls", "model_module_version": "2.0.0", "model_name": "HTMLModel", "state": {"_dom_classes": [], "_model_module": "@jupyter-widgets/controls", "_model_module_version": "2.0.0", "_model_name": "HTMLModel", "_view_count": null, "_view_module": "@jupyter-widgets/controls", "_view_module_version": "2.0.0", "_view_name": "HTMLView", "description": "", "description_allow_html": false, "layout": "IPY_MODEL_132c4159cde94a479e21626dcb4e79de", "placeholder": "\u200b", "style": "IPY_MODEL_c36b73debc9b44f49af7984a928ba42f", "tabbable": null, "tooltip": null, "value": "\u2007215/215\u2007[00:09<00:00,\u200722.91it/s,\u2007v_num=0,\u2007val_loss=0.283,\u2007val_acc=0.919]"}}}, "version_major": 2, "version_minor": 0}}}, "nbformat": 4, "nbformat_minor": 5}