{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"This is an example notebook illustrating usage of `kaggle-rsna-ihd` package (https://github.com/atamazian/kaggle-rsna-ihd).","metadata":{}},{"cell_type":"code","source":"!pip install -q monai timm\n!pip install -q https://github.com/atamazian/kaggle-rsna-ihd/archive/refs/heads/main.zip","metadata":{"execution":{"iopub.status.busy":"2022-07-09T10:54:27.937651Z","iopub.execute_input":"2022-07-09T10:54:27.938093Z","iopub.status.idle":"2022-07-09T10:54:53.474205Z","shell.execute_reply.started":"2022-07-09T10:54:27.938007Z","shell.execute_reply":"2022-07-09T10:54:53.473072Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"import numpy as np\nimport pandas as pd","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","execution":{"iopub.status.busy":"2022-07-09T10:54:53.47794Z","iopub.execute_input":"2022-07-09T10:54:53.478235Z","iopub.status.idle":"2022-07-09T10:54:53.483663Z","shell.execute_reply.started":"2022-07-09T10:54:53.478207Z","shell.execute_reply":"2022-07-09T10:54:53.482314Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"import os\nfrom pytorch_lightning import Trainer\nfrom kaggle_rsna_ihd.datasets import IHDDataModule\nfrom kaggle_rsna_ihd.models import IHDModel\nfrom monai import transforms as T","metadata":{"execution":{"iopub.status.busy":"2022-07-09T10:54:53.485352Z","iopub.execute_input":"2022-07-09T10:54:53.485765Z","iopub.status.idle":"2022-07-09T10:55:04.168424Z","shell.execute_reply.started":"2022-07-09T10:54:53.48572Z","shell.execute_reply":"2022-07-09T10:55:04.16743Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"TRAIN_TRANSFORM = T.Compose(\n    [\n        T.AddChannel(),\n        T.CenterSpatialCrop((200, 200)),\n        T.RandFlip(prob=0.5, spatial_axis=0),\n        T.ScaleIntensity(),\n        T.EnsureType(),\n    ]\n)\n\nVALID_TRANSFORM = T.Compose(\n    [\n        T.AddChannel(),\n        T.CenterSpatialCrop((200, 200)),\n        T.ScaleIntensity(),\n        T.EnsureType(),\n    ]\n)","metadata":{"execution":{"iopub.status.busy":"2022-07-09T10:55:04.171099Z","iopub.execute_input":"2022-07-09T10:55:04.171845Z","iopub.status.idle":"2022-07-09T10:55:04.182113Z","shell.execute_reply.started":"2022-07-09T10:55:04.171804Z","shell.execute_reply":"2022-07-09T10:55:04.179437Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"dm = IHDDataModule(\n    path_csv='../input/rsna-intracranial-hemorrhage-detection/rsna-intracranial-hemorrhage-detection/stage_2_train.csv',\n    path_img_dir='../input/rsna-ihd-stage-2-train-224/stage_2_train',\n    batch_size=1,\n    split=0.8,\n    train_transform=TRAIN_TRANSFORM,\n    valid_transform=VALID_TRANSFORM\n)\ndm.setup()","metadata":{"execution":{"iopub.status.busy":"2022-07-09T10:55:04.183661Z","iopub.execute_input":"2022-07-09T10:55:04.184104Z","iopub.status.idle":"2022-07-09T10:55:39.220535Z","shell.execute_reply.started":"2022-07-09T10:55:04.184062Z","shell.execute_reply":"2022-07-09T10:55:39.219554Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"model = IHDModel(model=\"resnet18\")\n\ntrainer = Trainer(\n    fast_dev_run=True,\n    gpus=1,\n    max_epochs=1,\n    log_every_n_steps=1\n)\n\ntrainer.fit(model, datamodule=dm)","metadata":{"execution":{"iopub.status.busy":"2022-07-09T10:57:45.420967Z","iopub.execute_input":"2022-07-09T10:57:45.421348Z","iopub.status.idle":"2022-07-09T10:58:22.072705Z","shell.execute_reply.started":"2022-07-09T10:57:45.421316Z","shell.execute_reply":"2022-07-09T10:58:22.071641Z"},"trusted":true},"execution_count":null,"outputs":[]}]}