{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from fastai import *\n", "from fastai.vision import *\n", "from fastai.utils.ipython import *\n", "from fastai.callbacks.tracker import SaveModelCallback\n", "from sklearn.model_selection import StratifiedKFold\n", "import matplotlib.pyplot as plt\n", "from functools import partial" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "%reload_ext autoreload\n", "%autoreload 2\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[PosixPath('../../../Dataset/Herlev Dataset/best-vgg19-herlev-multiclass-5fold.pkl'),\n", " PosixPath('../../../Dataset/Herlev Dataset/best-effb3-herlev-multiclass.pkl'),\n", " PosixPath('../../../Dataset/Herlev Dataset/abnormal_moderate-dysplastic'),\n", " PosixPath('../../../Dataset/Herlev Dataset/normal_superficiel'),\n", " PosixPath('../../../Dataset/Herlev Dataset/abnormal_light-dysplastic'),\n", " PosixPath('../../../Dataset/Herlev Dataset/abnormal_severe-dysplastic'),\n", " PosixPath('../../../Dataset/Herlev Dataset/normal_columnar'),\n", " PosixPath('../../../Dataset/Herlev Dataset/normal_intermediate'),\n", " PosixPath('../../../Dataset/Herlev Dataset/abnormal_carcinoma-in-situ'),\n", " PosixPath('../../../Dataset/Herlev Dataset/models')]" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "path = Path(\".\")\n", "data_path = path / \"..\" / \"..\" / \"..\" / \"Dataset\" / \"Herlev Dataset\"\n", "data_path.ls()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "LabelLists;\n", "\n", "Train: LabelList (917 items)\n", "x: ImageList\n", "Image (3, 83, 146),Image (3, 106, 116),Image (3, 129, 119),Image (3, 108, 110),Image (3, 209, 173)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Valid: LabelList (0 items)\n", "x: ImageList\n", "\n", "y: CategoryList\n", "\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Test: None" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data_init = (ImageList.from_folder(data_path)\n", " .split_none()\n", " .label_from_folder())\n", "data_init" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "StratifiedKFold(n_splits=5, random_state=0, shuffle=True)" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "skf = StratifiedKFold(n_splits=5, shuffle=True, random_state=0)\n", "skf" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "tfms = get_transforms(flip_vert=True, max_warp=0.0, max_rotate=30.0)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "idxs = [[train_idx, val_idx] for train_idx, val_idx in skf.split(data_init.x.items, data_init.y.items)]" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "def model_callback(model, model_name):\n", " return [SaveModelCallback(model, every=\"improvement\", monitor=\"accuracy\", name=model_name)]" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[ .new_type at 0x7f71ac64e378>>,\n", " Precision(average='macro', pos_label=1, eps=1e-09),\n", " Recall(average='macro', pos_label=1, eps=1e-09),\n", " FBeta(average='macro', pos_label=1, eps=1e-09, beta=2),\n", " KappaScore(weights='quadratic')]" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "our_metrics = [accuracy, Precision(average=\"macro\"), Recall(average=\"macro\"), FBeta(average=\"macro\"), KappaScore(weights=\"quadratic\")]\n", "our_metrics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Fold-1" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ImageDataBunch;\n", "\n", "Train: LabelList (733 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Valid: LabelList (184 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Test: None" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fold_idxs = idxs[0]\n", "fold_data = (ImageList.from_folder(data_path)\n", " .split_by_idxs(fold_idxs[0], fold_idxs[1])\n", " .label_from_folder()\n", " .transform(tfms, size=64)\n", " .databunch(bs=64)\n", " .normalize(imagenet_stats))\n", "fold_data" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Downloading: \"https://download.pytorch.org/models/resnet34-333f7ec4.pth\" to /home/fadege/.cache/torch/checkpoints/resnet34-333f7ec4.pth\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "c20ca065096d41d798157dbb2b7422f2", "version_major": 2, "version_minor": 0 }, "text/plain": [ "HBox(children=(FloatProgress(value=0.0, max=87306240.0), HTML(value='')))" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n" ] }, { "data": { "text/plain": [ "Learner(data=ImageDataBunch;\n", "\n", "Train: LabelList (733 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Valid: LabelList (184 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Test: None, model=Sequential(\n", " (0): Sequential(\n", " (0): Conv2d(3, 64, kernel_size=(7, 7), stride=(2, 2), padding=(3, 3), bias=False)\n", " (1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (2): ReLU(inplace=True)\n", " (3): MaxPool2d(kernel_size=3, stride=2, padding=1, dilation=1, ceil_mode=False)\n", " (4): Sequential(\n", " (0): BasicBlock(\n", " (conv1): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (1): BasicBlock(\n", " (conv1): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (2): BasicBlock(\n", " (conv1): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (5): Sequential(\n", " (0): BasicBlock(\n", " (conv1): Conv2d(64, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (downsample): Sequential(\n", " (0): Conv2d(64, 128, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (1): BasicBlock(\n", " (conv1): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (2): BasicBlock(\n", " (conv1): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (3): BasicBlock(\n", " (conv1): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (6): Sequential(\n", " (0): BasicBlock(\n", " (conv1): Conv2d(128, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (downsample): Sequential(\n", " (0): Conv2d(128, 256, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (1): BasicBlock(\n", " (conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (2): BasicBlock(\n", " (conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (3): BasicBlock(\n", " (conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (4): BasicBlock(\n", " (conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (5): BasicBlock(\n", " (conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (7): Sequential(\n", " (0): BasicBlock(\n", " (conv1): Conv2d(256, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (downsample): Sequential(\n", " (0): Conv2d(256, 512, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (1): BasicBlock(\n", " (conv1): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (2): BasicBlock(\n", " (conv1): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " )\n", " (1): Sequential(\n", " (0): AdaptiveConcatPool2d(\n", " (ap): AdaptiveAvgPool2d(output_size=1)\n", " (mp): AdaptiveMaxPool2d(output_size=1)\n", " )\n", " (1): Flatten()\n", " (2): BatchNorm1d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (3): Dropout(p=0.25, inplace=False)\n", " (4): Linear(in_features=1024, out_features=512, bias=True)\n", " (5): ReLU(inplace=True)\n", " (6): BatchNorm1d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (7): Dropout(p=0.5, inplace=False)\n", " (8): Linear(in_features=512, out_features=7, bias=True)\n", " )\n", "), opt_func=functools.partial(, betas=(0.9, 0.99)), loss_func=FlattenedLoss of CrossEntropyLoss(), metrics=[, Precision(average='macro', pos_label=1, eps=1e-09), Recall(average='macro', pos_label=1, eps=1e-09), FBeta(average='macro', pos_label=1, eps=1e-09, beta=2), KappaScore(weights='quadratic')], true_wd=True, bn_wd=True, wd=0.01, train_bn=True, path=PosixPath('../../../Dataset/Herlev Dataset'), model_dir='models', callback_fns=[functools.partial(, add_time=True, silent=False)], callbacks=[MixedPrecision\n", "learn: Learner(data=ImageDataBunch;\n", "\n", "Train: LabelList (733 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Valid: LabelList (184 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Test: None, model=Sequential(\n", " (0): Sequential(\n", " (0): Conv2d(3, 64, kernel_size=(7, 7), stride=(2, 2), padding=(3, 3), bias=False)\n", " (1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (2): ReLU(inplace=True)\n", " (3): MaxPool2d(kernel_size=3, stride=2, padding=1, dilation=1, ceil_mode=False)\n", " (4): Sequential(\n", " (0): BasicBlock(\n", " (conv1): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (1): BasicBlock(\n", " (conv1): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (2): BasicBlock(\n", " (conv1): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (5): Sequential(\n", " (0): BasicBlock(\n", " (conv1): Conv2d(64, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (downsample): Sequential(\n", " (0): Conv2d(64, 128, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (1): BasicBlock(\n", " (conv1): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (2): BasicBlock(\n", " (conv1): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (3): BasicBlock(\n", " (conv1): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (6): Sequential(\n", " (0): BasicBlock(\n", " (conv1): Conv2d(128, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (downsample): Sequential(\n", " (0): Conv2d(128, 256, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (1): BasicBlock(\n", " (conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (2): BasicBlock(\n", " (conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (3): BasicBlock(\n", " (conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (4): BasicBlock(\n", " (conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (5): BasicBlock(\n", " (conv1): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (7): Sequential(\n", " (0): BasicBlock(\n", " (conv1): Conv2d(256, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (downsample): Sequential(\n", " (0): Conv2d(256, 512, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " (1): BasicBlock(\n", " (conv1): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " (2): BasicBlock(\n", " (conv1): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (relu): ReLU(inplace=True)\n", " (conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " )\n", " )\n", " )\n", " (1): Sequential(\n", " (0): AdaptiveConcatPool2d(\n", " (ap): AdaptiveAvgPool2d(output_size=1)\n", " (mp): AdaptiveMaxPool2d(output_size=1)\n", " )\n", " (1): Flatten()\n", " (2): BatchNorm1d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (3): Dropout(p=0.25, inplace=False)\n", " (4): Linear(in_features=1024, out_features=512, bias=True)\n", " (5): ReLU(inplace=True)\n", " (6): BatchNorm1d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (7): Dropout(p=0.5, inplace=False)\n", " (8): Linear(in_features=512, out_features=7, bias=True)\n", " )\n", "), opt_func=functools.partial(, betas=(0.9, 0.99)), loss_func=FlattenedLoss of CrossEntropyLoss(), metrics=[, Precision(average='macro', pos_label=1, eps=1e-09), Recall(average='macro', pos_label=1, eps=1e-09), FBeta(average='macro', pos_label=1, eps=1e-09, beta=2), KappaScore(weights='quadratic')], true_wd=True, bn_wd=True, wd=0.01, train_bn=True, path=PosixPath('../../../Dataset/Herlev Dataset'), model_dir='models', callback_fns=[functools.partial(, add_time=True, silent=False)], callbacks=[...], layer_groups=[Sequential(\n", " (0): Conv2d(3, 64, kernel_size=(7, 7), stride=(2, 2), padding=(3, 3), bias=False)\n", " (1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (2): ReLU(inplace=True)\n", " (3): MaxPool2d(kernel_size=3, stride=2, padding=1, dilation=1, ceil_mode=False)\n", " (4): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (5): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (6): ReLU(inplace=True)\n", " (7): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (8): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (9): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (10): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (11): ReLU(inplace=True)\n", " (12): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (13): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (14): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (15): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (16): ReLU(inplace=True)\n", " (17): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (18): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (19): Conv2d(64, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (20): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (21): ReLU(inplace=True)\n", " (22): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (23): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (24): Conv2d(64, 128, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (25): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (26): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (27): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (28): ReLU(inplace=True)\n", " (29): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (30): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (31): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (32): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (33): ReLU(inplace=True)\n", " (34): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (35): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (36): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (37): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (38): ReLU(inplace=True)\n", " (39): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (40): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", "), Sequential(\n", " (0): Conv2d(128, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (2): ReLU(inplace=True)\n", " (3): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (4): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (5): Conv2d(128, 256, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (6): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (7): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (8): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (9): ReLU(inplace=True)\n", " (10): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (11): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (12): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (13): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (14): ReLU(inplace=True)\n", " (15): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (16): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (17): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (18): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (19): ReLU(inplace=True)\n", " (20): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (21): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (22): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (23): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (24): ReLU(inplace=True)\n", " (25): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (26): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (27): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (28): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (29): ReLU(inplace=True)\n", " (30): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (31): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (32): Conv2d(256, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (33): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (34): ReLU(inplace=True)\n", " (35): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (36): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (37): Conv2d(256, 512, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (38): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (39): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (40): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (41): ReLU(inplace=True)\n", " (42): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (43): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (44): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (45): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (46): ReLU(inplace=True)\n", " (47): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (48): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", "), Sequential(\n", " (0): AdaptiveAvgPool2d(output_size=1)\n", " (1): AdaptiveMaxPool2d(output_size=1)\n", " (2): Flatten()\n", " (3): BatchNorm1d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (4): Dropout(p=0.25, inplace=False)\n", " (5): Linear(in_features=1024, out_features=512, bias=True)\n", " (6): ReLU(inplace=True)\n", " (7): BatchNorm1d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (8): Dropout(p=0.5, inplace=False)\n", " (9): Linear(in_features=512, out_features=7, bias=True)\n", ")], add_time=True, silent=False)\n", "loss_scale: 65536\n", "max_noskip: 1000\n", "dynamic: True\n", "clip: None\n", "flat_master: False\n", "max_scale: 16777216\n", "loss_fp32: True], layer_groups=[Sequential(\n", " (0): Conv2d(3, 64, kernel_size=(7, 7), stride=(2, 2), padding=(3, 3), bias=False)\n", " (1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (2): ReLU(inplace=True)\n", " (3): MaxPool2d(kernel_size=3, stride=2, padding=1, dilation=1, ceil_mode=False)\n", " (4): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (5): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (6): ReLU(inplace=True)\n", " (7): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (8): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (9): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (10): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (11): ReLU(inplace=True)\n", " (12): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (13): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (14): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (15): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (16): ReLU(inplace=True)\n", " (17): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (18): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (19): Conv2d(64, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (20): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (21): ReLU(inplace=True)\n", " (22): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (23): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (24): Conv2d(64, 128, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (25): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (26): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (27): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (28): ReLU(inplace=True)\n", " (29): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (30): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (31): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (32): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (33): ReLU(inplace=True)\n", " (34): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (35): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (36): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (37): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (38): ReLU(inplace=True)\n", " (39): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (40): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", "), Sequential(\n", " (0): Conv2d(128, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (2): ReLU(inplace=True)\n", " (3): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (4): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (5): Conv2d(128, 256, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (6): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (7): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (8): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (9): ReLU(inplace=True)\n", " (10): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (11): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (12): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (13): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (14): ReLU(inplace=True)\n", " (15): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (16): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (17): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (18): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (19): ReLU(inplace=True)\n", " (20): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (21): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (22): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (23): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (24): ReLU(inplace=True)\n", " (25): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (26): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (27): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (28): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (29): ReLU(inplace=True)\n", " (30): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (31): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (32): Conv2d(256, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n", " (33): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (34): ReLU(inplace=True)\n", " (35): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (36): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (37): Conv2d(256, 512, kernel_size=(1, 1), stride=(2, 2), bias=False)\n", " (38): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (39): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (40): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (41): ReLU(inplace=True)\n", " (42): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (43): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (44): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (45): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (46): ReLU(inplace=True)\n", " (47): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n", " (48): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", "), Sequential(\n", " (0): AdaptiveAvgPool2d(output_size=1)\n", " (1): AdaptiveMaxPool2d(output_size=1)\n", " (2): Flatten()\n", " (3): BatchNorm1d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (4): Dropout(p=0.25, inplace=False)\n", " (5): Linear(in_features=1024, out_features=512, bias=True)\n", " (6): ReLU(inplace=True)\n", " (7): BatchNorm1d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", " (8): Dropout(p=0.5, inplace=False)\n", " (9): Linear(in_features=512, out_features=7, bias=True)\n", ")], add_time=True, silent=False)" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "learner = cnn_learner(fold_data, models.resnet34, metrics=our_metrics).to_fp16()\n", "learner" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", " \n", " 80.00% [8/10 00:10<00:02]\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
03.095633#na#00:01
13.171250#na#00:01
23.175897#na#00:01
33.110188#na#00:01
42.935321#na#00:01
52.665115#na#00:01
62.509602#na#00:01
76.744055#na#00:01

\n", "\n", "

\n", " \n", " \n", " 0.00% [0/11 00:00<00:00]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learner.lr_find()\n", "learner.recorder.plot()" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
02.7971821.9030670.3423910.3550640.4124270.3840750.46448200:02
12.4745231.5385380.4565220.4757330.5022150.4852090.58486500:01
22.1898041.5659260.5108700.5349570.5557390.5457610.61664100:02
32.0498431.6413670.5271740.5583700.5671240.5633230.62133400:02
41.9318671.8449890.5054350.5438670.5335670.5348130.60053000:02
51.8232981.7201230.4565220.5153430.4886280.4907760.60398700:01
61.7195801.5852130.5000000.5498720.5436510.5441750.61627400:02
71.6389861.5539980.4619570.5015690.4997330.4985130.65577500:02
81.5860741.5438120.4565220.5022570.4896000.4904350.62933200:02
91.4974531.5409240.5000000.5587490.5352340.5374960.69578100:02
101.4518331.6120370.4673910.5368480.4847850.4848970.64181000:02
111.3950571.5550860.5326090.5688710.5611770.5599500.65984500:02
121.3631541.4297470.5163040.5568490.5477180.5470330.64485800:02
131.3212341.3615000.5054350.5622650.5324450.5345630.64083800:02
141.2806611.4167390.5652170.6156940.6051970.6045440.74238900:02
151.2551781.4301140.5434780.6099850.5789280.5789560.71253300:02
161.2147551.3726790.5163040.5839630.5446720.5472640.65147700:02
171.1782081.3751030.5326090.6072730.5635060.5692170.69896900:02
181.1460801.4125640.5380430.6120790.5523340.5570210.70573300:02
191.1350321.2373140.5108700.5669010.5317500.5353600.70404300:02
201.1048281.3651990.5326090.6032270.5698640.5725850.73198700:02
211.0781001.3036750.5434780.6163290.5738940.5802170.72207600:02
221.0825621.3236660.5652170.6244570.5859700.5897760.76161800:02
231.0508991.2357900.5380430.6036170.5663920.5715150.71579100:02
241.0086111.2180770.5869570.6283430.6019560.6023200.71082400:02
250.9721171.2391650.5543480.6007450.5737060.5764850.70732500:02
260.9417141.2401290.5489130.6025020.5727460.5758830.72151200:02
270.9148511.1971610.5489130.5823160.5682640.5670920.73541200:02
280.8754141.2049120.5760870.6268860.5990820.6031850.71416000:02
290.8373151.2072800.5760870.6241430.6016760.6028630.70460300:02
300.8224231.1871050.6141300.6631800.6250100.6282000.74271300:01
310.7943021.1961490.6032610.6538320.6185850.6211840.74586600:02
320.7751271.1945960.5706520.6252620.5967160.5994870.74053800:02
330.7670631.2111800.5815220.6274790.6009580.6045440.72906100:02
340.7508161.2049700.5706520.6121260.5850910.5884780.73993700:02
350.7413421.2135540.5652170.6054180.5803290.5833970.73140900:02
360.7370561.2080020.5652170.6037630.5812300.5842060.72476500:02
370.7358251.2057600.5652170.6079230.5821310.5855330.73788900:02
380.7292441.1923870.5652170.6097370.5821310.5858570.74043000:02
390.7129051.1889260.5652170.6222580.5875730.5924060.74474900:02
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Better model found at epoch 0 with accuracy value: 0.34239131212234497.\n", "Better model found at epoch 1 with accuracy value: 0.45652174949645996.\n", "Better model found at epoch 2 with accuracy value: 0.510869562625885.\n", "Better model found at epoch 3 with accuracy value: 0.5271739363670349.\n", "Better model found at epoch 11 with accuracy value: 0.532608687877655.\n", "Better model found at epoch 14 with accuracy value: 0.5652173757553101.\n", "Better model found at epoch 24 with accuracy value: 0.5869565010070801.\n", "Better model found at epoch 30 with accuracy value: 0.614130437374115.\n" ] } ], "source": [ "learner.fit_one_cycle(40, max_lr=slice(1e-02), callbacks=model_callback(learner, \"best-rn34-herlev-multiclass-fold1-stage1\"))\n", "learner.save(\"last-rn34-herlev-multiclass-fold1-stage1\")" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", " \n", " 70.00% [7/10 00:09<00:04]\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.725983#na#00:01
10.734280#na#00:01
20.755699#na#00:01
30.743621#na#00:01
40.804832#na#00:01
51.085819#na#00:01
61.526755#na#00:01

\n", "\n", "

\n", " \n", " \n", " 54.55% [6/11 00:01<00:00 2.4861]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learner.load(\"best-rn34-herlev-multiclass-fold1-stage1\")\n", "learner = to_fp16(learner)\n", "learner.unfreeze()\n", "learner.lr_find()\n", "learner.recorder.plot()" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.6716201.2048340.5815220.6230850.6015370.6024770.72138800:02
10.6904481.2063180.5652170.6098440.5883510.5898970.72801400:02
20.6913531.1815690.5597830.6034810.5777280.5796970.74078000:02
30.6813671.1539340.5706520.6223460.5979610.6008320.75181100:02
40.6644901.1072590.5923910.6145280.6122690.6104870.74684700:02
50.6472531.1411050.6086960.6545600.6209510.6249920.75824900:02
60.6340091.2513170.6195650.6679580.6457400.6484510.76615500:02
70.6159291.4269520.6250000.6646130.6366280.6395220.77339500:02
80.5938821.4169110.5815220.6379300.6242790.6212940.70572600:02
90.6118281.6616870.5543480.6100690.6008830.5929200.65887600:02
100.6123551.4289440.5923910.6359040.6058520.6089340.69493700:02
110.5949861.3551560.6086960.6513940.6524910.6444510.76164000:02
120.5877771.4391120.6576090.7128210.6800450.6760110.77549900:02
130.5755341.0618540.5815220.6114100.6008050.5963120.79663400:02
140.5543381.0051330.6521740.6974620.6826990.6799320.76379100:02
150.5212091.2319430.6086960.6432700.6335630.6318160.75820700:02
160.5009611.2342960.6304350.6871980.6688140.6665700.79004000:02
170.4780401.1765260.6304350.6647320.6817200.6752510.79121000:02
180.4528601.1735620.6358700.6985020.6804760.6773150.80951500:02
190.4355011.1082930.6032610.6431330.6554070.6513450.76769300:02
200.4146601.3010460.6467390.6953980.6773580.6786090.77970200:02
210.3982711.2077770.6250000.6772830.6628300.6633750.76062900:02
220.3743961.3067880.6086960.6448700.6253030.6242770.78289800:02
230.3562431.2333440.6413040.7003660.6707200.6750990.80015000:02
240.3286811.3281900.6250000.6813640.6699580.6694160.78078500:02
250.3072661.3418160.6086960.6662180.6560090.6554400.77858000:02
260.2888761.3354420.6304350.6858330.6637900.6666060.81637200:02
270.2796541.2430840.6250000.6854550.6548450.6582370.79047400:02
280.2584831.1976860.6413040.7068360.6711160.6756670.81218400:02
290.2402691.1974900.6413040.6895970.6791750.6792510.82475900:02
300.2274371.2446040.6358700.6902840.6678720.6707820.80392300:02
310.2142131.2838170.6304350.6919420.6638280.6675380.78488800:02
320.1980081.2743730.6141300.6805430.6504430.6547790.77799700:02
330.1831981.2692110.6141300.6735880.6556870.6574190.78195800:02
340.1736561.2729610.6195650.6841020.6564870.6607040.77678300:02
350.1591251.2519590.6250000.6866740.6634310.6667680.77363400:02
360.1537981.2475920.6358700.6993250.6738190.6779790.78428300:02
370.1446391.2518720.6250000.6808130.6634310.6665770.77601600:02
380.1347641.2469750.6141300.6778850.6604490.6633470.77017300:02
390.1337261.2570510.6195650.6781920.6652110.6662870.78734800:02
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Better model found at epoch 0 with accuracy value: 0.58152174949646.\n", "Better model found at epoch 4 with accuracy value: 0.592391312122345.\n", "Better model found at epoch 5 with accuracy value: 0.6086956262588501.\n", "Better model found at epoch 6 with accuracy value: 0.6195651888847351.\n", "Better model found at epoch 7 with accuracy value: 0.625.\n", "Better model found at epoch 12 with accuracy value: 0.657608687877655.\n" ] } ], "source": [ "learner.fit_one_cycle(40, max_lr=slice(1e-04, 1e-03), callbacks=model_callback(learner, \"best-rn34-herlev-multiclass-fold1-stage2\"))\n", "learner.save(\"last-rn34-herlev-multiclass-fold1-stage2\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Fold-2" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ImageDataBunch;\n", "\n", "Train: LabelList (733 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Valid: LabelList (184 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Test: None" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fold_idxs = idxs[1]\n", "fold_data = (ImageList.from_folder(data_path)\n", " .split_by_idxs(fold_idxs[0], fold_idxs[1])\n", " .label_from_folder()\n", " .transform(tfms, size=64)\n", " .databunch(bs=64)\n", " .normalize(imagenet_stats))\n", "fold_data" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", " \n", " 70.00% [7/10 00:09<00:03]\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.756092#na#00:01
10.732816#na#00:01
20.706541#na#00:01
30.726743#na#00:01
40.708350#na#00:01
50.700614#na#00:01
60.911545#na#00:01

\n", "\n", "

\n", " \n", " \n", " 63.64% [7/11 00:00<00:00 2.3560]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learner.load(\"best-rn34-herlev-multiclass-fold1-stage2\")\n", "learner.data = fold_data\n", "learner.freeze()\n", "learner = to_fp16(learner)\n", "learner.lr_find()\n", "learner.recorder.plot()" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.6900610.3455870.8586960.8831170.8719120.8716710.91146300:02
10.7089020.3286500.8641300.8877860.8766740.8760290.91915100:02
20.6988140.3098190.8750000.8910670.8854270.8845300.90809100:02
30.7079390.2948630.8858700.8954000.9011740.8976890.91828500:02
40.6911380.2956500.9021740.9101490.9145440.9129100.93765200:02
50.6634590.3131780.8913040.8984160.9008750.8982550.91614700:02
60.6385410.3247920.8913040.9038160.9081190.9048000.92602700:02
70.6222610.2939870.8804350.8940680.8942370.8927120.89562000:02
80.6086100.3192430.8695650.8850560.8867130.8844530.90096300:01
90.5952280.2965430.8913040.9081580.9113670.9094170.93641800:02
100.5716590.3026980.8967390.9079190.9089190.9061010.93145200:01
110.5721660.3135020.8750000.8986160.8936390.8912430.90954600:02
120.5612880.2755440.8967390.9148050.9110450.9105920.92896100:02
130.5511410.2809770.8804350.8916740.8904060.8899920.91216400:01
140.5472570.2923000.9021740.9157220.9189780.9173010.93732300:02
150.5302860.2766700.9021740.9130130.9145250.9120170.93135800:02
160.5204390.2863050.8913040.9110080.9093240.9080490.93587700:02
170.5025380.3058210.8750000.8902340.8976760.8942490.89529000:02
180.4954460.2965840.8804350.8995490.8942480.8932530.91433100:02
190.4858990.3014330.8913040.9052950.9139460.9103570.92404900:02
200.4698360.3065880.8967390.9090170.9165440.9138480.92511600:02
210.4657320.2974520.8750000.8926780.8942520.8916130.90005700:02
220.4616690.3336840.8695650.8915910.8891090.8870580.90260500:02
230.4577630.2988700.8695650.8877260.8881740.8860480.88270400:02
240.4501570.2558350.8967390.9078890.9169060.9135760.91441200:02
250.4451730.2738360.8750000.8950630.9107950.9019180.92487400:01
260.4416580.2700320.8695650.8876890.8925550.8882050.90420800:02
270.4351280.2642790.8967390.9170640.9165250.9145760.91322600:02
280.4200870.2562950.8967390.9079360.9119460.9100780.90520600:02
290.4051310.2567920.8913040.9036070.9082830.9059550.90436800:02
300.3995400.2729240.8804350.8967230.8991780.8962030.90072700:02
310.3962360.2799520.8913040.9045760.9065040.9042720.90472600:02
320.3873230.2808350.8913040.9048830.9076030.9051940.90532600:02
330.3901330.2801120.8913040.9048830.9076030.9051940.90532600:01
340.3821250.2779630.8858700.9006610.9028410.9003370.90156100:02
350.3830720.2784930.8858700.9006610.9028410.9003370.90156100:02
360.3722220.2822770.8858700.9006610.9028410.9003370.90156100:02
370.3743200.2795200.8967390.9092810.9114640.9088520.90875600:02
380.3655610.2750720.8913040.9050590.9067020.9039940.90501300:02
390.3662380.2765010.8858700.9006610.9028410.9003370.90156100:02
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Better model found at epoch 0 with accuracy value: 0.8586956262588501.\n", "Better model found at epoch 1 with accuracy value: 0.864130437374115.\n", "Better model found at epoch 2 with accuracy value: 0.875.\n", "Better model found at epoch 3 with accuracy value: 0.885869562625885.\n", "Better model found at epoch 4 with accuracy value: 0.9021739363670349.\n" ] } ], "source": [ "learner.fit_one_cycle(40, max_lr=slice(3.5e-03), callbacks=model_callback(learner, \"best-rn34-herlev-multiclass-fold2-stage1\"))\n", "learner.save(\"last-rn34-herlev-multiclass-fold2-stage1\")" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", " \n", " 70.00% [7/10 00:10<00:04]\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.597527#na#00:01
10.598604#na#00:01
20.597408#na#00:01
30.584501#na#00:01
40.641095#na#00:01
51.033783#na#00:01
61.440541#na#00:01

\n", "\n", "

\n", " \n", " \n", " 45.45% [5/11 00:00<00:01 1.9628]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learner.load(\"best-rn34-herlev-multiclass-fold2-stage1\")\n", "learner = to_fp16(learner)\n", "learner.unfreeze()\n", "learner.lr_find()\n", "learner.recorder.plot()" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.5792450.2897070.8967390.9055270.9108810.9085720.92487400:02
10.5976060.2917360.9076090.9160330.9216870.9193930.94248800:02
20.6130390.2934510.8967390.9066750.9119800.9090440.92939300:02
30.6072470.2927640.8967390.9070270.9143610.9109400.92267100:02
40.5840830.2945170.9021740.9108710.9156430.9131760.93021000:02
50.5700520.2916640.9076090.9162530.9227860.9195260.93113800:02
60.5627830.2884420.9076090.9186170.9238850.9205060.94345300:02
70.5622010.2817240.9130430.9221380.9275480.9249470.95617800:02
80.5434450.2838950.9130430.9265870.9309900.9294350.92980300:02
90.5357730.2688400.9130430.9246130.9255480.9245480.94265200:02
100.5197560.2639500.9184780.9337730.9368510.9348470.93180400:02
110.5231030.2548370.9184780.9337730.9368510.9348470.93180400:02
120.5040450.2696730.9184780.9331490.9379160.9355640.93159100:02
130.4991880.2647740.9184780.9337730.9368510.9348470.93180400:02
140.4816200.2652450.8967390.9115260.9154600.9127450.94065000:02
150.4641100.2540410.9021740.9197920.9258280.9231240.93422500:02
160.4425190.2392660.9184780.9331820.9413960.9380010.94363500:02
170.4271340.2404540.9239130.9383210.9461580.9423900.95121600:02
180.4139030.2349230.9184780.9331820.9413960.9380010.94363500:02
190.3939820.2440330.9184780.9327610.9379160.9358350.94354300:02
200.3824570.2464620.9130430.9285410.9342530.9316970.94272100:02
210.3736980.2468650.9130430.9294900.9353520.9319060.94950100:02
220.3624040.2453720.9184780.9326040.9381140.9356720.94362700:02
230.3530890.2340590.9184780.9326040.9381140.9356720.94362700:02
240.3383940.2343470.9130430.9283550.9344510.9315000.94280600:02
250.3267190.2354060.9239130.9372450.9452570.9419750.94453900:02
260.3331190.2327760.9184780.9331820.9413960.9380010.94363500:02
270.3256890.2266680.9347830.9461740.9525830.9502820.94617800:02
280.3162270.2302240.9239130.9359250.9461580.9419110.95130200:02
290.3100930.2299490.9239130.9359250.9461580.9419110.95130200:02
300.3008420.2240960.9239130.9359250.9461580.9419110.95130200:02
310.2941010.2258600.9293480.9423840.9500190.9463650.95210400:02
320.2957250.2191440.9239130.9383210.9461580.9423900.95121600:02
330.2982560.2204420.9184780.9331820.9413960.9380010.94363500:02
340.2971870.2182820.9239130.9383210.9461580.9423900.95121600:02
350.2878830.2202470.9239130.9383210.9461580.9423900.95121600:02
360.2969310.2182440.9239130.9383210.9461580.9423900.95121600:02
370.3083840.2230540.9184780.9345800.9424950.9382010.95040000:02
380.3007540.2221660.9293480.9423840.9500190.9463650.95210400:02
390.2969700.2203120.9293480.9415980.9487220.9462820.94527700:02
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Better model found at epoch 0 with accuracy value: 0.89673912525177.\n", "Better model found at epoch 1 with accuracy value: 0.907608687877655.\n", "Better model found at epoch 7 with accuracy value: 0.9130434989929199.\n", "Better model found at epoch 10 with accuracy value: 0.91847825050354.\n", "Better model found at epoch 17 with accuracy value: 0.9239130616188049.\n", "Better model found at epoch 27 with accuracy value: 0.9347826242446899.\n" ] } ], "source": [ "learner.fit_one_cycle(40, max_lr=slice(1.4e-06, 3.5e-04), callbacks=model_callback(learner, \"best-rn34-herlev-multiclass-fold2-stage2\"))\n", "learner.save(\"last-rn34-herlev-multiclass-fold2-stage2\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Fold-3" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ImageDataBunch;\n", "\n", "Train: LabelList (734 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Valid: LabelList (183 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Test: None" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fold_idxs = idxs[2]\n", "fold_data = (ImageList.from_folder(data_path)\n", " .split_by_idxs(fold_idxs[0], fold_idxs[1])\n", " .label_from_folder()\n", " .transform(tfms, size=64)\n", " .databunch(bs=64)\n", " .normalize(imagenet_stats))\n", "fold_data" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", " \n", " 70.00% [7/10 00:08<00:03]\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.351782#na#00:01
10.364922#na#00:01
20.371815#na#00:01
30.371227#na#00:01
40.359961#na#00:01
50.373105#na#00:01
60.713014#na#00:01

\n", "\n", "

\n", " \n", " \n", " 36.36% [4/11 00:00<00:01 1.1499]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learner.load(\"best-rn34-herlev-multiclass-fold2-stage2\")\n", "learner.data = fold_data\n", "learner.freeze()\n", "learner = to_fp16(learner)\n", "learner.lr_find()\n", "learner.recorder.plot()" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.3807220.0656590.9836070.9866150.9879310.9875680.99750100:02
10.3667470.0637630.9836070.9866150.9879310.9875680.99750100:02
20.3783820.0616970.9836070.9866150.9879310.9875680.99750100:02
30.3679940.0677370.9836070.9866150.9879310.9875680.99750100:02
40.3680860.0625750.9836070.9866150.9879310.9875680.99750100:02
50.3697500.0627660.9890710.9907830.9928570.9922840.99833200:02
60.3533170.0656600.9836070.9866150.9879310.9875680.99750100:02
70.3501900.0692120.9836070.9866150.9879310.9875680.99750100:02
80.3612760.0644420.9890710.9907830.9928570.9922840.99833200:02
90.3480210.0656400.9836070.9866150.9879310.9875680.99750100:02
100.3437440.0676360.9781420.9794720.9843600.9831500.99667400:02
110.3517570.0680410.9890710.9907830.9928570.9922840.99833200:01
120.3436360.0721970.9890710.9907830.9928570.9922840.99833200:02
130.3411390.0699220.9836070.9866150.9879310.9875680.99750100:01
140.3452400.0662040.9945360.9952380.9964290.9961500.99916600:02
150.3368630.0730380.9890710.9907830.9928570.9922840.99833200:02
160.3382080.0736580.9890710.9907830.9928570.9922840.99833200:02
170.3325730.0739570.9890710.9907830.9928570.9922840.99833200:02
180.3224150.0726410.9890710.9907830.9928570.9922840.99833200:01
190.3201770.0761580.9890710.9907830.9928570.9922840.99833200:02
200.3185220.0803280.9836070.9866150.9879310.9875680.99750100:01
210.3143290.0784570.9836070.9836410.9892860.9878660.99750200:02
220.3147450.0729740.9836070.9866150.9879310.9875680.99750100:02
230.3111270.0742400.9836070.9866150.9879310.9875680.99750100:02
240.3060750.0763820.9890710.9907830.9928570.9922840.99833200:02
250.3107520.0719690.9836070.9833330.9879310.9868690.99500400:02
260.3079010.0722420.9836070.9833330.9879310.9868690.99500400:02
270.3081220.0752830.9836070.9833330.9879310.9868690.99500400:02
280.3065610.0741810.9836070.9833330.9879310.9868690.99500400:02
290.3052530.0742440.9836070.9833330.9879310.9868690.99500400:02
300.3060380.0702280.9890710.9907830.9928570.9922840.99833200:02
310.3023440.0687760.9890710.9907830.9928570.9922840.99833200:02
320.2985550.0684120.9890710.9907830.9928570.9922840.99833200:02
330.2911610.0692450.9836070.9833330.9879310.9868690.99500400:02
340.2871140.0700640.9890710.9907830.9928570.9922840.99833200:02
350.2901880.0699640.9890710.9907830.9928570.9922840.99833200:02
360.2941850.0699120.9836070.9833330.9879310.9868690.99500400:02
370.2984710.0695780.9890710.9907830.9928570.9922840.99833200:02
380.2928760.0698990.9836070.9833330.9879310.9868690.99500400:02
390.2925010.0667750.9890710.9907830.9928570.9922840.99833200:02
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Better model found at epoch 0 with accuracy value: 0.9836065769195557.\n", "Better model found at epoch 5 with accuracy value: 0.9890710115432739.\n", "Better model found at epoch 14 with accuracy value: 0.994535505771637.\n" ] } ], "source": [ "learner.fit_one_cycle(40, max_lr=slice(1e-03), callbacks=model_callback(learner, \"best-rn34-herlev-multiclass-fold3-stage1\"))\n", "learner.save(\"last-rn34-herlev-multiclass-fold3-stage1\")" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", " \n", " 60.00% [6/10 00:08<00:05]\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", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.294902#na#00:01
10.313409#na#00:01
20.316020#na#00:01
30.321005#na#00:01
40.438081#na#00:01
50.837825#na#00:01

\n", "\n", "

\n", " \n", " \n", " 36.36% [4/11 00:00<00:01 0.9784]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learner.load(\"best-rn34-herlev-multiclass-fold3-stage1\")\n", "learner = to_fp16(learner)\n", "learner.unfreeze()\n", "learner.lr_find()\n", "learner.recorder.plot()" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.2869100.0682460.9890710.9907830.9928570.9922840.99833200:02
10.2929760.0673080.9890710.9907830.9928570.9922840.99833200:02
20.2857390.0667200.9945360.9952380.9964290.9961500.99916600:02
30.2972060.0675510.9945360.9952380.9964290.9961500.99916600:02
40.2982910.0687510.9890710.9907830.9928570.9922840.99833200:02
50.3039430.0679540.9890710.9907830.9928570.9922840.99833200:02
60.3060230.0701950.9890710.9907830.9928570.9922840.99833200:02
70.3024580.0682900.9945360.9952380.9964290.9961500.99916600:02
80.3072960.0718120.9890710.9907830.9928570.9922840.99833200:02
90.3013710.0757840.9836070.9866150.9879310.9875680.99750100:02
100.3080980.0785250.9781420.9794720.9843600.9831500.99667400:02
110.3066580.0745470.9836070.9866150.9879310.9875680.99750100:02
120.3063780.0753200.9836070.9866150.9879310.9875680.99750100:02
130.3030240.0792240.9836070.9866150.9879310.9875680.99750100:02
140.2958990.0781830.9836070.9866150.9879310.9875680.99750100:02
150.2904330.0786930.9781420.9776870.9777270.9774070.99668500:02
160.2867590.0799650.9836070.9866150.9879310.9875680.99750100:02
170.2844110.0807770.9781420.9791440.9830050.9820980.99418000:02
180.2812350.0838180.9726780.9726810.9794330.9777110.99336000:02
190.2694640.0808650.9726780.9726810.9794330.9777110.99336000:02
200.2700110.0802740.9726780.9726810.9794330.9777110.99336000:02
210.2648430.0830480.9726780.9726810.9794330.9777110.99336000:02
220.2642170.0798270.9781420.9791440.9830050.9820980.99418000:02
230.2649110.0809110.9781420.9791440.9830050.9820980.99418000:02
240.2574540.0827480.9672130.9637530.9692290.9675500.99256800:02
250.2534500.0820340.9726780.9702150.9728010.9719370.99338200:02
260.2507690.0838930.9672130.9637530.9692290.9675500.99256800:02
270.2422050.0846470.9672130.9637530.9692290.9675500.99256800:02
280.2425240.0836010.9672130.9637530.9692290.9675500.99256800:02
290.2390500.0854750.9672130.9637530.9692290.9675500.99256800:02
300.2425740.0820360.9726780.9679420.9741550.9723200.99338300:02
310.2380120.0840530.9617490.9593190.9656580.9636790.99174200:02
320.2354000.0838150.9672130.9637530.9692290.9675500.99256800:02
330.2341390.0813900.9672130.9637530.9692290.9675500.99256800:02
340.2297940.0817310.9672130.9682480.9758620.9738400.99253000:02
350.2388180.0830260.9617490.9593190.9656580.9636790.99174200:02
360.2340650.0815950.9672130.9682480.9758620.9738400.99253000:02
370.2347000.0826810.9617490.9578780.9656580.9631620.99175600:02
380.2320730.0821160.9672130.9620670.9705840.9679330.99256900:02
390.2320530.0818790.9726780.9726810.9794330.9777110.99336000:02
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Better model found at epoch 0 with accuracy value: 0.9890710115432739.\n", "Better model found at epoch 2 with accuracy value: 0.994535505771637.\n" ] } ], "source": [ "learner.fit_one_cycle(40, max_lr=slice(1e-04), callbacks=model_callback(learner, \"best-rn34-herlev-multiclass-fold3-stage2\"))\n", "learner.save(\"last-rn34-herlev-multiclass-fold3-stage2\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Fold-4" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ImageDataBunch;\n", "\n", "Train: LabelList (734 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Valid: LabelList (183 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Test: None" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fold_idxs = idxs[3]\n", "fold_data = (ImageList.from_folder(data_path)\n", " .split_by_idxs(fold_idxs[0], fold_idxs[1])\n", " .label_from_folder()\n", " .transform(tfms, size=64)\n", " .databunch(bs=64)\n", " .normalize(imagenet_stats))\n", "fold_data" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", " \n", " 70.00% [7/10 00:09<00:03]\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.314010#na#00:01
10.304421#na#00:01
20.312439#na#00:01
30.297178#na#00:01
40.297981#na#00:01
50.333586#na#00:01
60.634867#na#00:01

\n", "\n", "

\n", " \n", " \n", " 36.36% [4/11 00:00<00:01 1.1540]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learner.load(\"best-rn34-herlev-multiclass-fold3-stage2\")\n", "learner.data = fold_data\n", "learner.freeze()\n", "learner = to_fp16(learner)\n", "learner.lr_find()\n", "learner.recorder.plot()" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.2968040.0908580.9726780.9764100.9794330.9783680.98273500:02
10.3175810.0932900.9726780.9764100.9794330.9783680.98273500:01
20.3356440.0897650.9726780.9764100.9794330.9783680.98273500:02
30.3300320.0921620.9672130.9729400.9758620.9746360.97947700:02
40.3293770.0902530.9726780.9764100.9794330.9783680.98273500:01
50.3293260.0911720.9726780.9764100.9794330.9783680.98273500:02
60.3370060.0900750.9726780.9794940.9794330.9789350.97622900:01
70.3309920.0875430.9781420.9800680.9843600.9831730.98353100:02
80.3254630.0886480.9726780.9764100.9794330.9783680.98273500:02
90.3262550.0867300.9726780.9764100.9794330.9783680.98273500:02
100.3291460.0869570.9726780.9764100.9794330.9783680.98273500:02
110.3368690.0871130.9726780.9764100.9794330.9783680.98273500:01
120.3408310.0890580.9726780.9764100.9794330.9783680.98273500:02
130.3288410.0894180.9672130.9729400.9758620.9746360.97947700:02
140.3199550.0891150.9726780.9764100.9794330.9783680.98273500:02
150.3211170.0896220.9726780.9764100.9794330.9783680.98273500:01
160.3294130.0897720.9726780.9764100.9794330.9783680.98273500:02
170.3262360.0890230.9726780.9764100.9794330.9783680.98273500:01
180.3244620.0887250.9726780.9794940.9794330.9789350.97622900:02
190.3200140.0896630.9726780.9764100.9794330.9783680.98273500:02
200.3130730.0887010.9726780.9764100.9794330.9783680.98273500:02
210.3228840.0891120.9726780.9794940.9794330.9789350.97622900:02
220.3281920.0876740.9672130.9711050.9754650.9742660.98188400:02
230.3421630.0870310.9726780.9764100.9794330.9783680.98273500:02
240.3330150.0891460.9672130.9729400.9758620.9746360.97947700:02
250.3322260.0880720.9726780.9764100.9794330.9783680.98273500:02
260.3212510.0874670.9726780.9794940.9794330.9789350.97622900:02
270.3184630.0893540.9726780.9794940.9794330.9789350.97622900:02
280.3217860.0893850.9726780.9764100.9794330.9783680.98273500:02
290.3144950.0913050.9726780.9764100.9794330.9783680.98273500:02
300.3095130.0891680.9726780.9764100.9794330.9783680.98273500:02
310.3188830.0907550.9726780.9764100.9794330.9783680.98273500:02
320.3189880.0894940.9726780.9764100.9794330.9783680.98273500:02
330.3204800.0861090.9726780.9764100.9794330.9783680.98273500:02
340.3184410.0871290.9726780.9794940.9794330.9789350.97622900:02
350.3258080.0858660.9726780.9794940.9794330.9789350.97622900:01
360.3182620.0900730.9726780.9764100.9794330.9783680.98273500:02
370.3218690.0894760.9726780.9764100.9794330.9783680.98273500:02
380.3182220.0882870.9726780.9764100.9794330.9783680.98273500:02
390.3129860.0865710.9726780.9764100.9794330.9783680.98273500:02
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Better model found at epoch 0 with accuracy value: 0.9726775884628296.\n", "Better model found at epoch 7 with accuracy value: 0.9781420826911926.\n" ] } ], "source": [ "learner.fit_one_cycle(40, max_lr=slice(4e-05), callbacks=model_callback(learner, \"best-rn34-herlev-multiclass-fold4-stage1\"))\n", "learner.save(\"last-rn34-herlev-multiclass-fold4-stage1\")" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", " \n", " 60.00% [6/10 00:08<00:05]\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", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.292210#na#00:01
10.318616#na#00:01
20.327230#na#00:01
30.318501#na#00:01
40.503405#na#00:01
50.889302#na#00:01

\n", "\n", "

\n", " \n", " \n", " 18.18% [2/11 00:00<00:03 0.9723]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learner.load(\"best-rn34-herlev-multiclass-fold4-stage1\")\n", "learner = to_fp16(learner)\n", "learner.unfreeze()\n", "learner.lr_find()\n", "learner.recorder.plot()" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.3284980.0892350.9672130.9729400.9758620.9746360.97947700:02
10.3394560.0891060.9726780.9764100.9794330.9783680.98273500:02
20.3346960.0883810.9672130.9729400.9758620.9746360.97947700:02
30.3532750.0899680.9726780.9794940.9794330.9789350.97622900:02
40.3562020.0863080.9726780.9750340.9803910.9790360.98268000:02
50.3522450.0895050.9672130.9729400.9758620.9746360.97947700:02
60.3512790.0904560.9672130.9729400.9758620.9746360.97947700:02
70.3477880.0889930.9726780.9764100.9794330.9783680.98273500:02
80.3428410.0889650.9726780.9764100.9794330.9783680.98273500:02
90.3351750.0869910.9726780.9764100.9794330.9783680.98273500:02
100.3313910.0890050.9726780.9794940.9794330.9789350.97622900:02
110.3450800.0887330.9726780.9764100.9794330.9783680.98273500:02
120.3415100.0900040.9726780.9764100.9794330.9783680.98273500:02
130.3348270.0902880.9726780.9764100.9794330.9783680.98273500:02
140.3307480.0920440.9726780.9764100.9794330.9783680.98273500:02
150.3267910.0910890.9726780.9764100.9794330.9783680.98273500:02
160.3329090.0871450.9726780.9764100.9794330.9783680.98273500:02
170.3355040.0896160.9726780.9764100.9794330.9783680.98273500:02
180.3311120.0899380.9726780.9764100.9794330.9783680.98273500:02
190.3270610.0891170.9726780.9764100.9794330.9783680.98273500:02
200.3199860.0898070.9726780.9764100.9794330.9783680.98273500:02
210.3103640.0873750.9781420.9835530.9830050.9827860.98352900:02
220.3081300.0893970.9726780.9764100.9794330.9783680.98273500:02
230.3115790.0878900.9726780.9764100.9794330.9783680.98273500:02
240.3113380.0900610.9726780.9764100.9794330.9783680.98273500:02
250.3181280.0912810.9672130.9711050.9754650.9742660.98188400:02
260.3268500.0896800.9726780.9764100.9794330.9783680.98273500:02
270.3278610.0913340.9726780.9764100.9794330.9783680.98273500:02
280.3249220.0883080.9781420.9800680.9843600.9831730.98353100:02
290.3259170.0869870.9781420.9800680.9843600.9831730.98353100:02
300.3267720.0888650.9726780.9764100.9794330.9783680.98273500:02
310.3257880.0872570.9726780.9764100.9794330.9783680.98273500:02
320.3215540.0913940.9726780.9764100.9794330.9783680.98273500:02
330.3209800.0904170.9726780.9764100.9794330.9783680.98273500:02
340.3229090.0891800.9672130.9711050.9754650.9742660.98188400:02
350.3297580.0880400.9726780.9764100.9794330.9783680.98273500:02
360.3249410.0898350.9672130.9729400.9758620.9746360.97947700:02
370.3184390.0874960.9726780.9764100.9794330.9783680.98273500:02
380.3171160.0897270.9672130.9711050.9754650.9742660.98188400:02
390.3158770.0912370.9726780.9764100.9794330.9783680.98273500:02
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Better model found at epoch 0 with accuracy value: 0.9672130942344666.\n", "Better model found at epoch 1 with accuracy value: 0.9726775884628296.\n", "Better model found at epoch 21 with accuracy value: 0.9781420826911926.\n" ] } ], "source": [ "learner.fit_one_cycle(40, max_lr=slice(4e-07), callbacks=model_callback(learner, \"best-rn34-herlev-multiclass-fold4-stage2\"))\n", "learner.save(\"last-rn34-herlev-multiclass-fold4-stage2\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Fold-5" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ImageDataBunch;\n", "\n", "Train: LabelList (734 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Valid: LabelList (183 items)\n", "x: ImageList\n", "Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64),Image (3, 64, 64)\n", "y: CategoryList\n", "abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic,abnormal_moderate-dysplastic\n", "Path: ../../../Dataset/Herlev Dataset;\n", "\n", "Test: None" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fold_idxs = idxs[4]\n", "fold_data = (ImageList.from_folder(data_path)\n", " .split_by_idxs(fold_idxs[0], fold_idxs[1])\n", " .label_from_folder()\n", " .transform(tfms, size=64)\n", " .databunch(bs=64)\n", " .normalize(imagenet_stats))\n", "fold_data" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", " \n", " 70.00% [7/10 00:09<00:03]\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.326614#na#00:01
10.321856#na#00:01
20.302058#na#00:01
30.315474#na#00:01
40.316880#na#00:01
50.336651#na#00:01
60.706654#na#00:01

\n", "\n", "

\n", " \n", " \n", " 18.18% [2/11 00:00<00:03 0.8183]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learner.load(\"best-rn34-herlev-multiclass-fold4-stage2\")\n", "learner.data = fold_data\n", "learner.freeze()\n", "learner = to_fp16(learner)\n", "learner.lr_find()\n", "learner.recorder.plot()" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.3063670.0933000.9781420.9849210.9834740.9837220.98919500:02
10.3037120.0923290.9781420.9849210.9834740.9837220.98919500:02
20.3186280.0936400.9781420.9849210.9834740.9837220.98919500:02
30.3202930.0919420.9781420.9849210.9834740.9837220.98919500:01
40.3336890.0923040.9781420.9849210.9834740.9837220.98919500:02
50.3254060.0916140.9781420.9849210.9834740.9837220.98919500:02
60.3276320.0915770.9781420.9849210.9834740.9837220.98919500:02
70.3235250.0942040.9781420.9849210.9834740.9837220.98919500:01
80.3158670.0948450.9726780.9797680.9795060.9795280.98834500:01
90.3109010.0936510.9781420.9849210.9834740.9837220.98919500:02
100.3147160.0899150.9781420.9849210.9834740.9837220.98919500:02
110.3118030.0916530.9781420.9849210.9834740.9837220.98919500:02
120.3094970.0942390.9781420.9849210.9834740.9837220.98919500:02
130.3237970.0942040.9781420.9849210.9834740.9837220.98919500:02
140.3239740.0889980.9781420.9849210.9834740.9837220.98919500:01
150.3250170.0925920.9781420.9849210.9834740.9837220.98919500:02
160.3180970.0939950.9781420.9849210.9834740.9837220.98919500:02
170.3143480.0929370.9781420.9849210.9834740.9837220.98919500:02
180.3179050.0918700.9726780.9797680.9795060.9795280.98834500:02
190.3210960.0908080.9781420.9849210.9834740.9837220.98919500:02
200.3265720.0889400.9781420.9849210.9834740.9837220.98919500:02
210.3245200.0915030.9781420.9849210.9834740.9837220.98919500:02
220.3266070.0896540.9781420.9849210.9834740.9837220.98919500:02
230.3281000.0877580.9781420.9849210.9834740.9837220.98919500:02
240.3314290.0900370.9781420.9849210.9834740.9837220.98919500:02
250.3264890.0870730.9781420.9849210.9834740.9837220.98919500:02
260.3342820.0903620.9781420.9849210.9834740.9837220.98919500:02
270.3337560.0879290.9781420.9849210.9834740.9837220.98919500:02
280.3178520.0907430.9781420.9849210.9834740.9837220.98919500:02
290.3211190.0922780.9781420.9849210.9834740.9837220.98919500:02
300.3168950.0915930.9781420.9849210.9834740.9837220.98919500:02
310.3093810.0928200.9781420.9849210.9834740.9837220.98919500:02
320.3063760.0885070.9781420.9849210.9834740.9837220.98919500:02
330.3111540.0913000.9781420.9849210.9834740.9837220.98919500:01
340.3129720.0911730.9781420.9849210.9834740.9837220.98919500:01
350.3157600.0926160.9781420.9849210.9834740.9837220.98919500:02
360.3119140.0910650.9781420.9849210.9834740.9837220.98919500:02
370.3109700.0917010.9781420.9849210.9834740.9837220.98919500:02
380.3064990.0909400.9781420.9849210.9834740.9837220.98919500:02
390.3043530.0907330.9781420.9849210.9834740.9837220.98919500:02
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Better model found at epoch 0 with accuracy value: 0.9781420826911926.\n" ] } ], "source": [ "learner.fit_one_cycle(40, max_lr=slice(2e-05), callbacks=model_callback(learner, \"best-rn34-herlev-multiclass-fold5-stage1\"))\n", "learner.save(\"last-rn34-herlev-multiclass-fold5-stage1\")" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "
\n", " \n", " \n", " 50.00% [5/10 00:07<00:07]\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", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.327458#na#00:01
10.321608#na#00:01
20.310141#na#00:01
30.308274#na#00:01
40.475000#na#00:01

\n", "\n", "

\n", " \n", " \n", " 72.73% [8/11 00:01<00:00 0.7269]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "learner.load(\"best-rn34-herlev-multiclass-fold5-stage1\")\n", "learner = to_fp16(learner)\n", "learner.unfreeze()\n", "learner.lr_find()\n", "learner.recorder.plot()" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
epochtrain_lossvalid_lossaccuracyprecisionrecallf_betakappa_scoretime
00.3323150.0955070.9781420.9849210.9834740.9837220.98919500:02
10.3145980.0940170.9781420.9849210.9834740.9837220.98919500:02
20.3046710.0910850.9781420.9849210.9834740.9837220.98919500:02
30.3094710.0881670.9781420.9849210.9834740.9837220.98919500:02
40.3081590.0945710.9781420.9849210.9834740.9837220.98919500:02
50.3245220.0907450.9781420.9849210.9834740.9837220.98919500:02
60.3219110.0898890.9781420.9849210.9834740.9837220.98919500:02
70.3293400.0924360.9781420.9849210.9834740.9837220.98919500:02
80.3394550.0907320.9781420.9849210.9834740.9837220.98919500:02
90.3270070.0920610.9781420.9849210.9834740.9837220.98919500:02
100.3342390.0935860.9781420.9849210.9834740.9837220.98919500:02
110.3283000.0913010.9781420.9849210.9834740.9837220.98919500:02
120.3363920.0931550.9781420.9849210.9834740.9837220.98919500:02
130.3288550.0937520.9781420.9849210.9834740.9837220.98919500:02
140.3337840.0938580.9781420.9849210.9834740.9837220.98919500:02
150.3265370.0919420.9781420.9849210.9834740.9837220.98919500:02
160.3232330.0936120.9781420.9849210.9834740.9837220.98919500:02
170.3162900.0919240.9781420.9849210.9834740.9837220.98919500:02
180.3170410.0927590.9781420.9849210.9834740.9837220.98919500:02
190.3332570.0932090.9781420.9849210.9834740.9837220.98919500:02
200.3284100.0921420.9781420.9849210.9834740.9837220.98919500:02
210.3313620.0939840.9781420.9849210.9834740.9837220.98919500:02
220.3342000.0905190.9781420.9849210.9834740.9837220.98919500:02
230.3287490.0935060.9781420.9849210.9834740.9837220.98919500:02
240.3205250.0938800.9726780.9797680.9795060.9795280.98834500:02
250.3166310.0956190.9726780.9797680.9795060.9795280.98834500:02
260.3245210.0931800.9781420.9849210.9834740.9837220.98919500:02
270.3236840.0922810.9781420.9849210.9834740.9837220.98919500:02
280.3262800.0921590.9781420.9849210.9834740.9837220.98919500:02
290.3250370.0933600.9781420.9849210.9834740.9837220.98919500:02
300.3273130.0917350.9781420.9849210.9834740.9837220.98919500:02
310.3227440.0940050.9781420.9849210.9834740.9837220.98919500:02
320.3280980.0941380.9781420.9849210.9834740.9837220.98919500:02
330.3345610.0931630.9781420.9849210.9834740.9837220.98919500:02
340.3280480.0927090.9781420.9849210.9834740.9837220.98919500:02
350.3323300.0945780.9781420.9849210.9834740.9837220.98919500:02
360.3315960.0915500.9781420.9849210.9834740.9837220.98919500:02
370.3299040.0942150.9781420.9849210.9834740.9837220.98919500:02
380.3198560.0917140.9781420.9849210.9834740.9837220.98919500:02
390.3161980.0907010.9781420.9849210.9834740.9837220.98919500:02
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Better model found at epoch 0 with accuracy value: 0.9781420826911926.\n" ] } ], "source": [ "learner.fit_one_cycle(40, max_lr=slice(1e-06), callbacks=model_callback(learner, \"best-rn34-herlev-multiclass-fold5-stage2\"))\n", "learner.save(\"last-rn34-herlev-multiclass-fold5-stage2\")" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "learner.load(\"best-rn34-herlev-multiclass-fold5-stage2\")\n", "learner.export(\"best-rn34-herlev-multiclass-5fold.pkl\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "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.6.9" } }, "nbformat": 4, "nbformat_minor": 4 }