diff --git a/.gitignore b/.gitignore index 4ed3c760b..659948f91 100644 --- a/.gitignore +++ b/.gitignore @@ -134,3 +134,9 @@ leaderboard/rtd_token.txt # locally pre-trained models pyhealth/medcode/pretrained_embeddings/kg_emb/examples/pretrained_model data/physionet.org/ +examples/chestxray_vae_synthetic.png +examples/chestxray_vae_comparison.png +examples/chestxray_vae_conditional.png +examples/vae_model.pth +uv.lock +data/mimic-iv-clinical-database-demo-2.2/ diff --git a/examples/ChestXray-image-generation-GAN.ipynb b/examples/ChestXray-image-generation-GAN.ipynb index 954e86a2b..4a298667c 100644 --- a/examples/ChestXray-image-generation-GAN.ipynb +++ b/examples/ChestXray-image-generation-GAN.ipynb @@ -1,8 +1,16 @@ { "cells": [ + { + "cell_type": "markdown", + "id": "cf3e101f", + "metadata": {}, + "source": [ + "# Chest X-Ray Image Generation using GAN" + ] + }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "id": "9a77c2ec", "metadata": {}, "outputs": [], @@ -12,108 +20,146 @@ }, { "cell_type": "markdown", - "id": "53feb87e", + "id": "303f1068", "metadata": {}, "source": [ - "### STEP 1: load the chest Xray data" + "### Load Libraries" ] }, { "cell_type": "code", - "execution_count": 2, - "id": "13913032", + "execution_count": null, + "id": "a9b89c8f", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ - "/home/chaoqiy2/miniconda3/envs/moltext/lib/python3.7/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", - " from .autonotebook import tqdm as notebook_tqdm\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Statistics of COVID19CXRDataset:\n", - "Number of samples: 21165\n", - "Number of classes: 4\n", - "Class distribution: Counter({'Normal': 10192, 'Lung Opacity': 6012, 'COVID': 3616, 'Viral Pneumonia': 1345})\n" + "/home/ubuntu/PyHealth/pyhealth/trainer.py:12: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", + " from tqdm.autonotebook import trange\n", + "/home/ubuntu/PyHealth/pyhealth/sampler/sage_sampler.py:3: UserWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html. The pkg_resources package is slated for removal as early as 2025-11-30. Refrain from using this package or pin to Setuptools<81.\n", + " import pkg_resources\n" ] } ], "source": [ + "from pyhealth.datasets import split_by_visit, get_dataloader\n", + "from pyhealth.trainer import Trainer\n", "from pyhealth.datasets import COVID19CXRDataset\n", + "from pyhealth.models import VAE\n", + "from pyhealth.processors import ImageProcessor\n", + "from torchvision import transforms\n", + "from pyhealth.processors import SequenceProcessor\n", "\n", - "root = \"/srv/local/data/COVID-19_Radiography_Dataset\"\n", - "base_dataset = COVID19CXRDataset(root, refresh_cache=False)\n", - "\n", - "base_dataset.stat()" + "import torch\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt" ] }, { "cell_type": "markdown", - "id": "048ff2ee", + "id": "53feb87e", + "metadata": {}, + "source": [ + "## STEP 1: load the chest Xray data\n", + "\n", + "We also prepare the data:\n", + "- resize images to 128x128\n", + "- split train/test/validation" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3804b253", "metadata": {}, + "outputs": [], "source": [ - "### STEP 2: set task and processing the data" + "# Download command (uncomment to run)\n", + "# !curl -L -o ~/Downloads/covid19-radiography-database.zip https://www.kaggle.com/api/v1/datasets/download/tawsifurrahman/covid19-radiography-database\n", + "# !unzip ~/Downloads/covid19-radiography-database.zip -d ~/Downloads/COVID-19_Radiography_Dataset" ] }, { "cell_type": "code", - "execution_count": 3, - "id": "9487b2c6", + "execution_count": 2, + "id": "13913032", "metadata": {}, "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "No config path provided, using default config\n", + "Initializing covid19_cxr dataset from /home/ubuntu/Downloads/COVID-19_Radiography_Dataset (dev mode: False)\n", + "Scanning table: covid19_cxr from /home/ubuntu/Downloads/COVID-19_Radiography_Dataset/covid19_cxr-metadata-pyhealth.csv\n", + "Collecting global event dataframe...\n", + "Collected dataframe with shape: (21165, 6)\n", + "Dataset: covid19_cxr\n", + "Dev mode: False\n", + "Number of patients: 21165\n", + "Number of events: 21165\n", + "Setting task COVID19CXRClassification for covid19_cxr base dataset...\n", + "Generating samples with 1 worker(s)...\n" + ] + }, { "name": "stderr", "output_type": "stream", "text": [ - "Generating samples for COVID19CXRClassification: 100%|███████████████████████████████████████████| 21165/21165 [00:00<00:00, 2783009.72it/s]\n" + "Generating samples for COVID19CXRClassification with 1 worker: 100%|██████████| 21165/21165 [00:08<00:00, 2637.68it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Label disease vocab: {'COVID': 0, 'Lung Opacity': 1, 'Normal': 2, 'Viral Pneumonia': 3}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Processing samples: 100%|██████████| 21165/21165 [01:18<00:00, 270.15it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Generated 21165 samples for task COVID19CXRClassification\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" ] } ], "source": [ - "from torchvision import transforms\n", + "image_size = 128\n", + "covid19cxr_path = \"~/Downloads/COVID-19_Radiography_Dataset\"\n", "\n", - "sample_dataset = base_dataset.set_task()\n", + "base_dataset = COVID19CXRDataset(covid19cxr_path)\n", "\n", - "# the transformation automatically normalize the pixel intensity into [0, 1]\n", - "transform = transforms.Compose([\n", - " transforms.Lambda(lambda x: x if x.shape[0] == 3 else x.repeat(3, 1, 1)), # only use the first channel\n", - " transforms.Resize((128, 128)),\n", - "])\n", + "base_dataset.stats()\n", "\n", - "def encode(sample):\n", - " sample[\"path\"] = transform(sample[\"path\"])\n", - " return sample\n", "\n", - "sample_dataset.set_transform(encode)" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "id": "1601d7d1", - "metadata": {}, - "outputs": [], - "source": [ - "from pyhealth.datasets import split_by_visit, get_dataloader\n", + "# Step 2: Set task with custom image processing for GAN\n", + "image_processor = ImageProcessor(image_size=image_size, mode=\"RGB\") # Resize to 128x128 for GAN\n", "\n", - "# split dataset\n", - "train_dataset, val_dataset, test_dataset = split_by_visit(\n", - " sample_dataset, [0.8, 0.1, 0.1]\n", - ")\n", - "train_dataloader = get_dataloader(train_dataset, batch_size=256, shuffle=True)\n", - "val_dataloader = get_dataloader(val_dataset, batch_size=256, shuffle=False)\n", - "test_dataloader = get_dataloader(test_dataset, batch_size=256, shuffle=False)" + "sample_dataset = base_dataset.set_task(input_processors={\"image\": image_processor})" ] }, { "cell_type": "code", - "execution_count": 5, - "id": "d4d8b012", + "execution_count": null, + "id": "split_data", "metadata": {}, "outputs": [ { @@ -126,8 +172,19 @@ } ], "source": [ + "\n", + "# split dataset\n", + "train_dataset, val_dataset, test_dataset = split_by_visit(\n", + " sample_dataset, [0.8, 0.1, 0.1]\n", + ")\n", + "\n", + "train_dataloader = get_dataloader(train_dataset, batch_size=256, shuffle=True)\n", + "val_dataloader = get_dataloader(val_dataset, batch_size=256, shuffle=False)\n", + "test_dataloader = get_dataloader(test_dataset, batch_size=256, shuffle=False)\n", + "\n", "data = next(iter(train_dataloader))\n", - "print (data[\"path\"][0].shape)\n", + "\n", + "print(data[\"image\"][0].shape)\n", "\n", "print(\n", " \"loader size: train/val/test\",\n", @@ -139,7 +196,7 @@ }, { "cell_type": "markdown", - "id": "a897d167", + "id": "step3", "metadata": {}, "source": [ "### STEP3: define the GAN model" @@ -147,8 +204,8 @@ }, { "cell_type": "code", - "execution_count": 18, - "id": "b93a449c", + "execution_count": 4, + "id": "gan_model", "metadata": {}, "outputs": [], "source": [ @@ -157,13 +214,13 @@ "model = GAN(\n", " input_channel=3,\n", " input_size=128,\n", - " hidden_dim = 256,\n", + " hidden_dim=256,\n", ")" ] }, { "cell_type": "markdown", - "id": "e6155755", + "id": "step4", "metadata": {}, "source": [ "### STEP4: training the GAN model in an adversarial way" @@ -171,708 +228,708 @@ }, { "cell_type": "code", - "execution_count": 24, - "id": "a06f823a", + "execution_count": 5, + "id": "training", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:56<00:00, 1.18it/s]\n" + "100%|██████████| 67/67 [00:07<00:00, 9.02it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 0 --- loss of G: 235.46342170238495, loss of D: 38.44307478144765\n" + "epoch: 0 --- loss of G: 187.00772655010223, loss of D: 17.679536825045943\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.70it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 1 --- loss of G: 189.38715118169785, loss of D: 30.993362290784717\n" + "epoch: 1 --- loss of G: 421.60688638687134, loss of D: 0.9925004122778773\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.17it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.57it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 2 --- loss of G: 239.08964610099792, loss of D: 6.970357734709978\n" + "epoch: 2 --- loss of G: 510.64223623275757, loss of D: 0.3214332648785785\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:54<00:00, 1.22it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.63it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 3 --- loss of G: 282.8131763935089, loss of D: 4.137967556715012\n" + "epoch: 3 --- loss of G: 567.562891960144, loss of D: 0.15068832962424494\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:55<00:00, 1.20it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.35it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 4 --- loss of G: 255.01798963546753, loss of D: 5.110567823052406\n" + "epoch: 4 --- loss of G: 599.3213233947754, loss of D: 0.08608292078133672\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:54<00:00, 1.23it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.19it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 5 --- loss of G: 304.87264013290405, loss of D: 8.64646109007299\n" + "epoch: 5 --- loss of G: 588.9778165817261, loss of D: 0.12099041216424666\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:52<00:00, 1.28it/s]\n" + "100%|██████████| 67/67 [00:07<00:00, 8.99it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 6 --- loss of G: 500.5840277671814, loss of D: 24.204148830845952\n" + "epoch: 6 --- loss of G: 603.5574598312378, loss of D: 0.12727271695621312\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:56<00:00, 1.19it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.30it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 7 --- loss of G: 451.33461332321167, loss of D: 0.7537129627307877\n" + "epoch: 7 --- loss of G: 639.0430097579956, loss of D: 0.1332307325792499\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:55<00:00, 1.21it/s]\n" + "100%|██████████| 67/67 [00:13<00:00, 5.15it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 8 --- loss of G: 431.7444968223572, loss of D: 6.4659804629627615\n" + "epoch: 8 --- loss of G: 651.0378975868225, loss of D: 0.9335501801688224\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:56<00:00, 1.18it/s]\n" + "100%|██████████| 67/67 [02:29<00:00, 2.23s/it]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 9 --- loss of G: 596.1160368919373, loss of D: 7.6383128159234275\n" + "epoch: 9 --- loss of G: 616.8124380111694, loss of D: 3.84032856952399\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [03:13<00:00, 2.89s/it]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 10 --- loss of G: 484.0970947742462, loss of D: 15.179329166712705\n" + "epoch: 10 --- loss of G: 519.6118609905243, loss of D: 9.224071164149791\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [01:48<00:00, 1.62s/it]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 11 --- loss of G: 407.63574838638306, loss of D: 0.530137675232254\n" + "epoch: 11 --- loss of G: 562.777735710144, loss of D: 3.7825616598129272\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.87it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 12 --- loss of G: 312.33895611763, loss of D: 3.4384627752006054\n" + "epoch: 12 --- loss of G: 336.34571504592896, loss of D: 20.344450883567333\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 11.03it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 13 --- loss of G: 312.2976408004761, loss of D: 2.7867361521348357\n" + "epoch: 13 --- loss of G: 294.52232551574707, loss of D: 19.83913780748844\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.38it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 14 --- loss of G: 264.729043006897, loss of D: 7.06029037386179\n" + "epoch: 14 --- loss of G: 140.42432856559753, loss of D: 39.276702120900154\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.17it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.78it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 15 --- loss of G: 225.16066551208496, loss of D: 11.562116228044033\n" + "epoch: 15 --- loss of G: 99.24431133270264, loss of D: 38.27878451347351\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.40it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 16 --- loss of G: 218.4423906803131, loss of D: 8.810364093631506\n" + "epoch: 16 --- loss of G: 81.83258920907974, loss of D: 40.19685423374176\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.17it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.40it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 17 --- loss of G: 312.99179339408875, loss of D: 11.620514743030071\n" + "epoch: 17 --- loss of G: 83.60888206958771, loss of D: 40.768057465553284\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.80it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 18 --- loss of G: 211.89375686645508, loss of D: 9.615357603877783\n" + "epoch: 18 --- loss of G: 96.50049769878387, loss of D: 36.23655703663826\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.17it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.50it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 19 --- loss of G: 171.22825515270233, loss of D: 25.423519730567932\n" + "epoch: 19 --- loss of G: 105.58138465881348, loss of D: 35.10594001412392\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:56<00:00, 1.18it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.88it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 20 --- loss of G: 210.7448410987854, loss of D: 24.356860101222992\n" + "epoch: 20 --- loss of G: 114.39195239543915, loss of D: 32.3329062461853\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.14it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.81it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 21 --- loss of G: 244.63870346546173, loss of D: 11.02416418865323\n" + "epoch: 21 --- loss of G: 101.80236661434174, loss of D: 38.6760116815567\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.57it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 22 --- loss of G: 243.14930987358093, loss of D: 22.47604788094759\n" + "epoch: 22 --- loss of G: 109.04553139209747, loss of D: 32.825062185525894\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.60it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 23 --- loss of G: 274.94408202171326, loss of D: 26.34657647460699\n" + "epoch: 23 --- loss of G: 123.76316118240356, loss of D: 30.759442001581192\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.36it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 24 --- loss of G: 234.09665405750275, loss of D: 16.731902796775103\n" + "epoch: 24 --- loss of G: 105.20807480812073, loss of D: 36.456340968608856\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.14it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.38it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 25 --- loss of G: 306.30480122566223, loss of D: 16.174514853628352\n" + "epoch: 25 --- loss of G: 137.6276512145996, loss of D: 25.502176865935326\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.14it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.41it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 26 --- loss of G: 330.1878414154053, loss of D: 34.08231335878372\n" + "epoch: 26 --- loss of G: 149.49159610271454, loss of D: 28.30062609910965\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.14it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.40it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 27 --- loss of G: 254.93080186843872, loss of D: 14.502326969988644\n" + "epoch: 27 --- loss of G: 145.72875905036926, loss of D: 31.580776512622833\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.14it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.45it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 28 --- loss of G: 276.89978194236755, loss of D: 17.942093975842\n" + "epoch: 28 --- loss of G: 130.92576503753662, loss of D: 32.87881879508495\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.14it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.80it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 29 --- loss of G: 207.1793919801712, loss of D: 22.071087922900915\n" + "epoch: 29 --- loss of G: 131.46568083763123, loss of D: 31.840122565627098\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.37it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 30 --- loss of G: 158.61903989315033, loss of D: 27.629727222025394\n" + "epoch: 30 --- loss of G: 84.15838372707367, loss of D: 42.73091375827789\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.69it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 31 --- loss of G: 202.9431939125061, loss of D: 25.77581850066781\n" + "epoch: 31 --- loss of G: 74.97820204496384, loss of D: 40.54647704958916\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.14it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.68it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 32 --- loss of G: 324.6885280609131, loss of D: 36.55593832582235\n" + "epoch: 32 --- loss of G: 101.26055026054382, loss of D: 29.263713508844376\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.31it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 33 --- loss of G: 221.39485549926758, loss of D: 11.331106215715408\n" + "epoch: 33 --- loss of G: 86.86687338352203, loss of D: 37.598598927259445\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.75it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 34 --- loss of G: 147.92780953645706, loss of D: 38.99323396384716\n" + "epoch: 34 --- loss of G: 84.66891765594482, loss of D: 40.19908273220062\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.33it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 35 --- loss of G: 192.14132618904114, loss of D: 28.10118254646659\n" + "epoch: 35 --- loss of G: 79.72011703252792, loss of D: 41.72318208217621\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.59it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 36 --- loss of G: 235.25207090377808, loss of D: 31.65054650232196\n" + "epoch: 36 --- loss of G: 73.43266141414642, loss of D: 40.948941975831985\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.75it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 37 --- loss of G: 157.7527117729187, loss of D: 31.56289905309677\n" + "epoch: 37 --- loss of G: 72.37873077392578, loss of D: 41.60090494155884\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:59<00:00, 1.13it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.73it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 38 --- loss of G: 203.90822780132294, loss of D: 24.688751220703125\n" + "epoch: 38 --- loss of G: 61.18730026483536, loss of D: 44.2846662402153\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.48it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 39 --- loss of G: 193.7863022685051, loss of D: 27.719643944874406\n" + "epoch: 39 --- loss of G: 62.92646849155426, loss of D: 43.42814892530441\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.75it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 40 --- loss of G: 148.90731024742126, loss of D: 24.35784476995468\n" + "epoch: 40 --- loss of G: 70.7225307226181, loss of D: 38.10763677954674\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.27it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 41 --- loss of G: 138.36136281490326, loss of D: 32.37918431684375\n" + "epoch: 41 --- loss of G: 79.05009615421295, loss of D: 38.92615833878517\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.65it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 42 --- loss of G: 144.17725467681885, loss of D: 24.131414487957954\n" + "epoch: 42 --- loss of G: 77.47582876682281, loss of D: 37.80526325106621\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:59<00:00, 1.14it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.84it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 43 --- loss of G: 137.79231882095337, loss of D: 28.492403000593185\n" + "epoch: 43 --- loss of G: 89.28383368253708, loss of D: 36.453640162944794\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.69it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 44 --- loss of G: 130.22422045469284, loss of D: 29.230164095759392\n" + "epoch: 44 --- loss of G: 83.84232759475708, loss of D: 39.26784712076187\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.16it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.62it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 45 --- loss of G: 178.59211683273315, loss of D: 18.080337017774582\n" + "epoch: 45 --- loss of G: 86.17833715677261, loss of D: 37.44430324435234\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.55it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 46 --- loss of G: 208.3746610879898, loss of D: 37.55503672361374\n" + "epoch: 46 --- loss of G: 88.58943152427673, loss of D: 35.40870875120163\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.76it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 47 --- loss of G: 149.65763175487518, loss of D: 29.568245857954025\n" + "epoch: 47 --- loss of G: 88.73302459716797, loss of D: 36.97438296675682\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:57<00:00, 1.17it/s]\n" + "100%|██████████| 67/67 [00:06<00:00, 10.50it/s]\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 48 --- loss of G: 229.93753325939178, loss of D: 25.85401887446642\n" + "epoch: 48 --- loss of G: 71.31993687152863, loss of D: 44.25900250673294\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ - "100%|███████████████████████████████████████████████████████████████████████████████████████████████████████| 67/67 [00:58<00:00, 1.15it/s]" + "100%|██████████| 67/67 [00:06<00:00, 10.71it/s]" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "epoch: 49 --- loss of G: 215.52084922790527, loss of D: 15.89515457302332\n" + "epoch: 49 --- loss of G: 70.42304891347885, loss of D: 37.90644350647926\n" ] }, { @@ -889,10 +946,11 @@ "\n", "# Loss function\n", "loss = torch.nn.BCELoss()\n", + "\n", "opt_G = torch.optim.AdamW(model.generator.parameters(), lr=1e-3)\n", "opt_D = torch.optim.AdamW(model.discriminator.parameters(), lr=1e-4)\n", "\n", - "device = \"cuda:4\"\n", + "device = \"cuda\" if torch.cuda.is_available() else \"cpu\"\n", "model.to(device)\n", "\n", "curve_D, curve_G = [], []\n", @@ -903,35 +961,39 @@ " for batch in tqdm(train_dataloader):\n", " \n", " \"\"\" train discriminator \"\"\"\n", + " \n", " opt_D.zero_grad()\n", - "\n", - " real_imgs = torch.stack(batch[\"path\"], dim=0).to(device)\n", + " \n", + " real_imgs = batch[\"image\"].to(device)\n", + " \n", " batch_size = real_imgs.shape[0]\n", + " \n", " fake_imgs = model.generate_fake(batch_size, device)\n", " \n", " real_loss = loss(model.discriminator(real_imgs), torch.ones(batch_size, 1).to(device))\n", " fake_loss = loss(model.discriminator(fake_imgs.detach()), torch.zeros(batch_size, 1).to(device))\n", " loss_D = (real_loss + fake_loss) / 2\n", - "\n", + " \n", " loss_D.backward()\n", " opt_D.step()\n", " \n", " \"\"\" train generator \"\"\"\n", + " \n", " opt_G.zero_grad()\n", " loss_G = loss(model.discriminator(fake_imgs), torch.ones(batch_size, 1).to(device))\n", - "\n", + " \n", " loss_G.backward()\n", " opt_G.step()\n", " \n", " curve_G[-1] += loss_G.item()\n", " curve_D[-1] += loss_D.item()\n", - "\n", - " print (f\"epoch: {epoch} --- loss of G: {curve_G[-1]}, loss of D: {curve_D[-1]}\")" + " \n", + " print(f\"epoch: {epoch} --- loss of G: {curve_G[-1]}, loss of D: {curve_D[-1]}\")" ] }, { "cell_type": "markdown", - "id": "dd1b7851", + "id": "exp2", "metadata": {}, "source": [ "### EXP 2: synthesize random images" @@ -939,13 +1001,13 @@ }, { "cell_type": "code", - "execution_count": 31, - "id": "e544672a", + "execution_count": 6, + "id": "generate", "metadata": {}, "outputs": [ { "data": { - "image/png": "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MR5KJfWCF7yge9WrXtX/39vb62644YbujjvueByhemzLpz/96a6qut/8zd/suu4q4Rw7dqz75V/+5b7OH/zBH3RV1d15552PF5iPqDz88MPdM5/5zO79739/94/+0T/qldSTZYyvf/3ru6/8yq8cvD8ej7vrrruu+7Ef+7H+2rlz57oTJ050v/ALv/C5APExKV/3dV/Xfdu3fdvUtW/6pm/qbr311q7rnhzjTAG+yJh+//d/v6uq7mMf+1hf57/9t//WjUaj7i/+4i8+Z7AvWlqKOMtHP/rRrqq6T37yk13XfW7HeOjCfZcuXap77rmnbrnllv7a0tJS3XLLLXXnnXc+jpA9tuWhhx6qqqqzZ89WVdU999xTly9fnhr3s571rLrxxhsP3bhf9apX1dd93ddNjaXqyTPGX/u1X6vnP//59U/+yT+ppz/96fVlX/Zl9R//43/s79933311//33T43z9OnTdfPNNx+qcX75l395feADH6g//uM/rqqq3/md36mPfOQj9ZKXvKSqnjzjdFlkTHfeeWedOXOmnv/85/d1brnlllpaWqq77rrrcw7zY1EeeuihGo1GdebMmar63I7x0B0w+1d/9Ve1t7dX11577dT1a6+9tv7wD//wcYLqsS3j8bhe+9rX1ld8xVfUl3zJl1RV1f3331/Hjx/viYRy7bXX1v333/84QPnIyi/+4i/Wb//2b9fHPvaxffeeLGP80z/903rHO95Rr3vd6+rf/Jt/Ux/72Mfqe77ne+r48eN122239WNp0fBhGucb3vCGOn/+fD3rWc/qXyH/5je/uW699daqqifNOF0WGdP9999fT3/606fur6ys1NmzZw/luHd3d+v1r399veIVr+gPmP1cjvHQKamnQnnVq15Vv/u7v1sf+chHHm9QHtPy53/+5/Wa17ym3v/+99fq6urjDc5nrYzH43r+859f//7f//uqqvqyL/uy+t3f/d165zvfWbfddtvjDN1jV37pl36p3vWud9W73/3uevazn1333ntvvfa1r60bbrjhSTXOp3K5fPlyfcu3fEt1XVfveMc7HhcYDl247/M+7/NqeXl5X8bXAw88UNddd93jBNVjV1796lfXe9/73vrQhz409SKw6667ri5dulTnzp2bqn+Yxn3PPffUpz/96fr7f//v92/m/c3f/M1629veVisrK3Xttdce+jFWVV1//fX1d//u35269sVf/MX1Z3/2Z1VV/VgOOw1/7/d+b73hDW+ol7/85fWc5zyn/tk/+2f1r//1v6477rijqp4843RZZEzXXXddffrTn566f+XKlXrwwQcP1bhRUJ/85Cfr/e9//9RrOj6XYzx0Sur48eP1vOc9rz7wgQ/018bjcX3gAx+oF77whY8jZI+udF1Xr371q+tXf/VX64Mf/GDddNNNU/ef97zn1bFjx6bG/Ud/9Ef1Z3/2Z4dm3C960Yvq//7f/1v33ntv/3n+859ft956a//7sI+xquorvuIr9m0f+OM//uP6gi/4gqqquummm+q6666bGuf58+frrrvuOlTj3N7e3veyuuXl5RqPx1X15BmnyyJjeuELX1jnzp2re+65p6/zwQ9+sMbjcd18882fc5gfSUFBfeITn6j/8T/+R11zzTVT9z+nY3xM0zA+R+UXf/EXuxMnTnQ/+7M/2/3+7/9+98pXvrI7c+ZMd//99z/eoD3i8l3f9V3d6dOnu//5P/9n96lPfar/bG9v93W+8zu/s7vxxhu7D37wg93dd9/dvfCFL+xe+MIXPo5QP/ri7L6ue3KM8aMf/Wi3srLSvfnNb+4+8YlPdO9617u69fX17j//5//c13nLW97SnTlzpvuv//W/dv/n//yf7qUvfekTPjU7y2233db9zb/5N/sU9F/5lV/pPu/zPq/7vu/7vr7OYRznww8/3H384x/vPv7xj3dV1f3ET/xE9/GPf7zPbFtkTC9+8Yu7L/uyL+vuuuuu7iMf+Uj3zGc+8wmVgj5rjJcuXeq+4Ru+ofv8z//87t57752SRxcvXuzb+FyN8VAqqa7rure//e3djTfe2B0/frx7wQte0P3Wb/3W4w3SoypV1fz8zM/8TF9nZ2en++7v/u7uaU97Wre+vt594zd+Y/epT33q8QP6MSippJ4sY/z1X//17ku+5Eu6EydOdM961rO6n/7pn566Px6Pu9tvv7279tpruxMnTnQvetGLuj/6oz96nKB9ZOX8+fPda17zmu7GG2/sVldXu7/1t/5W9wM/8ANTguwwjvNDH/pQkxdvu+22rusWG9Nf//Vfd694xSu6zc3N7tSpU923fuu3dg8//PDjMJp2mTXG++67b1AefehDH+rb+FyN8ehVHUflqByVo3JUnrDl0K1JHZWjclSOylF56pQjJXVUjspROSpH5QlbjpTUUTkqR+WoHJUnbDlSUkflqByVo3JUnrDlSEkdlaNyVI7KUXnCliMldVSOylE5KkflCVuOlNRROSpH5agclSdsOVJSR+WoHJWjclSesOVISR2Vo3JUjspRecKWIyV1VI7KUTkqR+UJW46U1FE5KkflqByVJ2w5UlJH5agclaNyVJ6w5f8Hi5mp7TAt9DUAAAAASUVORK5CYII=\n", + "image/png": "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3kvd5+2EwjzP9iZv8ib2N/7G3zh6/zLP+i/+4i/s5OTkyOrq4zGPeYy9z/u8z6XmdTVe9+NKKLyBjFe96lUG2Id8yIfc8tkrXvEKe9nLXjZeWw3sfd/3fe1xj3uc3bx5c7zXWrN3f/d3t7d927cd73Wh8MQnPtFaa+P9z/7sz7aUkr3yla80M7N7773XHvKQh9yiOb/kJS+xu+666+j9run/43/8j2+Z83aOfXzN13yNiYj9/u///njvvtxH//k//2cD7Ad+4AeO3v8P/+E/HL3/0pe+1KZpsqc+9alH99WZ/QMJhQ/90A81wF7xilfc73F99Hv+p//0nx69/47v+I72+Mc//kHP/1//639tgP3yL//yfV7ztXEf9fHt3/7tw7r48R//8Ut/763e6q3sSU960qC53/qt37KP/diPNcA+/dM//ejYyz7rpz/96famb/qmVmsd7/3qr/6qAfZd3/VdD/rersbrZlyhj95Axl/8xV8A3Bbu+IQnPIF77rlnvL75m78ZgD//8z/n537u5/iIj/gI7r33Xl7+8pfz8pe/nD/7sz/jyU9+Mi984Qv5oz/6o6NzffInfzIiMv5+r/d6L2qt/P7v/z4AP/MzP8MrX/lKnv70p4/zvfzlLyelxLu+67vy8z//87fM79M+7dNuee/k5GT8/prXvIaXv/zlvPu7vztmxq/92q894Hr88A//MHfddRfv937vdzSPxz/+8Vy7dm3M42d/9mc5HA4861nPOrqvz/qsz3rAa8C67nfcccelju/jUz/1U4/+fq/3ei/+1//6Xw96/g95yEMABxjM8/yg5nCZ8dCHPhSA09NT3vM93/NBffenf/qnB8097nGP4/u+7/v4hE/4BL7u677u6LjLPuuP+7iP44//+I+PaOgHfuAHODk54cM+7MNem9u7Gq+DkV/fE7gaPjpTuh2q5du//du59957+dM//VP+wT/4B+P9F73oRZgZX/zFX8wXf/EX3/a8L33pS3mzN3uz8fdbvuVbHn1+9913A/CKV7wCgBe+8IUAvM/7vM9tz3fnnXce/Z1z5s3f/M1vOe4P/uAP+JIv+RL+7b/9t+PcfbzqVa+67bm344UvfCGvetWreNjDHnbbz1/60pcCDGH2tm/7tkef33PPPePe7m/0+7n33nsHg36gsd/vueeee47eu/vuu4/u87Lzf+/3fm8+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", "text/plain": [ "
" ] @@ -960,24 +1022,19 @@ "import matplotlib.pyplot as plt\n", "\n", "model.eval()\n", + "\n", "with torch.no_grad():\n", " fake_imgs = model.generate_fake(1, device).detach().cpu()\n", - " plt.imshow(fake_imgs[0][0], cmap=\"gray\")\n", + " plt.imshow(fake_imgs[0].permute(1, 2, 0).clamp(0, 1)) # RGB image\n", + " plt.title(\"Generated Chest X-Ray\")\n", + " plt.axis('off')\n", " plt.show()" ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "267e356d", - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": ".venv", "language": "python", "name": "python3" }, @@ -991,7 +1048,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.16" + "version": "3.12.3" } }, "nbformat": 4, diff --git a/examples/chestXray_image_generation_VAE.ipynb b/examples/chestXray_image_generation_VAE.ipynb new file mode 100644 index 000000000..57c3a2075 --- /dev/null +++ b/examples/chestXray_image_generation_VAE.ipynb @@ -0,0 +1,788 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Chest X-Ray Image Generation using VAE\n", + "\n", + "This notebook illustrates how to use the VAE module to generate X-Ray images, including the new features for conditional generation based on patient features.\n", + "\n", + "We will take the COVID-19 CXR dataset as starting point. This dataset is freely available on Kaggle and contains images of Chest X-Rays from COVID-19 patients." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Download Data\n", + "\n", + "Data is available from Kaggle. If it is not already available locally, download it with the following command:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "# Download command (uncomment to run)\n", + "# !curl -L -o ~/Downloads/covid19-radiography-database.zip https://www.kaggle.com/api/v1/datasets/download/tawsifurrahman/covid19-radiography-database\n", + "# !unzip ~/Downloads/covid19-radiography-database.zip -d ~/Downloads/COVID-19_Radiography_Dataset" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Load Data with PyHealth Datasets\n", + "\n", + "Use the COVID19CXRDataset to load this data. For custom datasets, see the `BaseImageDataset` class." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/ubuntu/PyHealth/pyhealth/trainer.py:12: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", + " from tqdm.autonotebook import trange\n", + "/home/ubuntu/PyHealth/pyhealth/sampler/sage_sampler.py:3: UserWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html. The pkg_resources package is slated for removal as early as 2025-11-30. Refrain from using this package or pin to Setuptools<81.\n", + " import pkg_resources\n" + ] + } + ], + "source": [ + "from pyhealth.datasets import split_by_visit, get_dataloader\n", + "from pyhealth.trainer import Trainer\n", + "from pyhealth.datasets import COVID19CXRDataset\n", + "from pyhealth.models import VAE\n", + "from pyhealth.processors import ImageProcessor\n", + "from torchvision import transforms\n", + "from pyhealth.processors import SequenceProcessor\n", + "\n", + "\n", + "import torch\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Load Data and resize images to 64x64\n", + "\n", + "Assuming data is available locally, we load it and apply an ImageProcessor step to resize all the Chest X-Ray images to 64x64." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "No config path provided, using default config\n", + "Initializing covid19_cxr dataset from /home/ubuntu/Downloads/COVID-19_Radiography_Dataset (dev mode: False)\n", + "Scanning table: covid19_cxr from /home/ubuntu/Downloads/COVID-19_Radiography_Dataset/covid19_cxr-metadata-pyhealth.csv\n", + "Setting task COVID19CXRClassification for covid19_cxr base dataset...\n", + "Generating samples with 1 worker(s)...\n", + "Collecting global event dataframe...\n", + "Collected dataframe with shape: (21165, 6)\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Generating samples for COVID19CXRClassification with 1 worker: 100%|██████████| 21165/21165 [00:08<00:00, 2397.69it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Label disease vocab: {'COVID': 0, 'Lung Opacity': 1, 'Normal': 2, 'Viral Pneumonia': 3}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Processing samples: 100%|██████████| 21165/21165 [00:33<00:00, 630.01it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Generated 21165 samples for task COVID19CXRClassification\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# Step 1: Load data\n", + "covid19cxr_path = \"/home/ubuntu/Downloads/COVID-19_Radiography_Dataset\"\n", + "base_dataset = COVID19CXRDataset(covid19cxr_path)\n", + "image_size = 128\n", + "\n", + "# Step 2: Set task with custom image processing for VAE\n", + "image_processor = ImageProcessor(image_size=image_size, mode=\"L\") # Resize to 128x128 for VAE\n", + "sample_dataset = base_dataset.set_task(input_processors={\"image\": image_processor})\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Map disease metadata\n", + "\n", + "We prepare the disease status as an input processor. This will allow us to later generate images conditioned by the disease status - for example, different images for COVID patients vs normal." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Scanning table: covid19_cxr from /home/ubuntu/Downloads/COVID-19_Radiography_Dataset/covid19_cxr-metadata-pyhealth.csv\n" + ] + } + ], + "source": [ + "covid_metadata = base_dataset.load_table('covid19_cxr').collect()\n", + "vocab = {'COVID': 0, 'Lung Opacity': 1, 'Normal': 2, 'Viral Pneumonia': 3}\n", + "\n", + "# Add processor for the conditional feature\n", + "sample_dataset.input_processors[\"disease\"] = SequenceProcessor()\n", + "sample_dataset.input_processors[\"disease\"].code_vocab = vocab" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Split Train/Validation/Test\n", + "\n", + "We apply a simple train/validation/test split, to evaluate the performances of the model during training." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Data keys: dict_keys(['image', 'disease'])\n", + "Image shape: torch.Size([1, 64, 64])\n", + "Dataset sizes - Train: 12699, Val: 4233, Test: 4233\n" + ] + } + ], + "source": [ + "# Split dataset\n", + "train_dataset, val_dataset, test_dataset = split_by_visit(\n", + " sample_dataset, [0.6, 0.2, 0.2]\n", + ")\n", + "train_dataloader = get_dataloader(train_dataset, batch_size=256, shuffle=True)\n", + "val_dataloader = get_dataloader(val_dataset, batch_size=256, shuffle=False)\n", + "test_dataloader = get_dataloader(test_dataset, batch_size=256, shuffle=False)\n", + "\n", + "# Check data\n", + "data = next(iter(train_dataloader))\n", + "print(\"Data keys:\", data.keys())\n", + "print(\"Image shape:\", data[\"image\"][0].shape)\n", + "print(f\"Dataset sizes - Train: {len(train_dataset)}, Val: {len(val_dataset)}, Test: {len(test_dataset)}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Basic VAE Training (Image Generation)\n", + "\n", + "Here we train a standard VAE for unconditional image generation.\n", + "\n", + "Note how we are passing the disease state as conditional_feature_key - this will help the model learn to distinguish images based on the disease state.\n", + "\n", + "Note: since this notebook is just a demo, we will only run 5 epochs. Image generation will work much better if the VAE is trained for longer." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Warning: No embedding created for field due to lack of compatible processor: image\n", + "VAE(\n", + " (embedding_model): EmbeddingModel(embedding_layers=ModuleDict(\n", + " (disease): Embedding(4, 256, padding_idx=0)\n", + " ))\n", + " (encoder1): Sequential(\n", + " (0): ResBlock2D(\n", + " (conv1): Conv2d(1, 16, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))\n", + " (bn1): BatchNorm2d(16, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", + " (relu): ELU(alpha=1.0)\n", + " (conv2): Conv2d(16, 16, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n", + " (bn2): BatchNorm2d(16, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", + " (maxpool): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)\n", + " (downsampler): Sequential(\n", + " (0): Conv2d(1, 16, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))\n", + " (1): BatchNorm2d(16, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", + " )\n", + " (dropout): Dropout(p=0.5, inplace=False)\n", + " )\n", + " (1): ResBlock2D(\n", + " (conv1): Conv2d(16, 64, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))\n", + " (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", + " (relu): ELU(alpha=1.0)\n", + " (conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n", + " (bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", + " (maxpool): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)\n", + " (downsampler): Sequential(\n", + " (0): Conv2d(16, 64, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))\n", + " (1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", + " )\n", + " (dropout): Dropout(p=0.5, inplace=False)\n", + " )\n", + " (2): ResBlock2D(\n", + " (conv1): Conv2d(64, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))\n", + " (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", + " (relu): ELU(alpha=1.0)\n", + " (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n", + " (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", + " (maxpool): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)\n", + " (downsampler): Sequential(\n", + " (0): Conv2d(64, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1))\n", + " (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n", + " )\n", + " (dropout): Dropout(p=0.5, inplace=False)\n", + " )\n", + " )\n", + " (mu): Linear(in_features=256, out_features=256, bias=True)\n", + " (log_std2): Linear(in_features=256, out_features=256, bias=True)\n", + " (decoder1): Sequential(\n", + " (0): ConvTranspose2d(256, 128, kernel_size=(5, 5), stride=(2, 2))\n", + " (1): ReLU()\n", + " (2): ConvTranspose2d(128, 64, kernel_size=(5, 5), stride=(2, 2))\n", + " (3): ReLU()\n", + " (4): ConvTranspose2d(64, 32, kernel_size=(6, 6), stride=(2, 2))\n", + " (5): ReLU()\n", + " (6): ConvTranspose2d(32, 1, kernel_size=(6, 6), stride=(2, 2))\n", + " (7): Sigmoid()\n", + " )\n", + ")\n", + "Metrics: ['kl_divergence', 'mse', 'mae']\n", + "Device: cuda\n", + "\n", + "Training:\n", + "Batch size: 256\n", + "Optimizer: \n", + "Optimizer params: {'lr': 0.001}\n", + "Weight decay: 0.0\n", + "Max grad norm: None\n", + "Val dataloader: \n", + "Monitor: kl_divergence\n", + "Monitor criterion: min\n", + "Epochs: 5\n", + "Patience: None\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Epoch 0 / 5: 0%| | 0/50 [00:00" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Get real and reconstructed images\n", + "X, X_rec, _ = trainer.inference(test_dataloader)\n", + "\n", + "# Plot comparison\n", + "fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(10, 5))\n", + "ax1.imshow(X[0].reshape(image_size, image_size), cmap=\"gray\")\n", + "ax1.set_title(\"Real Chest X-Ray\")\n", + "ax1.axis('off')\n", + "\n", + "ax2.imshow(X_rec[0].reshape(64, 64), cmap=\"gray\")\n", + "ax2.set_title(\"Reconstructed by VAE\")\n", + "ax2.axis('off')\n", + "\n", + "plt.tight_layout()\n", + "plt.savefig(\"chestxray_vae_comparison.png\", dpi=150)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Experiment 2: Random Image Generation\n", + "\n", + "Once the VAE has been trained, we can use it to generate new random chest X-Ray images. Results will be better if the model is trained for more epochs." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZQAAAGrCAYAAADn6WHYAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAXVlJREFUeJztvXmwZVV5/r+ahp7upZtWGhlEumTugIkSxQiELmahZQgUAgYaiAwWYFQoSMUBiAJliSGESYSKDEKwBGNioolakjIJodSACGUiYAiEmWZoeqADNOv3h97ze+7p87n9rHv299uQ7/Opsuqwe529115777N9n/u87zul1lpLCCGEMCTrresJhBBC+N9BXighhBA6IS+UEEIInZAXSgghhE7ICyWEEEIn5IUSQgihE/JCCSGE0Al5oYQQQuiEvFBCCCF0Ql4o4f9Z5s+fX44//vhO93n88ceX0dHRTvcZwhuFvFDegDz00EPl9NNPL9ttt12ZNWtWmTVrVlmwYEE57bTTys9+9rN1Pb1O+fa3v13OO++8dT2NsmrVqnLJJZeUXXfdtcyZM6fMmDGjbLfdduX0008v999//zqd28qVK8t5551X/vEf/9Ea/6lPfapMmTJl4PhbbrmlTJkypVx++eUT7mP+/PllypQpvf+NjIyU97znPeWGG26YxBmE/y1MSS2vNxZ/+7d/Wz74wQ+W9ddfv3zoQx8qv/mbv1nWW2+98h//8R/lG9/4Rnn44YfLQw89VLbaaqt1PdVOOP3008sVV1xR/k/cpvPnzy8LFy4s11133YTjlixZUg444IDyb//2b2XRokVln332KaOjo+UXv/hFueWWW8qTTz5ZXn755VLKryKUW2+9tSxfvrzz+U40v3nz5pVzzz3XevmuWrWq7LTTTmX99dcvP/vZz8q0adNKKaW88MILZccddyxbbrllufPOO8t66/H/35w/f36ZO3duOfPMM0sppTzxxBPl2muvLffff3/58pe/XE466aROzi28wajhDcODDz5YR0ZG6o477lgff/zxNf79lVdeqZdeeml95JFH1sHsPJYvX940/rTTTqv/p27Trbbaqi5evHit4w466KC63nrr1VtvvXWNf1u1alU988wze/+9ePHiOjIy0uU018ozzzxTSyn13HPPtb/z3e9+t5ZS6nnnndfbdsopp9SpU6fWu+++e63f32qrrepBBx00btvTTz9dR0dH64477mjPI/zvIi+UNxAnn3xyLaXUO++8s+l7//7v/14PP/zwOnfu3Dp9+vS6yy671L/+678eN+YrX/lKLaXUf/7nf64f//jH68Ybb1xnzZpVDz300Pr000+vsc9vf/vbdffdd6+zZs2qo6Oj9cADD6z33XffuDFjP64PPvhgff/7319HR0frIYccUmut9Yc//GE94ogj6pZbblmnTZtW3/rWt9aPfexjdeXKleO+X0pZ439jrF69ul5yySV1wYIFdfr06XWTTTapJ598cn3uuefGzeO1116rn/3sZ+sWW2xRZ86cWRcuXFjvu+8+64Vy55131lJKPemkk5yl7p3zo48+Wg855JA6MjJSN95443rmmWfWV199ddxYd/4//vGP63777Vff/OY31xkzZtT58+fXE044odZa60MPPTRwjZyXyzHHHFOnT59ef/GLX9Q77rijTpkypX7iE5+wznPQC6XWWn/7t3+7Tps2bdw251r/xV/8RS2l1LvuumuNfV5wwQV1vfXWq48++qg1t7DuyAvlDcTmm29et9lmm6bv3HfffXXOnDl1wYIF9fOf/3y9/PLL6+/+7u/WKVOm1G984xu9cWMvlHe+8511r732qpdddlk988wz69SpU+uRRx45bp833HBDnTJlSj3ggAPqZZddVj//+c/X+fPn14022qg+9NBDvXGLFy+u06dPr1tvvXVdvHhx/dKXvlRvuOGGWmutZ5xxRj3wwAPrhRdeWK+++ur6B3/wB3Xq1Kn1iCOO6H3/jjvuqPvuu28tpdQbb7yx978xPvzhD9f111+/nnTSSfVLX/pSPeecc+rIyEh997vfXV9++eXeuE996lO1lFIPPPDAevnll9cTTzyxbr755nXjjTde6wvlj//4j2sppf7whz+01nvx4sV1xowZ9Td+4zfqiSeeWK+66qp6+OGH11JKvfLKK8eNdeb/1FNP1blz59btttuufuELX6jXXHNN/eQnP9mLApYvX16vuuqqWkqphx12WG+N7rnnnrXO9cknn6xz586tCxcurDvvvHPdcsst67Jly6zzHPRCeeWVV+qmm25a3/KWt4zb7lzrF198sc6cOXNctDfGggUL6l577WXNK6xb8kJ5g7B06dJaSqmHHnroGv/2/PPP12eeeab3P/1/fnvvvXfdeeed66pVq3rbXnvttfq+972vbrvttr1tYy+UffbZp7722mu97R//+Mfr1KlT6wsvvFBrrXXZsmV1o402WuP/sT/55JN1zpw547aPRRh/9Ed/tMacdY5jXHTRRXXKlCn14Ycf7m0jyeuf/umfaiml3nTTTeO2//3f//247U8//XSdNm1aPeigg8ad19iLYm0vlMMOO6yWUurzzz8/4bgxxs75T/7kT8Ztf+c731l32WWX5vn/1V/9VS2l1B//+Md4zMlIXmNcffXVvajmm9/8pv29rbbaqu633369e+7ee++txx57bC2l1NNOO23cWPdaH3300XXzzTevq1ev7m276667aimlfuUrX2k+t/B/n7i83iC8+OKLpZQy0JK6cOHCMm/evN7/rrjiilJKKc8991z5wQ9+UI488siybNmysmTJkrJkyZLy7LPPlv3337888MAD5bHHHhu3r5NPPrlMmTKl99977LFHWb16dXn44YdLKaV873vfKy+88EI5+uije/tbsmRJmTp1atl1113L7bffvsb8PvKRj6yxbebMmb3PK1asKEuWLCnve9/7Sq213H333Wtdj69//etlzpw5Zd999x03j1122aWMjo725vH973+/vPzyy+WMM84Yd14f+9jH1nqMUv7/dd9www2t8WOceuqp4/57jz32KP/5n//ZPP+NNtqolPIrM8Yrr7zSNAeHjTfeuJRSyqxZs8ruu+/e9N3vfve7vXtu5513LjfeeGM54YQTyhe+8IVx49xrfdxxx5XHH3983D100003lZkzZ5bDDz98MqcX/i+z/rqeQPAY+0Eb5B66+uqry7Jly8pTTz1Vfv/3f7+3/cEHHyy11vLpT3+6fPrTnx6436effrpsscUWvf9+29veNu7f586dW0op5fnnny+llPLAAw+UUkrZa6+9Bu5v9uzZ4/57/fXXL29961vXGPfII4+Uz3zmM+Vv/uZvevseY+nSpQP3rTzwwANl6dKlZZNNNhn4708//XQppfRehNtuu+24f583b17v3CZi7HyWLVvW+3FfGzNmzCjz5s0bt23u3LnjztOd/5577lkOP/zwcv7555dLLrmkLFy4sBx66KHlmGOOKdOnT7fmQyxbtqx89KMfLdtvv3355S9/Wc4555xy7bXX9v596dKl5aWXXur997Rp08qb3vSm3n/vuuuu5XOf+1xZvXp1ue+++8rnPve58vzzz/dcY2O413rfffctm222WbnpppvK3nvvXV577bXyl3/5l+WQQw5pfqGHdUNeKG8Q5syZUzbbbLNy3333rfFvu+66aymllP/6r/8at/21114rpZRy1llnlf3333/gfrfZZptx/z116tSB4+qvbbtj+7zxxhvLpptuusa49dcff0tNnz59Dfvp6tWry7777luee+65cs4555QddtihjIyMlMcee6wcf/zxvWNMxGuvvVY22WSTctNNNw389/4f9Mmyww47lFJKuffee8see+xhfYfWUHHnP2XKlHLrrbeWO++8s3zrW98q//AP/1BOPPHE8sUvfrHceeedQyVRfvKTnyxPPvlk+dGPflRuueWWcvHFF5cTTjih7LbbbqWUUv7wD/+wXH/99b3xe+6557jclY033rjss88+pZRS9t9//7LDDjuURYsWlUsvvbR84hOfKKW0XeupU6eWY445plxzzTXlyiuvLP/yL/9SHn/88XH/Jym8vskL5Q3EQQcdVK699tryox/9qLznPe9Z6/i3v/3tpZRSNthgg96DPyxbb711KaWUTTbZZNL7vPfee8v9999frr/++nLcccf1tn/ve99bY6zKVP3z+P73v1922223cZJKP2P5OA888EBvPUop5Zlnnlnj/y0P4gMf+EC56KKLyle/+lX7heLgzn+M9773veW9731vueCCC8rNN99cPvShD5VbbrmlfPjDH8Y1moif/OQn5YorrihnnHFGede73lW233778rWvfa2ceuqp5e677y7rr79+Ofvss8f9mK8tojvooIPKnnvuWS688MJyyimnlJGRkaZrXcqvZK8vfvGL5Vvf+lb5zne+U+bNm4f/Zyi8/sjfUN5AnH322WXWrFnlxBNPLE899dQa/177kv822WSTsnDhwnL11VeXJ554Yo3xzzzzTPMc9t9//zJ79uxy4YUXDtT0nX2O/T94nW+ttVx66aVrjB0ZGSml/CrpTjnyyCPL6tWry2c/+9k1vvPqq6/2xu+zzz5lgw02KJdddtm44/3Zn/3ZWudZSim/8zu/Uw444IBy7bXXlm9+85tr/PvLL79czjrrLGtfk5n/888/v8Z1/a3f+q1SSin/8z//U0r51d8/SllzjYjVq1eXU045pWy22Wa944+MjJTLLrus3HfffeWSSy4ppZSyYMGCss8++/T+t8suu6x13+ecc0559tlnyzXXXFNKabvWpZTyjne8o7zjHe8o1157bbntttvKUUcdtUbUG16/5Eq9gdh2223LzTffXI4++uiy/fbb9zLla63loYceKjfffHNZb731xv3N4oorrii777572XnnnctJJ51U3v72t5ennnqq/Ou//mt59NFHyz333NM0h9mzZ5errrqqHHvsseVd73pXOeqoo8q8efPKI488Uv7u7/6u7Lbbbmst27HDDjuUrbfeupx11lnlscceK7Nnzy633XbbwIhh7Efsox/9aNl///3L1KlTy1FHHVX23HPPcsopp5SLLrqo/PSnPy377bdf2WCDDcoDDzxQvv71r5dLL720HHHEEWXevHnlrLPOKhdddFFZtGhROfDAA8vdd99dvvOd7/T+IL02brjhhrLffvuV3/u93ysf+MAHyt57711GRkbKAw88UG655ZbyxBNPlIsvvrhpHd35X3/99eXKK68shx12WNl6663LsmXLyjXXXFNmz55dDjzwwFLKr/7ovWDBgvK1r32tbLfdduVNb3pT2WmnncpOO+008Nh//ud/Xu66665y2223jfvbxMEHH1wOPvjgcv7555cPfvCDa/w9zeH9739/2Wmnncqf/umfltNOO63pWo9x3HHH9V7SkbveYKwbc1kYhgcffLB+5CMfqdtss02dMWNGnTlzZt1hhx3qqaeeWn/605+uMf6Xv/xlPe644+qmm25aN9hgg7rFFlvURYsWjcv8HrMN99tTb7/99lpKqbfffvsa2/fff/86Z86cOmPGjLr11lvX448/vv7kJz/pjZkoa/znP/953Weffero6GjdeOON60knnVTvueeeNSyir776aj3jjDPqvHnz6pQpU9awEH/5y1+uu+yyS505c2bdcMMN684771zPPvvscZUEVq9eXc8///y62WabNSc2jrFy5cp68cUX13e/+911dHS0Tps2rW677bb1jDPOqA8++OBaz/ncc88daH9e2/zvuuuuevTRR9e3ve1tveTHRYsWjVvnWn+Vs7PLLrvUadOmTWgh/u///u86OjpaFy1aNPDfH3744ToyMlIPPvjgCdeDEhtrrfW6664bdx3daz3GE088UadOnVq32267CecQXn+kllcI4XXFkiVLymabbVY+85nPoDsxvD7J31BCCK8rrrvuurJ69epy7LHH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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Generate synthetic images\n", + "model = trainer.model\n", + "model.eval()\n", + "\n", + "with torch.no_grad():\n", + " # Sample from latent space\n", + " z = torch.randn(1, model.hidden_dim).to(model.device)\n", + " \n", + " # Reshape for decoder (add spatial dims)\n", + " z = z.unsqueeze(2).unsqueeze(3)\n", + " \n", + " # Generate image\n", + " generated = model.decoder(z).detach().cpu().numpy()\n", + " \n", + " # Plot\n", + " plt.figure(figsize=(5, 5))\n", + " plt.imshow(generated[0].reshape(image_size, image_size), cmap=\"gray\")\n", + " plt.title(\"Generated Chest X-Ray\")\n", + " plt.axis('off')\n", + " plt.savefig(\"chestxray_vae_synthetic.png\", dpi=150)\n", + " plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## New Feature: Conditional VAE\n", + "\n", + "We can use the VAE to generate random images, conditioned of patient features, such as the disease state. For example, we can generate images for COVID patients, and compare to normal patients.\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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MpSXl4eysrIwatSosGnTpqRjt27dGq666qrQvHnzUFJSEgYPHhw+//zzBvep/hn85JNPQgg7x3j3+1q/6Lz88svBzMLLL7+c9Fr/9m//Fg477LDQtGnTUFVVFUaMGNFg3Dxz9M477wxHH310aNasWWjatGk47LDDwpNPPtlgzDJdaDZu3BiuueaasP/++4fGjRuHjh07hjvvvLPBG6eZhcsvvzw888wz4eCDDw6NGzcOnTt3Di+88MIeX+Pxxx8PZhZuvfXWPR4bws6FobKyssEniHoTJkwIZhYee+yxEML/zbUxY8Y0OPbNN98MZhZuueWWRJt3oQkhhH79+oW8vLzw4YcfJrU/++yz8jlJx7XQ7LvvvqF9+/auF1iyZEkoLy8PnTt3DhMnTgxTp04Nxx9/fMjLywtPP/104rj6Sd69e/dw4oknhilTpoSxY8eG/Pz8Bivrww8/HPLy8sJJJ50UpkyZEiZOnBjatGkTKioqEg9JCP/38bBdu3Zh5MiR4d577w0PP/xwCCGEMWPGhAEDBoTbbrst3HfffeH8888P+fn5YejQoYnvf/XVV0Pfvn2DmSU+Ys6ePTvx9QsuuCA0atQoXHjhheHee+8N48ePD8XFxeHwww8P27ZtSxx3/fXXBzMLAwYMCFOnTg2jR48O++67b2jevPkeH46f/vSnwczC73//+4zGe+TIkaFp06bh4IMPDqNHjw4zZswIp59+ejCzMH369KRjM+n/N998EyorKxMP5P333x+uu+66xKeGjRs3hhkzZgQzC6eeempijN5555099vXrr78OlZWVoXfv3qFr167hgAMOCLW1tRldZ6qF5rvvvgv77LNP2HvvvZPaM7nXGzZsCIWFhSk/XXTu3DmceOKJafvzyCOPBDML7777blK79/4tXLgwNGrUKHTs2DHccccdYcKECaF58+ahsrIyaW7Xv3l07949nHbaaWH69OnhggsuCGYWxo0bl3TOs88+O5hZGD58eJg6dWo47bTTEr8iSbfQPPPMM2H//fcP1dXVifu6YMGCEELqhab++w8//PAwadKk8OMf/zgUFhaGNm3ahJqamsRxnjm6//77h8suuyxMnTo13H333eGII44IZhaef/75pOMyWWh27NgRTjzxxJCXlxcuuOCCMHXq1DB48OBgZuGqq65KOrb+11itWrUKt9xyS7jnnntC27ZtQ1FRUVi9enXa1xk+fHgws4x+s/PRRx8FMwujRo2Sx9T/MDdixIhE2zHHHBP23nvvBgvzNddcE8wsfPzxx4m2bBaa2bNnBzMLU6dOTWr/4osvgpmFKVOm7PHadpXxQrN+/fpgZuFHP/pRg6/V1NSEVatWJf6360+KP/zhD0PXrl3D1q1bE207duwIxxxzTNLvKesnaZ8+fZJ+urj66qtDfn5+WLduXQghhNra2lBRUdHgJ8Svv/46lJeXJ7XXfyL58Y9/3KDPu/ax3u233x7y8vLC8uXLE23qV2evvPJKMLPw6KOPJrX/+te/TmpfuXJlaNy4cRg4cGDSddW/Ae3p4Tj11FODmSU9qOnUX/M///M/J7V379499OjRw93/Z555JphZeOONN+RrZvOrs3r33Xdf4qflefPmZfx9rVu3Dv369UvMuffeey+cc845iZ9Ed5XpvR42bFjYd999k/67w6JFi4KZhVmzZqXtT/0PE7svlN77d+ihh4aWLVuGNWvWJNreeeedsNdee4Vzzz030Vb/5jF69OgGr1dVVZX499tvvx3MLFx22WVJx9W/GaZbaELQvzrbfaHZtm1baNmyZejSpUvSf6N6/vnng5mFG2+8MdGW6RwNoeG927ZtW+jSpUuDhT+ThWbevHnBzMLPfvazpPahQ4eGvLy8sGzZskSbmYXGjRsntb3zzjsZvcl27949lJeXpz1m9z5NmjQp7XFlZWXhsMMOS/x72rRpwczCiy++mGirq6sL++23Xzj66KOTvjebhWbx4sXBzMLVV1/d4GuNGzcOl1566Z4uLUnGqbMNGzaYmaWMzvbu3dtatGiR+N+0adPMzGzt2rX229/+1s444wyrra211atX2+rVq23NmjXWv39/W7p0qa1YsSLpXBdddJHl5eUl/n3cccdZXV2dLV++3MzMFi5caOvWrbNhw4Ylzrd69WrLz8+3I4880l5++eUG/bv00ksbtBUWFib+/6ZNm2z16tV2zDHHWAjBFi9evMfxePLJJ628vNz69u2b1I8ePXpYSUlJoh8vvfSSbdu2zcaMGZN0XVddddUeX8Ps/8a9tLQ0o+PrXXLJJUn/Pu644+xPf/qTu/8VFRVmtjMR891337n6kInmzZubmVlRUZEde+yxru9dsGBBYs517drVZs+ebeedd57deeedScdleq/PPfdc+/LLL5Pm0KOPPmqFhYV2+umnp+3LmjVrrFGjRg2eD8/9++qrr+ztt9+2UaNGWbNmzRLt3bp1s759+9r8+fMbfE+q+7xmzZrE69Z/z5VXXpl0XKbzL1NvvvmmrVy50i677DJr2rRpon3gwIFWXV1tv/rVrzLq+65z1Cz53tXU1Nj69evtuOOOs0WLFrn7OH/+fMvPz28wFmPHjrUQgr3wwgtJ7X369LF27dol/t2tWzcrKytr0MfdbdiwIePntba21sz2PD9KS0sT99TM7Mwzz7SCggKbM2dOou0//uM/bMWKFTZixIiMXjud+nlc379dVVZWJiXYMpHxQlM/EBs3bmzwtfvuu88WLlxojzzySFL7smXLLIRgN9xwQ9JC1KJFC7vpppvMzGzlypVJ33PggQcm/buystLMdk4ys53RPTOzE088scE5FyxY0OB8jRo1sv33379Bnz/77LPEA11SUmItWrSwXr16mZnZ+vXr9zgeS5cutfXr11vLli0b9GPjxo2JftQvkB06dEj6/hYtWiSuLZ2ysjIzS33DlaZNm1qLFi2S2iorKxNj6Ol/r1697PTTT7cJEyZY8+bN7ZRTTrFZs2bZt99+m3F/lNraWrvyyiutU6dOtm3bNhs/fnzS19evX29ff/114n9r165N+vqRRx5pCxcutF//+td21113WUVFhdXU1Fjjxo2Tjsv0Xvft29datWpljz76qJmZ7dixwx577DE75ZRT3At9Pc/9q58rnTp1avC1gw46yFavXm2bNm1Kat/T87J8+XLba6+9kt4w1Wv8JdL1vbq6OvH1epnMUbOdP+AcddRR1rRpU2vWrJm1aNHCZsyYkdEzmqqP++67b4N7edBBByVdQ73dx1b1cXdlZWUZP6/1fdnT8bW1tUn9rqqqsv79+9szzzxjW7duNTOzOXPmWKNGjeyMM87I6LXTqX+fTzXvQwhJPzRnolGmB5aXl1urVq1syZIlDb525JFHmpk1+EOv+iz2tddea/3790953vbt2yf9Oz8/P+Vx4c87Ttefc/bs2bbPPvs0OK5Ro+RLatKkSYO/aairq7O+ffva2rVrbfz48VZdXW3FxcW2YsUKGzVqVEZ/bLdjxw5r2bJl4k1pd7s/RNmqrq42M7P33nvPjjvuuIy+R43hrjLtf15enj311FP2+uuv23PPPWcvvviijR492n7+85/b66+//hf9ceh1111nX3/9tf3hD3+wxx9/3O666y4777zzrGfPnmZm9o//+I/20EMPJY7v1atX0t/eNG/e3Pr06WNmZv3797fq6mobNGiQTZ48OfE3BJ57nZ+fb8OHD7f777/fpk+fbv/1X/9lX375pZ199tl7vJaqqirbvn17gzeEbO6fx56el++rTOboK6+8YkOGDLHjjz/epk+fbq1atbKCggKbNWtW0k/yf+0+7mlsq6urbfHixfb555/bAQcckPbY+kUu3d8fLl++3DZs2GCdO3dOaj/77LPt+eeft+eff96GDBlic+fOtX79+uXkvaf+fX7392czs3Xr1iV+E5GpjBcas50fgx944AH7wx/+YEccccQej2/btq2ZmRUUFCTeEP5S9T+ZtWzZMutzvvfee/bRRx/ZQw89ZOeee26ifeHChQ2OVSt3u3bt7KWXXrKePXsmfbzfXevWrc1s5yeI+vEwM1u1atUefzIyMxs8eLDdfvvt9sgjj+T0jSrT/tc76qij7KijjrJbb73V5syZYyNGjLDHH3/cLrjgAvdPN2Y7f9Uybdo0GzNmjB122GHWqVMne+KJJ+ySSy6xxYsXW6NGjWzcuHFJb/J7+gQ4cOBA69Wrl91222128cUXW3Fxsetem+389dnPf/5ze+655+yFF16wFi1ayB+SdlW/oHzyySfWrVu3RLvn/tXPlQ8//LDB1z744ANr3ry5FRcX77Evu59zx44d9vHHHyd92kj1Gqlkem937fuJJ56Y9LUPP/ww8XWPuXPnWtOmTe3FF1+0Jk2aJNpnzZrlPld9H1966aUGPwx88MEHia/nwuDBg+2xxx6zRx55xH7yk5+kPbZjx47WsWNHmzdvnk2ePDnlJ4j6P0IeNGhQUvuQIUOstLTU5syZYwUFBVZTU5OTX5uZ7fxBPi8vz/r27ZvUvmLFCtu2bVtigcyUqzLAuHHjrKioyEaPHm3ffPNNg6/vvtK3bNnSevfubffdd5999dVXDY5ftWqVq7NmO39yLSsrs9tuuy3lfzPI5Jz1P6ns2t8Qgk2ePLnBsfUP9rp165LazzjjDKurq7Nbbrmlwfds3749cXyfPn2soKDApkyZkvR699xzzx77aWZ29NFH20knnWQPPPCAzZs3r8HXt23bZtdee21G58qm/zU1NQ3u66GHHmpmlvj1WVFRkZk1HCOlrq7OLr74YmvVqlXi9YuLi23KlCm2ZMkSmzRpkpmZde7c2fr06ZP4X48ePfZ47vHjx9uaNWvs/vvvNzPfvTbb+Xv4bt262QMPPGBz5861s846q8Gn5FSOPvpoM9u5gO7enun9a9WqlR166KH20EMPJY3lkiVLbMGCBTZgwIA99mN3J598spmZ/eIXv0hqz3T+FRcXZ3Rff/CDH1jLli3t3nvvTfq16gsvvGB//OMfbeDAgRn3uV5+fr7l5eVZXV1dou3TTz9NOY6ZGDBggNXV1TWoOjFp0iTLy8tLjNVfaujQoda1a1e79dZb7bXXXmvw9draWrvuuusS/77xxhutpqbGLrnkkqRrNTN76623bOLEidalS5cG/52wsLDQTj31VJs/f77NmDHDiouL7ZRTTvmL+/8v//IvtmDBAjvzzDMb/Mr/rbfeMjOzY445xnVO1yeaDh062Jw5c2zYsGHWqVMnGzFihB1yyCEWQrBPPvnE5syZY3vttVfSfxOZNm2aHXvssda1a1e78MILrW3btvbNN9/Ya6+9Zl988YW98847rg6XlZXZjBkz7JxzzrHDDjvMzjrrLGvRooV99tln9qtf/cp69uy5x/Il1dXV1q5dO7v22mttxYoVVlZWZnPnzk35CaP+ze3KK6+0/v37W35+vp111lnWq1cvu/jii+3222+3t99+2/r162cFBQW2dOlSe/LJJ23y5Mk2dOhQa9GihV177bV2++2326BBg2zAgAG2ePFie+GFFzL++Pnwww9bv3797LTTTrPBgwfbD3/4QysuLralS5fa448/bl999ZXdddddrnHMtP8PPfSQTZ8+3U499VRr166d1dbW2v33329lZWWJN77CwkLr3LmzPfHEE9axY0dr1qyZdenSxbp06ZLytX/xi1/YokWLbO7cuUk/wQ0ZMsSGDBliEyZMsDPPPDPl78j35OSTT7YuXbrY3XffbZdffrnrXtc799xzE2/+mfzazGznp/cuXbrYSy+9ZKNHj076muf+3XnnnXbyySfb0Ucfbeeff75t2bLFpkyZYuXl5VmVQjr00ENt2LBhNn36dFu/fr0dc8wx9pvf/MaWLVuW0ff36NHDZsyYYT/72c+sffv21rJlywafWMx2/tZi4sSJdt5551mvXr1s2LBh9s0339jkyZOtTZs2dvXVV7v7PnDgQLv77rvtpJNO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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdIAAAGrCAYAAAB0TRY/AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAQsZJREFUeJzt3XuYlWW9//HvcBjmPIAMAWKQCI4IeCDxlGGKonLQ1G2CB9A0TNM8Je5sb7NSt2migXiiPBvtYldaWGLZ7uhVXR7JDmBiZR5AOcwwA8jw/f3hb1asmfVZs77cS521e7+uy+uSe565n/u5n/tZ9yz4rO+UubsbAADYIT3e6wEAAFDK2EgBAEjARgoAQAI2UgAAErCRAgCQgI0UAIAEbKQAACRgIwUAIAEbKQAACdhI30PDhw+32bNnF7XP2bNnW01NTVH7ROG+/OUvW2Njo23btu29HkqXysrK7POf/3zmz3fffbeVlZXZqlWruvzen/70p1ZWVmY//elP37HxRbwTzxK6r9mzZ9vw4cOL2ufJJ59sJ5100g597w5tpC+++KJ96lOfslGjRllVVZVVVVXZ6NGj7bzzzrNnn312hwbSXS1dujTrxea9smnTJps3b57tv//+Vl9fbxUVFTZq1Cj71Kc+ZX/+85/f07G1tLTY5z//+YJfVD/3uc/JF+HFixdbWVmZLViwIG8fw4cPt7Kyssx/1dXVNmHCBLv33nt34AqKY8OGDXbdddfZ3LlzrUeP7EerO9+/fBYuXGh33333ez2MkrJq1SorKyuzG2644b0eyg75/e9/b6eeeqrtvPPO1qdPHxsyZIidcsop9vvf//69HpoUfQ3KZe7cubZkyRJ75pln4t/sQQ8//LBXVVV5XV2df/KTn/TbbrvN77jjDr/44ot9+PDhXlZW5qtWrYp2222dd955vgPTVJBhw4b5rFmzujxu9erVPn78eDcznzp1qt90002+aNEi/8xnPuO77LKL9+7dO3PsrFmzvLq6+h0Zb77xmZlfeeWVBR3f2trqI0aM8N133903b96caV+7dq0PGjTI99tvP29ra8vbx7Bhw3zvvff2++67z++77z7/8pe/7KNGjXIz8zvuuCPlcnbYvHnzvK6uzltbW7PaI/fv3dTxnm3dutVbW1t927ZtmbY999zTJ06c2Ol729ravLW1tcv79G4p9Fl6N7z44otuZn799de/10MJW7JkiZeXl/ugQYP8iiuu8EWLFvnnPvc5Hzx4sJeXl/v//M//vNdDdHf3LVu2+KZNmzJ/jr4GKRMmTPDTTjst/H2hHWLlypVeXV3te+yxh//jH//o9PW33nrLb775Zv/rX/8aHsi7pbm5OXR8d9hIp0yZ4j169PBvf/vbnb62adMmv+SSSzJ/LoWN1N390UcfdTPzz3/+85m2OXPmeM+ePf2pp57q8vuHDRvmU6ZMyWp7/fXXvaamxvfYY4+Cx1FM48aN81NPPbVTe+T+vZsKuWdqI+1u2EjTrVy50quqqryxsdFff/31rK+tXr3aGxsbvbq62l944YX3aIRasTbSG264waurq72pqSn0faEd4hOf+ISbmT/xxBOhk/zhD3/wE044wfv16+d9+vTx8ePH+/e+972sY+666y43M//FL37hF110kQ8YMMCrqqr8uOOO63RT3d2XLl3qH/rQh7yqqspramr8mGOO8eXLl2cd076prFy50o8++mivqanxY4891t3df/azn/mJJ57ou+yyi5eXl/vQoUP9wgsv9JaWlqzvN7NO/7Vra2vzefPm+ejRo71Pnz4+cOBA/8QnPuFvvvlm1ji2bdvmX/ziF33nnXf2yspKP/TQQ3358uUFPfxPPPGEm5mfffbZhUx15pr//ve/+7HHHuvV1dU+YMAAv+SSS3zr1q1ZxxY6/t/+9rd+5JFH+k477eQVFRU+fPhwP+OMM9z9ny8aHf8rZEHPnDnT+/Tp43/605/8V7/6lZeVlfnFF19c0HXm2kjd3T/4wQ96eXl5Vlsh9/rrX/+6m5k/+eSTnfq8+uqrvUePHv73v/9djucvf/mLm5nffffdWe3R++fu/uMf/ziztuvr63369On+/PPPZx1z5ZVXupn5ihUrfNasWV5fX+91dXU+e/Zs37hxY9axmzZt8gsvvNAHDBjgNTU1Pm3aNP/b3/7W6T61P4Mvvviiu789xx3va/um+vjjj7uZ+eOPP551rv/+7//2fffd1ysqKnynnXbyU045pdO8Rdbo9ddf7wceeKD379/fKyoqfN999/Vvfetbneas0I20ubnZL774Yh86dKiXl5f7qFGj/Prrr896F+7+9g8Z5513nn/nO9/xPffc08vLy3306NH+yCOPdHmOQjbSjnPdLte8Tpw40ffcc0///e9/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NLPmxo4da/fdd5+dccYZdv3112cdV+i9Pv300+0f//hH1hp64IEHrLKy0k444YS8Y3njjTesV69enZ6PyP175ZVX7Omnn7bZs2db//79M+3jxo2zI444wpYuXdrpe3Ld5zfeeCNz3vbvueCCC7KOK3T9Fep3v/udvf7663buuedaRUVFpn3KlCnW2NhoP/jBDwoa+/Zr1Cz73q1du9bWr19vhxxyiD355JPhMS5dutR69uzZaS4uueQSc3d75JFHstonTZpkI0aMyPx53LhxVldX12mM74aamho79dRTM38uLy+3CRMmZI3lhz/8oe288842ffr0TFtFRYWdffbZXfbf1NRkZl2v0/avt6+vduedd17Wn88//3wzs6w1u/29XL9+va1Zs8YmTpxof/nLX2z9+vVm9vbre1NTk11++eVZ68jMsl4/I6LPdb9+/WzNmjWhcxS8kbZPYHNzc6ev3X777bZs2TK7//77s9pXrlxp7m7/8R//kbXRNjQ02JVXXmlmZq+//nrW97z//e/P+nO/fv3M7O2HyMxsxYoVZmZ22GGHderz0Ucf7dRfr169bOjQoZ3G/Ne//jXzglVTU2MNDQ02ceJEM7PMTc1nxYoVtn79ehs4cGCncTQ3N2fG0f4DwMiRI7O+v6GhIXNt+dTV1ZnZPxd6ISoqKqyhoSGrrV+/fpk5jIx/4sSJdsIJJ9hVV11lAwYMsGOPPdbuuusu27x5c8HjUZqamuyCCy6w3Xff3bZs2WJz587N+vr69evt1Vdfzfz35ptvZn19//33t2XLltkPf/hDu+GGG6xv3762du1aKy8vzzqu0Ht9xBFH2ODBg+2BBx4wM7Nt27bZN77xDTv22GPDP8i0i9y/9rWy++67d/raHnvsYWvWrLGNGzdmtXf1vLz00kvWo0ePrA1BnSNFvrE3NjZmvt6ukDVq9vYPcAcccIBVVFRY//79raGhwW699daCntFcYxwyZEine7nHHntkXUO7jnOrxvhuGDp0aKeNpONYXnrpJRsxYkSn43bbbbcu+2+fk67WqdpwO76+jRgxwnr06JH1meRf/vKXNmnSJKuurra+fftaQ0ODffaznzWzfz6HL7zwgpmZjRkzpssxFyr6XLt7eNPuVeiB9fX1NnjwYFu+fHmnr+2///5mZp0+yN3+ofRLL73UJk+enLPfjje5Z8+eOY9z96w+77vvPhs0aFCn43r1yr6kPn36dPpMX1tbmx1xxBH25ptv2ty5c62xsdGqq6vt5ZdfttmzZxf0Yfpt27bZwIEDMzeno44vEjuqsbHRzMyee+45O+SQQwr6HjWH2yt0/GVlZfbtb3/bnnjiCXv44YftRz/6kZ155pn2la98xZ544omk4g9XXHGFvfrqq/ab3/zGFi9ebDfccIOdccYZdvDBB5uZ2ac//Wm75557MsdPnDgx63NiAwYMsEmTJpmZ2eTJk62xsdGmTp1qN998s1188cVmFrvXPXv2tJkzZ9qdd95pCxcutF/+8pf2j3/8I+udgLLTTjvZ1q1brampKevh3JH7F9HV89JdFbJGf/7zn9v06dPtwx/+sC1cuNAGDx5svXv3trvuussefPDB92yMxZhb9ULd1tb2ro/F7J+v713VAXj22Wdt5513zvyAqHS8vhdeeMEOP/xwa2xstBtvvNF22WUXKy8vt6VLl9q8efPe0QIm0ed67dq1nX4w6ErBG6nZ239Ns2jRIvvNb35jEyZM6PL4XXfd1czMevfunXnBS9X+k/XAgQN3uM/nnnvO/vznP9s999xjp59+eqZ92bJlnY5VC37EiBH22GOP2cEHH5z1VxYdDRs2zMzefgfYPh9mZqtXry7oJ9tp06bZtddea/fff39RX4gLHX+7Aw44wA444AC7+uqr7cEHH7RTTjnFFi9ebGedddYO/ZXL7373O7vlllvs/PPPt3333dd23313++Y3v2nnnHOOPfXUU9arVy+77LLLshZ7V+/gp0yZYhMnTrRrrrnG5syZY9XV1aF7bfb2XwN95StfsYcfftgeeeQRa2hokD8Ebq99w3zxxRdt3LhxmfbI/WtfK3/60586fe2Pf/yjDRgwwKqrq7scS8c+t23bZi+88ELWu8Vc58il0Hu7/dgPO+ywrK/96U9/ynw9YsmSJVZRUWE/+tGPrE+fPpn2u+66K9xX+xgfe+yxTj/s/PGPf8x8/d3SvpbXrVuX1d7xXXHEsGHD7Pnnn+/0jmrlypUFff/UqVPtzjvvtF/84hc5/5nl5z//ua1atcrmzJnT6WsrVqywD3zgA1nn3LZtW6b60MMPP2ybN2+2hx56KOudfsd/imt/fV++fHlB76TbdbVOC32ut27dan/729+y/nq8EKHKRpdddplVVVXZmWeeaa+99lqnr3f86WjgwIF26KGH2u23326vvPJKp+NXr14dGqzZ2+886urq7Jprrsn5b3aF9Nn+093243V3u/nmmzsd2/7C1XHBn3TSSdbW1mZf/OIXO33P1q1bM8dPmjTJevfubfPnz88630033dTlOM3MDjzwQDvqqKNs0aJF9t3vfrfT17ds2WKXXnppQX3tyPjXrl3b6b7uvffeZmaZv96tqqoys85zpLS1tdmcOXNs8ODBmfNXV1fb/Pnzbfny5TZv3jwzMxs9erRNmjQp89/48eO77Hvu3Ln2xhtv2J133mlmsXtt9va/g40bN84WLVpkS5YssZNPPrnT33LkcuCBB5rZ2z8gdGwv9P4NHjzY9t57b7vnnnuy5nL58uX26KOP2jHHHNPlODo6+uijzczsq1/9alZ7oeuvurq6oPv6wQ9+0AYOHGi33XZb1l/7P/LII/aHP/zBpkyZUvCY2/Xs2dPKysqy3qWtWrUq5zwW4phjjrG2trZOVbPmzZtnZWVlmbl6N7RvGD/72c8ybW1tbXbHHXfscJ+TJ0+2l19+2R566KFM26ZNmzLPQlc+85nPWGVlpc2ZM8feeOONrK+9+eabds4551hVVZV95jOf6fS97bmYdvPnzzezf66/XM/h+vXrO/1QdOSRR1ptba1de+21tmnTpqyv5Xv33dVrUKHP9fPPP2+bNm2ygw46SJ4rl9A70pEjR9qDDz5oM2bMsN13391OOeUU22uvvczd7cUXX7QHH3zQevTokfVvkrfccot96EMfsrFjx9rZZ59tu+66q7322mv261//2v7+97+HyzHV1dXZrbfeaqeddprtu+++dvLJJ1tDQ4P99a9/tR/84Ad28MEHd1lerrGx0UaMGGGXXnqpvfzyy1ZXV2dLlizJ+Q6x/cX7ggsusMmTJ1vPnj3t5JNPtokTJ9qcOXPs2muvtaefftqOPPJI6927t61YscK+9a1v2c0332wnnniiNTQ02KWXXmrXXnutTZ061Y455hh76qmn7JFHHskEbbpy77332pFHHmnHH3+8TZs2zQ4//HCrrq62FStW2OLFi+2VV14JlyMrdPz33HOPLVy40D760Y/aiBEjrKmpye68806rq6vLvLBXVlba6NGj7Zvf/KaNGjXK+vfvb2PGjJH/zvHVr37VnnzySVuyZEnWO4Pp06fb9OnT7aqrrrKPfexjOf+NqitHH320jRkzxm688UY777zzQve63emnn57Z3Ar5a12zt//2ZcyYMfbYY4/ZmWeemfW1yP27/vrr7eijj7YDDzzQPv7xj1tra6vNnz/f6uvrd6hU5d57720zZsywhQsX2vr16+2ggw6yH//4xwW/Sxk/frzdeuut9qUvfcl22203GzhwYKd3nGZv/63TddddZ2eccYZNnDjRZsyYYa+99prdfPPNNnz4cLvooovCY58yZYrdeOONdtRRR9nMmTPt9ddft1tuucV22223HSpFOm3aNPvIRz5iV1xxha1atcr22msve/TRR+173/ueXXjhhZ3+HTnVj3/8406bgZnZcccdZ2PGjLEDDjjA/v3f/93efPNN69+/vy1evNi2bt26w+ebM2eOLViwwGbMmGGf/vSnM/8u2B7a6epd28iRI+2ee+6xU045xcaOHWsf//jH7QMf+ICtWrXKvva1r9maNWvsG9/4Rs55evHFF2369Ol21FFH2a9//Wu7//77bebMmbbXXnuZ2dsbZHl5uU2bNs3mzJljzc3Nduedd9rAgQOz3mTV1dXZvHnz7KyzzrL99tvPZs6caf369bNnnnnGWlpasv6pZ3uFvAYV8lwvW7bMqqqq7Igjjsg7V52EMr7/38qVK/2Tn/yk77bbbl5RUeGVlZXe2Njo55xzjj/99NOdjn/hhRf89NNP90GDBnnv3r1955139qlTp2ZVemmPg3f8mIX64Pfjjz/ukydP9vr6eq+oqPARI0b47Nmz/Xe/+13mmHxVfp5//nmfNGmS19TU+IABA/zss8/OxNu3j0Rv3brVzz//fG9oaPCysrJOH4W54447fPz48V5ZWem1tbU+duxYv+yyy7IqP7W1tflVV13lgwcPDhdkaNfS0uI33HCD77fffl5TU+Pl5eU+cuRIP//887Mi+uqa22PqHXU1/ieffNJnzJjh73//+zNFG6ZOnZo1z+5vf+Z2/PjxXl5envejMH/729+8pqbGp06dmvPrL730kldXV3eK03ekCjK4u999991Z97HQe93ulVde8Z49e/qoUaPyjqGjG2+80WtqanLG/Au9f+7ujz32mB988MFeWVnpdXV1Pm3aNFmQYfXq1VntuT5W0dra6hdccIHvtNNOXl1dXXBBBve3P1Y2ZcoUr62tdSugIMM3v/lN32effbxPnz7ev3//vAUZOsq1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SAEASFASqV2VaIvWp1THR2vwRn/ru6p5qxJ//fr1y9keraOpknHFSs+qeVbjUe3ROqbR2rnROrLqfqn5iaado1Q62iyekFb3TNU+VXNdrHSoGqeaUzWeaOo1mvhXovWp1XlVjdmNGzeG+o+mtaN1zNXxxUpxlyrekQIAkICNFACABGykAAAkYCMFACABGykAAAlKIrUb/W3zKqUZra+pzquSdyqJ1tTUlLO9vr4+Z7tK86o0qUrGRan5jCYTownKaPI0et9VIjJaM1ndX9W/Wj9qPtV589XajdawVWs3mvxWx7e0tORsj6Zt3+njo2lh9eyptHP0EwLRcUZrAqv1oMYfTdVGU8T/1/COFACABGykAAAkYCMFACABGykAAAnYSAEASFASqV2VEFSi9SMVlZhTaUyVtlVUgrKuri5nu0oORuuhquPVdUVrCyvRNK+63mi6Vd336HqIJiLV8SrJqO5LvuSj+h51bdE6xercaq2oZ1XNUTSBHU3tRlOjavxqPOq8ql0lvNetWxc6Xo0nmiJW9cSbm5tztitqPah0cbE+adBd/N+6GgAA3mVspAAAJGAjBQAgARspAAAJ2EgBAEhQEqndaHJQHa9StSqppxJnSrR+Z7RWrUrqRROR6rzV1dWh46NpYZXCVdR8RpOnavzRtG00/av6idZJzZd2jo4pukbVHCnRNGb03qj26DMWrc0bFU0Lq3uvXrOiayVa+zf6SQn1bKvay9FPFHR3vCMFACABGykAAAnYSAEASMBGCgBAAjZSAAASlERqN5qkK1biL5rsU0m9aM1VlXxUSbpoyleNR4mmWFWCr1gp3OjxajzRerFKNKmqxqPWQ77xRNeQEn02omtIzbU6rxp/nz59Qv1Hk/3R2rmqn+iai6Z8o6+J6n4Vq+52NIkerUve3fGOFACABGykAAAkYCMFACABGykAAAnYSAEASFASqV1FpUajaUyVONu8eXPOdpVci7ZHa+1GE38qMdfa2ho6vra2Nmd7VLRWcJSaTyVad1bNv5o31b+6X6o93/xE07aqPToX0eR6lLqXag0pxUrDqvmJzr96rSlWyletxehrkDo+uqZVOlf1X6xax+823pECAJCAjRQAgARspAAAJGAjBQAgARspAAAJSiK1G61Vq5J00fqgijqvSsBF08WK6idaz7KqqirUTzQFrRJ5qk6qSuqp/qM1aVXSMJqaVnVJo6nj6PXmSyNH11y0bnL0GVPp02hiO7rmomtCPRvR2rPqeLXm1PyoNG90HtR5o892NKUcre0cTcZ3d7wjBQAgARspAAAJ2EgBAEjARgoAQAI2UgAAEpREanfDhg0526PpWZWMiyb1VOJMJRNV/0o0HarOq9K50Zqx0aSkUqw0rBqPui6VlFTjV+OJHq+o8aj5yZc2j86pSqtG7330mVH3UrWr/qO1cNVrQXQNqf6jz3w0havao3XAW1pacrZHP1EQPW/0NYLULgAA/4LYSAEASMBGCgBAAjZSAAASsJECAJCgJFK7ikrhqrRqtJ5oNJGn2lU/Kr0ZTTgq0fqj6vhoGjYqWr+zWHVYo/VBi5XmjdZtzVdrV11DNAEcvQaV3ozWuVbPRjSFG63lq+ZHremNGzeG+o/OQ1NTU8726BpS86ZeE5ubm3O2K9EUdPQ1S62r7o53pAAAJGAjBQAgARspAAAJ2EgBAEjARgoAQIKSSO2q5NqAAQNytqskWjTVWVNTk7NdJf5Uoi2a7FMJRHXeaCpVJeMqKytztkfTztEayNG0sBKtjRxdD2odqnmO1hBW8qV2i9VXdE0X61726dMnZ7uqDavuWTSBHU0vR1PH0ZrA6tlTr2Vq3lRd8uhrR/Q+qvuiajur11bVT3fHO1IAABKwkQIAkICNFACABGykAAAkYCMFACBBSUSkVDKxtbU1dLyikmIq6aYSc9Hzqv6VaMJOJQTV9apkorquaM1h1R4VrSEcTc+qflRSNVqDV5032n8+xaoBG00wR9dKNOkeXeuqXaVto/csmhaOPvPRlLUaj6pLru6LegYqKipytqtaxCqNHF2H3R3vSAEASMBGCgBAAjZSAAASsJECAJCAjRQAgAQlkdpVv91dJciiovUjVZIumpJVyTtVC7dv374521XSLVpfUx1fXl6esz2aBIwmNKMp1nw1aXNRyc1ovc/oeaNJWHV8vnNHa+FGFWuuo2nbaHJdrWk118VK0qs1VKy0sBq/ek2MpnnVa6Iaj3qNqK2tzdmu5kH1093xjhQAgARspAAAJGAjBQAgARspAAAJ2EgBAEhQEqnd/v3752xXCTtV91El2qJ1Jaurq3O2q8RZsfqP1vVUVCIvmsKNJgHV/VLzE60XG6WSg0o0qRpNKavxFOt684nWdI2mTFU/ql2t0WKllKNJcXVv1Dija6tYtWfV9apPPtTU1ORsb2pqytkeTdWq12L1mqJq83Z3vCMFACABGykAAAnYSAEASMBGCgBAAjZSAAASlHk0iggAADJ4RwoAQAI2UgAAErCRAgCQgI0UAIAEbKQAACRgIwUAIAEbKQAACdhIAQBIwEYKAECC/wepRTQ344COuQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaEAAAGrCAYAAABpMyikAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAPTdJREFUeJzt3XmUVdWd/v9PyVRUFVXMLQ6RJYOIiANx1uCAE5NxWLY4gThrtJ1a061GjbM4ERDHNM6tMURtjSZgYlaStl1JWjGyTAwYhziLIjMisH9/mKovt+o+xX3q3spO5/d+reVasuvUufvsM+w68NRnV6WUUgAAkMFGuTsAAPj/LyYhAEA2TEIAgGyYhAAA2TAJAQCyYRICAGTDJAQAyIZJCACQDZMQACAbJqGM+vfvH5MmTaroPidNmhR1dXUV3SdKd8MNN8SQIUNi3bp1ubuyQVVVVXH55Zc3/fnee++NqqqqeOuttzb4vb/4xS+iqqoqfvGLX7Rb/xztcS+huMsvvzyqqqqa/vzll1/G5ptvHjNmzGjT/to0Cb355pvxrW99KwYPHhw1NTVRU1MTQ4cOjTPPPDN+//vft6kjf6+eeeaZghs1l1WrVsUtt9wSu+yySzQ0NER1dXUMHjw4vvWtb8Wf/vSnrH1bsWJFXH755SU/kC655BL5AHvkkUeiqqoqpk+f3uo++vfvH1VVVU3/1dbWxs477xz3339/G46gMpYsWRLXX399XHTRRbHRRoW31t/z+WvNjBkz4t57783djf9T3nrrrabrctasWS2+3vgQX7hwYYbeVV6nTp3ivPPOi6uvvjpWrVrl7yCZnnrqqVRTU5Pq6+vT6aefnu6444501113pfPOOy/1798/VVVVpbfeesvd7d+tM888M7VhmEqyxRZbpIkTJ25wu08++SSNGDEiRUQaO3ZsuvXWW9M999yT/vVf/zVtvvnmqVOnTk3bTpw4MdXW1rZLf1vrX0Skyy67rKTtV65cmQYMGJC22mqr9MUXXzS1L1q0KG288cZpp512SmvXrm11H1tssUXafvvt0wMPPJAeeOCBdMMNN6TBgweniEh33XVXOYfTZrfcckuqr69PK1euLGh3zt/fUvNztmbNmrRy5cq0bt26prZtttkmjRw5ssX3rl27Nq1cuXKD5+lvpdR76W/hzTffTBGRIiINHz68YDxTSumyyy5LEZE++eSTTD0sT2P/17do0aLUuXPn9P3vf9/en/V0XbBgQaqtrU1bb711ev/991t8/csvv0xTp05N77zzjt2Rv5Vly5ZZ2/89TEJjxoxJG220UfrhD3/Y4murVq1K559/ftOf/y9MQimlNHv27BQR6fLLL29qO/XUU1OHDh3Syy+/vMHv32KLLdKYMWMK2j7++ONUV1eXtt5665L7UUnDhw9Pxx57bIt25/z9LZVyztQk9Pfm73ES2n777VNEpFmzZhV8vdKTkPtMK1exSSillMaOHZv22msve3/W0/WUU05JEZFefPFF60P+8Ic/pMMPPzz16NEjdenSJY0YMSI9+eSTBdvMnDkzRUT69a9/nc4999zUu3fvVFNTk775zW+mjz/+uMU+n3nmmbTnnnummpqaVFdXl0aPHp3mzZtXsE3jA3nBggXp4IMPTnV1demQQw5JKaX0y1/+Mh1xxBFp8803T507d06bbbZZOuecc9KKFSsKvr/xJ5r1/2u0du3adMstt6ShQ4emLl26pL59+6ZTTjklffbZZwX9WLduXbryyivTpptumrp27Zr23nvvNG/evJJunBdffDFFRDr55JNLGeqmY3733XfTIYcckmpra1Pv3r3T+eefn9asWVOwban9/+1vf5sOOOCA1KtXr1RdXZ369++fTjjhhJRS4U996/9XyoR09NFHpy5duqTXX389vfDCC6mqqiqdd955JR1nsUkopZS+/vWvp86dOxe0lXKu/+M//iNFRHrppZda7PPqq69OG220UXr33Xdlf/785z+niEj33ntvQbt7/lJK6Wc/+1nTtd3Q0JDGjx+fXnvttYJtGh8E8+fPTxMnTkwNDQ2pvr4+TZo0KS1fvrxg21WrVqVzzjkn9e7dO9XV1aVx48alv/zlLy3OU+M9+Oabb6aUvhrj5ue1cUJ6/vnnU0Sk559/vuCzfvCDH6Qdd9wxVVdXp169eqVjjjmmxbg51+iUKVPSbrvtlnr27Jmqq6vTjjvumB577LEWY1bqJLRs2bJ03nnnpc022yx17tw5DR48OE2ZMqXF20pEpDPPPDM9/vjjaZtttkmdO3dOQ4cOTc8+++wGP6PxnrjuuuvS4MGD03bbbVewfzUJOWNX7JnW2Ocf/OAHaeutt07V1dVp1113Tb///e9TSindcccdacCAAalLly5p5MiRTee5USn3yfr9b27q1Kmpqqoqffrppxsco/VZk9Amm2ySBg4caH3AvHnzUkNDQxo6dGi6/vrr0/Tp09M3vvGNVFVVlX70ox81bdd4A+ywww5p3333TdOmTUvnn39+6tChQzryyCML9nn//fenqqqqdNBBB6Vp06al66+/PvXv3z917969YGAnTpyYunTpkgYMGJAmTpyY7rjjjnT//fenlFI666yz0ujRo9M111yT7rzzznTiiSemDh06pCOOOKLp+1944YW0//77p4ho+mufBx54oOnrJ510UurYsWM6+eST0x133JEuuuiiVFtbm3baaae0evXqpu0uueSSFBFp9OjRafr06Wny5Mlpk002Sb17997gjfPv//7vKSLSL3/5y5LGe+LEiam6ujpts802afLkyen2229Phx9+eIqINGPGjIJtS+n/Rx99lHr06NF0s959993p4osvbnrbWLZsWbr99ttTRKRDDz20aYxeeeWVDfb1ww8/TD169Eh777132nbbbdPmm2+eli5dWtJxFpuEvvzyy7Txxhunf/qnfypoL+VcL1myJHXt2rXoW8nQoUPTvvvu22p/HnzwwRQRTTd8I/f8zZkzJ3Xs2DENHjw43XDDDemKK65IvXv3Tj169Ci4thsfBDvssEM67LDD0owZM9JJJ52UIiJdeOGFBfs89thjU0Sko48+Ok2fPj0ddthhafjw4RuchB5//PG02WabpSFDhjSd19mzZ6eUik9Cjd+/0047pVtuuSV9+9vfTl27dk39+/dPixYtatrOuUY322yzdMYZZ6Tp06enm2++Oe28884pItLTTz9dsF0pk9C6devSvvvum6qqqtJJJ52Upk+fnsaNG5ciIp1zzjkF20ZE2m677VK/fv3SlVdemW699da05ZZbppqamrRw4cJWP6dxEpoyZUq6//77W7wNFZuEnLFTz7TGv/7bfPPN03XXXZeuu+661NDQkL72ta+l6dOnp6FDh6abbropXXLJJalz585pn332Keh3KffJ+v1v7te//nWKiPTUU0+1Oj7NlTwJLV68OEVE+uY3v9nia4sWLUqffPJJ03/rz5z77bdf2nbbbdOqVaua2tatW5d23333NGjQoKa2xpMwatSogp8azj333NShQ4f0+eefp5RSWrp0aerevXuLnyw//PDD1NDQUNDe+Cbz7W9/u0Wfm8/uKaV07bXXpqqqqvT22283tam/jvvVr36VIiI99NBDBe0/+clPCto//vjj1Llz5zRmzJiC42p8OG3oxjn00ENTRBRciK1pPObvfve7Be077LBDGjFihN3/xx9/PEVE+u1vfys/sy1/HdfozjvvbPop+4knnij5+7bYYot0wAEHNF1zr776ajruuOOafhpcX6nnesKECWmTTTYp+HeOl156KUVEmjlzZqv9afxBo/kk6p6/7bffPvXt27fgp8lXXnklbbTRRun4449vamt8EEyePLnF5/Xq1avpz3Pnzk0Rkc4444yC7Y4++ugNTkIp6b+Oaz4JrV69OvXt2zcNGzas4N/Enn766RQR6Tvf+U5TW6nXaEotz93q1avTsGHDWvxQUMok9MQTT6SISFdddVVB+xFHHJGqqqrSggULmtoiInXu3Lmg7ZVXXkkRkaZNm9bq56w/Ca1ZsyYNGjSo4G2o+STUlrEr9kyLiNSlS5eC89d4f2288cZpyZIlTe3/9m//1uJcl3qfqEno/fffTxGRrr/++lbHp7mS03FLliyJiCga/917772jT58+Tf/ddtttERHx2Wefxc9//vM48sgjY+nSpbFw4cJYuHBhfPrpp3HggQfG/Pnz47333ivY1ymnnFIQ/9trr71i7dq18fbbb0dExJw5c+Lzzz+PCRMmNO1v4cKF0aFDh9hll13i+eefb9G/008/vUVb165dm/5/+fLlsXDhwth9990jpRQvv/zyBsfjsccei4aGhth///0L+jFixIioq6tr6sdzzz0Xq1evjrPOOqvguM4555wNfkbE/xv3bt26lbR9o9NOO63gz3vttVf8+c9/tvvfvXv3iIh4+umn48svv7T6UIrevXtHRERNTU3sueee1vfOnj276Zrbdttt44EHHogTTjghpkyZUrBdqef6+OOPj/fff7/gGnrooYeia9eucfjhh7fal08//TQ6duzY4v5wzt8HH3wQc+fOjUmTJkXPnj2b2ocPHx77779/PPPMMy2+p9h5/vTTT5s+t/F7zj777ILtSr3+SvW73/0uPv744zjjjDOiurq6qX3MmDExZMiQ+PGPf1xS39e/RiMKz92iRYti8eLFsddee8VLL71k9/GZZ56JDh06tBiL888/P1JK8eyzzxa0jxo1KgYMGND05+HDh0d9fX2LPramQ4cOcckll8Qrr7wSTzzxRNFt2jJ2xZ5pERH77bdf9O/fv+nPu+yyS0REHH744QXXYGP7+sdS7jOxR48eERF26q/kSajxAJYtW9bia3feeWfMmTMnHnzwwYL2BQsWREopLr300oJJqk+fPnHZZZdFRMTHH39c8D1f+9rXCv7ceGCLFi2KiIj58+dHRMS+++7bYp+zZ89usb+OHTvGZptt1qLP77zzTtPNXldXF3369ImRI0dGRMTixYs3OB7z58+PxYsXR9++fVv0Y9myZU39aJw8Bw0aVPD9ffr0aTq21tTX10dExNKlSze4baPq6uro06dPQVuPHj2axtDp/8iRI+Pwww+PK664Inr37h2HHHJIzJw5M7744ouS+6MsXbo0zj777Nhqq61i9erVcdFFFxV8ffHixfHhhx82/ffZZ58VfH2XXXaJOXPmxE9+8pO48cYbo3v37rFo0aLo3LlzwXalnuv9998/+vXrFw899FBERKxbty7+8z//Mw455BD7h4BGzvlrvFa22mqrFl/beuutY+HChbF8+fKC9g3dL2+//XZstNFGBQ9T9RnlaK3vQ4YMafp6o1Ku0YivfvjZddddo7q6Onr27Bl9+vSJ22+/vaR7tFgfN9lkkxbncuutty44hkbNx1b1cUOOOeaYGDhwYHz3u9+NVGQha3fs1DOtWJ8bGhoiImLzzTcv2r7+sZT7TGw8tvV/2C5Fx1I3bGhoiH79+sW8efNafK1xVm3+S26Nv7B3wQUXxIEHHlh0vwMHDiz4c4cOHYpu13iAjft84IEHYuONN26xXceOhYfUpUuXFr+zsXbt2th///3js88+i4suuiiGDBkStbW18d5778WkSZNK+kXDdevWRd++fZseWM01v8HaasiQIRER8eqrr8Zee+1V0veoMVxfqf2vqqqKH/7wh/Hiiy/GU089FT/96U9j8uTJcdNNN8WLL75Y1i/GXnzxxfHhhx/Gb37zm3jkkUfixhtvjBNOOCH22GOPiIj4l3/5l7jvvvuath85cmTB7xb17t07Ro0aFRERBx54YAwZMiTGjh0bU6dOjfPOOy8ivHPdoUOHOProo+Puu++OGTNmxH//93/H+++/H8cee+wGj6VXr16xZs2aWLp0acFDri3nz7Gh++XvVSnX6K9+9asYP358fOMb34gZM2ZEv379olOnTjFz5sx4+OGHs/XRHdvGt6FJkybFk08+WXa/ij3T1v8sp73xWCrxTGyc0Br/dqNUJU9CEV+9Ht5zzz3xm9/8JnbeeecNbr/llltGxFe/zNT4sChX4090ffv2bfM+X3311fjTn/4U9913Xxx//PFN7XPmzGmxrZrVBwwYEM8991zsscceBa+xzW2xxRYR8dWbR+N4RER88sknJf1ENW7cuLj22mvjwQcfrOhDrNT+N9p1111j1113jauvvjoefvjhOOaYY+KRRx6Jk046yf7JJ+Krv4K47bbb4qyzzoodd9wxttpqq3j00UfjtNNOi5dffjk6duwYF154YcEEsKE3xzFjxsTIkSPjmmuuiVNPPTVqa2utcx3x1V/J3XTTTfHUU0/Fs88+G3369JE/QK2vcbJ58803Y/jw4U3tzvlrvFZef/31Fl/74x//GL17947a2toN9qX5PtetWxdvvPFGwU/axT6jmFLP7fp933fffQu+9vrrrzd93TFr1qyorq6On/70p9GlS5em9pkzZ9r7auzjc8891+IHhT/+8Y9NX28vxx57bFx11VVxxRVXxPjx41v0K6KyY+dy75Ni3nzzzYj4f2+WpbIqJlx44YVRU1MTkydPjo8++qjF15v/hNC3b9/Ye++9484774wPPvigxfaffPKJ1dmIr37ira+vj2uuuabov1GUss/GnwrW729KKaZOndpi28ab/vPPPy9oP/LII2Pt2rVx5ZVXtvieNWvWNG0/atSo6NSpU0ybNq3g82699dYN9jMiYrfddouDDjoo7rnnnqJ/p7x69eq44IILStpXW/q/aNGiFud1++23j4ho+iu5mpqaiGg5RsratWvj1FNPjX79+jV9fm1tbUybNi3mzZsXt9xyS0REDB06NEaNGtX034gRIza474suuig+/fTTuPvuuyPCO9cRX/29//Dhw+Oee+6JWbNmxVFHHdXi7bqY3XbbLSK+mlybt5d6/vr16xfbb7993HfffQVjOW/evJg9e3aMHj16g/1o7uCDD46IiO9973sF7aVef7W1tSWd169//evRt2/fuOOOOwr+qvbZZ5+NP/zhDzFmzJiS+9yoQ4cOUVVVFWvXrm1qe+utt+S/rWzI6NGjY+3atS2qcdxyyy1RVVXVNFbtofFtaO7cufFf//VfBV9rj7FrS/8iSr9Pivnf//3fqKqqaroXSmW9CQ0aNCgefvjhmDBhQmy11VZxzDHHxHbbbRcppXjzzTfj4Ycfjo022qjg7ytvu+222HPPPWPbbbeNk08+Obbccsv46KOP4n/+53/i3XffjVdeecXqcH19fdx+++1x3HHHxY477hhHHXVU9OnTJ95555348Y9/HHvssccGS74MGTIkBgwYEBdccEG89957UV9fH7NmzSr6ZtL44Dv77LPjwAMPjA4dOsRRRx0VI0eOjFNPPTWuvfbamDt3bhxwwAHRqVOnmD9/fjz22GMxderUOOKII6JPnz5xwQUXxLXXXhtjx46N0aNHx8svvxzPPvtsya+t999/fxxwwAFx2GGHxbhx42K//faL2tramD9/fjzyyCPxwQcfxI033miNY6n9v++++2LGjBlx6KGHxoABA2Lp0qVx9913R319fdNDsWvXrjF06NB49NFHY/DgwdGzZ88YNmxYDBs2rOhnf+9734uXXnopZs2aVfAT6fjx42P8+PFxxRVXxD//8z8X/Tv5DTn44INj2LBhcfPNN8eZZ55pnetGxx9/fNPEUMpfxUV89dY/bNiweO6552Ly5MkFX3PO35QpU+Lggw+O3XbbLU488cRYuXJlTJs2LRoaGtpUPmr77bePCRMmxIwZM2Lx4sWx++67x89+9rNYsGBBSd8/YsSIuP322+Oqq66KgQMHRt++fVv8tB7x1d92XH/99XHCCSfEyJEjY8KECfHRRx/F1KlTo3///nHuuefafR8zZkzcfPPNcdBBB8XRRx8dH3/8cdx2220xcODANpUHGzduXOyzzz5x8cUXx1tvvRXbbbddzJ49O5588sk455xzWvy7WaUdc8wxceWVV8bcuXML2ttj7FxtuU+amzNnTuyxxx7Rq1cv78OtLN1fLViwIJ1++ulp4MCBqbq6OnXt2jUNGTIknXbaaWnu3Lkttn/jjTfS8ccfnzbeeOPUqVOntOmmm6axY8cW/AZ5Yzy0eRRY/VLc888/nw488MDU0NCQqqur04ABA9KkSZPS7373u6ZtWqse8Nprr6VRo0alurq61Lt373TyySc3RTDXj+OuWbMmnXXWWalPnz6pqqqqRTTxrrvuSiNGjEhdu3ZN3bp1S9tuu2268MILCypKrF27Nl1xxRWpX79+9i+rNlqxYkW68cYb00477ZTq6upS586d06BBg9JZZ51VECNVx6xilRvq/0svvZQmTJiQvva1rzX9QuvYsWML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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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f6vg/vYfZk488US/++67fZtttvHy8nIfNWqU33///Rs8Ruc43nXXXV1+dvnll7uZ+aOPPuru/75/brjhhi7js7HPLfd3tmC7u59xxhluZv6HP/zB3f99vz366KO+8847e0VFhX/sYx/zm266qcvvLl++3L/+9a/nx3jo0KH+H//xHwV/G6PmT3fjsWjRIp80aZLX1NT4oEGDfPbs2e7u/vTTT/unP/1pr66u9o9+9KN+2223denT888/74cccoj36dPHq6qqfNddd/V77723YJvOPt15551+4YUX+mabbeYVFRW+5557+rx587qM2+DBgwvaip2r7u4zZ870XC7ny5Yty/y5ElqwBw0a5MOGDQsdYO7cud7Q0OCjRo3ySy65xGfPnu2f+tSnPJfL+c9+9rP8dp2TfMcdd/Q999zTZ82a5aeffrqXlZX5oYceWrDPm2++2XO5nO+3334+a9Ysv+SSS3zIkCHe2NiYf9i4//uve4YOHepHHnmkX3311X7zzTe7u/tJJ53kEydO9IsuusivueYa//KXv+xlZWV+yCGH5H//j3/8o++9995uZvm/MrrlllvyPz/mmGN8k0028WOPPdavvvpqP+uss7ympsZ33nlnX7NmTX67b33rW25mPnHiRJ89e7YfffTRPmjQIG9qatrgQ+acc85xM/Pf/e53RY33kUce6ZWVlb7NNtv40Ucf7VdddZUffPDBbmY+Z86cgm2L6f/rr7/uffr0yT/YrrvuOj/33HPzn2JXrVrlV111lZuZf/azn82P0VNPPbXBvr722mvep08fHz9+vG+33Xa+xRZbeEtLS1HnmbVgv/nmm77pppv6Rz7ykYL2Yq71ypUrvaqqKvPT7qhRo3zPPffstj+33nqrm5k//fTTBe3R6/fQQw/5Jpts4sOHD/dLL73Uzz//fG9qavI+ffoUzO3OB/KOO+7on/vc53zOnDl+zDHHuJn5mWeeWbDPww8/3M3Mp06d6rNnz/bPfe5zPnr06A0u2HfffbdvvvnmPnLkyPx1ffDBB909+4Hb+fs777yzz5gxw88++2yvqqryIUOG+PLly/PbRebo5ptv7l/96ld99uzZPn36dN9ll13czLo8bItZsNeuXet77rmn53I5P+aYY3z27Nl+wAEHuJn5KaecUrCtmfn222/vAwcO9AsuuMCvuOIK33LLLb26utqXLl3a7XGam5u9srLSDz744C4/22mnnXzw4MH5PyCoBeqdPLfc3/mC/dnPftbNzJ977jl3f3t8R4wY4R/5yEf8nHPO8dmzZ/tOO+3kuVyu4INSa2urjx492vv16+fnnHOOX3311X7EEUd4Lpfzr3/96/ntogt2ZWWljxo1yk844QS/8sorfffdd89vN2jQIP/GN77hs2bN8m222cbLysr8hRdeyP/+a6+95h/5yEe8rq7Ozz33XJ8+fbpvv/323qtXr4I1qLNPO+64o48ZM8ZnzJjh5513nldXV/suu+zSZdzWX7CLnavu7r///e/dzPyee+6R1yZL0Qt2c3Ozm5l/5jOf6fKz5cuX+5IlS/L/W/dPe3vttZdvt912BX89tHbtWt999919q622yrd13uwTJkwo+NPuqaee6mVlZb5ixQp3d29pafHGxsYun1hee+01b2hoKGjv/IR89tlnd+nz+n8idXe/+OKLPZfL+aJFi/Jt6q/EH330UTezLn+a++///u+C9sWLF3t5eblPmjSp4Lw6H+Qbesh03jjrPvC603nO3/ve9wraOydhtP933323m5n/5S9/kcfcmL8S73TNNdfkP739/Oc/L/r3Bg8e7Pvss09+zj3zzDP+pS99Kf/JaF3FXuspU6b4oEGDCj4JPP74410eIFk6/1C2/h84otdvhx128AEDBhT8yfupp57yXr16+RFHHJFv63wgH3300V2O169fv/x/P/nkk25m/tWvfrVgu6lTp25wwXbXfyW+/gN3zZo1PmDAAN92220L/g3/3nvvdTPz73znO/m2Yueoe9drt2bNGt922227/AGqmAX75z//uZuZX3jhhQXthxxyiOdyOZ8/f36+zcy8vLy8oO2pp55yM/NZs2Z1exx3989//vNeWVnpzc3N+bbnnnvOzcy/+c1v5tvUAvVOn1vRBbvzPpo/f75fdNFFnsvlfPTo0fntOv+2Zd0/eC5evNgrKioK/pB7wQUXeE1Njf/jH/8oOM7ZZ5/tZWVl+X8ujS7YZuYXXXRRvm358uVeVVXluVzO77jjjnx75xivO69POeWUgr/VcH97HfnYxz7mQ4YMyd/vnX3aeuutC7I1M2fOdDPzZ555pqBP6y/Yxc5Vd/dXXnnFzcwvueSSLj/rTtEp8ZUrV5qZZb4yNH78eOvfv3/+f1deeaWZmf3rX/+y3/zmN3booYdaS0uLLV261JYuXWrLli2zfffd1+bNm2cvv/xywb6OO+64gtcR9thjD+vo6LBFixaZmdlDDz1kK1assClTpuT3t3TpUisrK7Ndd93VHnnkkS79+8pXvtKlraqqKv//W1tbbenSpbb77rubu9sTTzyxwfH4yU9+Yg0NDbb33nsX9GPMmDFWW1ub78fDDz9sa9assZNOOqngvE455ZQNHsPs3+NeV1dX1PadTjjhhIL/3mOPPeyFF14I97+xsdHMzO6991578803Q30oRlNTk5mZVVdX2yc/+cnQ7z744IP5ObfddtvZLbfcYkcddZRddtllBdsVe62POOIIe+WVVwrm0G233WZVVVV28MEHd9uXZcuW2SabbNLl/ohcv1dffdWefPJJmzZtmvXt2zffPnr0aNt7773tvvvu6/I7Wdd52bJl+eN2/s7JJ59csF2x869Yf/3rX23x4sX21a9+1SorK/PtkyZNspEjR9qvfvWrovq+7hw1K7x2y5cvt+bmZttjjz3s8ccfD/fxvvvus7Kysi5jcfrpp5u72/3331/QPmHCBBs6dGj+v0ePHm319fVd+pjl8MMPt9WrV9vPfvazfNvtt99uZmaHHXZYUf19N55bWVpbW/P30bBhw+ycc86x3Xbbze6+++6C7UaNGmV77LFH/r/79+9vI0aM6PJc2WOPPaxPnz4Fz5UJEyZYR0eH/e53v9uoPpqZHXPMMfn/39jYaCNGjLCamho79NBD8+0jRoywxsbGgj7dd999tssuuxQ8X2pra+24446zhQsX2rPPPltwnKOOOsrKy8vz/915zhu67pG52qdPHzMzW7p0abf7XN8mxW7Y+cBZtWpVl59dc8011tLSYq+//rodfvjh+fb58+ebu9u3v/1t+/a3v52538WLF9tmm22W/++PfvSjBT/vPLHly5ebmdm8efPMzGzPPffM3F99fX3Bf2+yySa2+eabd9nuxRdftO985zv2y1/+Mr/vTs3NzZn7Xte8efOsubnZBgwYkPnzxYsXm5nl/6Cx1VZbFfy8f//++XPrTuf5tLS05BfPDamsrLT+/fsXtPXp06fgPIvt/7hx4+zggw+2888/32bMmGHjx4+3z3zmMzZ16lSrqKgoqj9KS0uLnXzyyTZixAh7/vnn7ayzzrLrr78+//Pm5mZrb2/P/3d5eXnBQrbrrrvahRdeaB0dHTZ37ly78MILbfny5QU3m1nx13rvvfe2gQMH2m233WZ77bWXrV271n784x/bQQcdFP4DU6fI9eucKyNGjOjys6233toeeOABa21ttZqamnx7d/dLfX29LVq0yHr16lWw8KhjvBPd9X3kyJH2+9//vqCtmDlq9vYfFC+88EJ78sknC14z2ph3jBctWmSDBg3qci233nrrgnPotP7Yqj5m2X///a1v3752++23598P//GPf2zbb7+9bbPNNhv8/XfruZWlsrLS7rnnHjMzq6iosI997GOZxy5mPObNm2dPP/10l2vbqfO5sjF9XH+fDQ0Ntvnmm3eZCw0NDQV9WrRoke26665d9rnudd92223z7Rtag5TIXHV3+bPuFL1gNzQ02MCBA23u3LldftY5GOsXXOgsHnHGGWfYvvvum7nfYcOGFfx3WVlZ5nadJ9i5z1tuucU23XTTLtttsknhKVVUVHR5J7ajo8P23ntv+9e//mVnnXWWjRw50mpqauzll1+2adOmFVX0Yu3atTZgwAC77bbbMn+uJmzUyJEjzczsmWeeKfjTbXfUGK6r2P7ncjn76U9/ao899pjdc8899sADD9jRRx9tP/jBD+yxxx57R0Vazj33XHvttdfsz3/+s91xxx12+eWX21FHHWVjx441M7Ovf/3rdtNNN+W3HzduXMG7201NTTZhwgQzM9t3331t5MiRNnnyZJs5c6addtppZha71mVlZTZ16lS77rrrbM6cOfaHP/zBXnnllYI/hCr9+vWzt956y1paWgoWhI25fhEbul8+qIqZo48++qgdeOCB9qlPfcrmzJljAwcOtN69e9sNN9yQ/7T6fvSxmLHt3bu3HXrooXbdddfZ66+/bi+++KLNmzfPLr300qKO/W49t7KUlZXl76MNbZdl3fFYu3at7b333nbmmWdmbjt8+HAz0wtVR0dH6NjvxvzfmH1G52rn4t/5N4zFKnrBNnv7r7euv/56+/Of/2y77LLLBrffcsstzeztyVvMhChG5yeFAQMGbPQ+n3nmGfvHP/5hN910kx1xxBH59oceeqjLtmpiDR061B5++GEbO3ZswV+FrG/w4MFm9vafPDvHw8xsyZIlRf1J/YADDrCLL77Ybr311h594Bfb/06f+MQn7BOf+IR9//vft9tvv90OO+wwu+OOO+yYY47ZqE87f/3rX+3KK6+0k046yXbaaScbMWKE3XnnnXbCCSfYE088YZtssomdeeaZBYvlhv5GYtKkSTZu3Di76KKL7Pjjj7eamprQtTZ7+6/Ff/CDH9g999xj999/v/Xv31/+YXNdnQvzggULbPTo0fn2yPXrnCt///vfu/zsueees6ampoJP18UYPHiwrV271p5//vmCT79Zx8hS7LVdt+/r/+3X3//+9/zPI+666y6rrKy0Bx54oOBvc2644Ybwvjr7+PDDD3f5Q9Vzzz2X/3lPOuyww+zqq6+2O++80xYsWGC5XM6mTJmy0fuLzuX3w9ChQ23VqlUbfDZ33ssrVqwoaF//bzl6wuDBg+U91fnzdyo6VxcsWGBm//6UX6xQpbMzzzzTqqur7eijj7bXX3+9y8/X/xPIgAEDbPz48XbNNdfYq6++2mX7JUuWhDpr9vYnqfr6ervooosy/021mH12/glq3f66u82cObPLtp0PyPUn1qGHHmodHR12wQUXdPmdt956K7/9hAkTrHfv3jZr1qyC411xxRUb7KeZ2W677Wb77befXX/99fbzn/+8y8/XrFljZ5xxRlH72pj+L1++vMt13WGHHczM8n/tU11dbWZdx0jp6Oiw448/3gYOHJg/fk1Njc2aNcvmzp1rM2bMMLO3/81swoQJ+f+NGTNmg/s+66yzbNmyZXbdddeZWexam73975SjR4+266+/3u666y774he/2OVvbbLstttuZvb2H0TWby/2+g0cONB22GEHu+mmmwrGcu7cufbggw/axIkTN9iP9e2///5mZvbDH/6woL3Y+VdTU1PUdf34xz9uAwYMsKuvvrrgrwPvv/9++9vf/maTJk0qus+dysrKLJfLFXzqWrhwYeY4FmPixInW0dHRpYrejBkzLJfL5ceqp4wdO9aGDBlit956q9155502bty4zL9qLlZ0Lr8fDj30UPvTn/5kDzzwQJefrVixwt566y0ze3uRLCsr6/Jv2htbsrM7EydOtD//+c/2pz/9Kd/W2tpq1157rQ0ZMsRGjRr1jo8Rnav/8z//Y7lcLv/cKFboE/ZWW21lt99+u02ZMsVGjBhhhx12mG2//fbm7rZgwQK7/fbbrVevXgWT8sorr7RPfvKTtt1229mxxx5rW265pb3++uv2pz/9yV566SV76qmnQh2ur6+3q666yr70pS/ZTjvtZF/84hetf//+9uKLL9qvfvUrGzt27AbLWo4cOdKGDh1qZ5xxhr388stWX19vd911V+Yn3s5F4uSTT7Z9993XysrK7Itf/KKNGzfOjj/+eLv44ovtySeftH322cd69+5t8+bNs5/85Cc2c+ZMO+SQQ6x///52xhln2MUXX2yTJ0+2iRMn2hNPPGH3339/0X8dcvPNN9s+++xjn/vc5+yAAw6wvfbay2pqamzevHl2xx132KuvvmqXX355aByL7f9NN91kc+bMsc9+9rM2dOhQa2lpseuuu87q6+vzC0hVVZWNGjXK7rzzThs+fLj17dvXtt1224J/F1rXD3/4Q3v88cftrrvuKvikc+CBB9qBBx5o559/vn3hC1/I/DezDdl///1t2223tenTp9uJJ54YutadjjjiiPwiWsxfh5u9/bdJ2267rT388MN29NFHF/wscv0uu+wy23///W233XazL3/5y9be3m6zZs2yhoaGjSqRu8MOO9iUKVNszpw51tzcbLvvvrv9+te/tvnz5xf1+2PGjLGrrrrKLrzwQhs2bJgNGDAgMz/Su3dvu+SSS+yoo46ycePG2ZQpU+z111+3mTNn2pAhQ+zUU08N933SpEk2ffp022+//Wzq1Km2ePFiu/LKK23YsGEbVQL5gAMOsE9/+tN27rnn2sKFC2377be3Bx980H7xi1/YKaec0uXf+d+pXC5nU6dOtYsuusjMzL73ve+9o/1tzFx+r33jG9+wX/7ylzZ58mSbNm2ajRkzxlpbW+2ZZ56xn/70p7Zw4UJramqyhoYG+/znP2+zZs2yXC5nQ4cOtXvvvXej/427O2effbb9+Mc/tv33399OPvlk69u3r9100022YMECu+uuu7r808PGiM7Vhx56yMaOHWv9+vWLHSiUKf9/8+fP96985Ss+bNgwr6ys9KqqKh85cqSfcMIJ/uSTT3bZ/vnnn/cjjjjCN910U+/du7dvttlmPnny5ILKT52vlKz/+pCK/z/yyCO+7777ekNDg1dWVvrQoUN92rRp/te//jW/TXdVv5599lmfMGGC19bWelNTkx977LH51zbWfaXgrbfe8pNOOsn79+/vuVyuy6sS1157rY8ZM8arqqq8rq7Ot9tuOz/zzDMLKsF1dHT4+eef7wMHDgwXTunU1tbml19+ue+8885eW1vr5eXlvtVWW/lJJ51U8OqJ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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "\n", + "# Generate conditional images for each disease\n", + "model.eval()\n", + "vocab = sample_dataset.input_processors[\"disease\"].code_vocab\n", + "diseases = list(vocab.keys())\n", + "\n", + "with torch.no_grad():\n", + " for disease in diseases:\n", + " # Sample from latent space\n", + " z = torch.randn(1, model.hidden_dim).to(model.device)\n", + "\n", + " # Create conditional data\n", + " condition_indices = [vocab[disease]]\n", + " cond_data = {\"disease\": torch.tensor(condition_indices, dtype=torch.long).unsqueeze(0)}\n", + "\n", + " # Get embeddings\n", + " cond_embeddings = model.embedding_model(cond_data)\n", + " cond_vec = cond_embeddings[\"disease\"].mean(dim=1)\n", + "\n", + " # Reshape for decoder\n", + " z_reshaped = z.unsqueeze(2).unsqueeze(3)\n", + " z_reshaped = z_reshaped + cond_vec.unsqueeze(2).unsqueeze(3)\n", + "\n", + " # Generate image\n", + " generated = model.decoder(z_reshaped).detach().cpu().numpy()\n", + "\n", + " # Save individual image\n", + " filename = f\"conditional_vae_{disease.lower().replace(' ', '_')}.png\"\n", + " plt.figure(figsize=(5, 5))\n", + " plt.imshow(generated[0].reshape(image_size, image_size), cmap=\"gray\")\n", + " plt.title(f\"Generated Chest X-Ray (Conditional on {disease})\")\n", + " plt.axis('off')\n", + " plt.show()\n", + " plt.close()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "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.12.3" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/examples/covid19cxr_conformal.ipynb b/examples/covid19cxr_conformal.ipynb new file mode 100644 index 000000000..686bf94e4 --- /dev/null +++ b/examples/covid19cxr_conformal.ipynb @@ -0,0 +1,459 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Conformal Prediction for COVID-19 Chest X-Ray Classification\n", + "\n", + "This example demonstrates:\n", + "1. Training a ResNet-18 model on COVID-19 CXR dataset\n", + "2. Conventional conformal prediction using LABEL\n", + "3. Covariate shift adaptive conformal prediction using CovariateLabel\n", + "4. Comparison of coverage and efficiency between the two methods" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/ubuntu/PyHealth/pyhealth/sampler/sage_sampler.py:3: UserWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html. The pkg_resources package is slated for removal as early as 2025-11-30. Refrain from using this package or pin to Setuptools<81.\n", + " import pkg_resources\n", + "/home/ubuntu/PyHealth/.venv/lib/python3.12/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", + " from .autonotebook import tqdm as notebook_tqdm\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "This is a warning of potentially slow compute. You could uncomment this line and use the Python implementation instead of Cython.\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "import torch\n", + "\n", + "from pyhealth.calib.predictionset import LABEL\n", + "from pyhealth.calib.predictionset.covariate import CovariateLabel\n", + "from pyhealth.calib.utils import extract_embeddings\n", + "from pyhealth.datasets import (\n", + " COVID19CXRDataset,\n", + " get_dataloader,\n", + " split_by_sample_conformal,\n", + ")\n", + "from pyhealth.models import TorchvisionModel\n", + "from pyhealth.trainer import Trainer, get_metrics_fn\n", + "\n", + "# Set random seed for reproducibility\n", + "torch.manual_seed(42)\n", + "np.random.seed(42)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## STEP 1: Load and prepare dataset" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "================================================================================\n", + "STEP 1: Loading COVID-19 CXR Dataset\n", + "================================================================================\n", + "No config path provided, using default config\n" + ] + }, + { + "ename": "ValueError", + "evalue": "Raw COVID-19 CXR dataset files not found in ~/Downloads/COVID-19_Radiography_Dataset. Please download the dataset from https://www.kaggle.com/api/v1/datasets/download/tawsifurrahman/covid19-radiography-database and extract the contents to the specified root directory.", + "output_type": "error", + "traceback": [ + "\u001b[31m---------------------------------------------------------------------------\u001b[39m", + "\u001b[31mValueError\u001b[39m Traceback (most recent call last)", + "\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[3]\u001b[39m\u001b[32m, line 6\u001b[39m\n\u001b[32m 3\u001b[39m \u001b[38;5;28mprint\u001b[39m(\u001b[33m\"\u001b[39m\u001b[33m=\u001b[39m\u001b[33m\"\u001b[39m * \u001b[32m80\u001b[39m)\n\u001b[32m 5\u001b[39m root = \u001b[33m\"\u001b[39m\u001b[33m~/Downloads/COVID-19_Radiography_Dataset\u001b[39m\u001b[33m\"\u001b[39m\n\u001b[32m----> \u001b[39m\u001b[32m6\u001b[39m base_dataset = \u001b[43mCOVID19CXRDataset\u001b[49m\u001b[43m(\u001b[49m\u001b[43mroot\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 7\u001b[39m sample_dataset = base_dataset.set_task(cache_dir=\u001b[33m\"\u001b[39m\u001b[33m../../covid19cxr_cache\u001b[39m\u001b[33m\"\u001b[39m)\n\u001b[32m 9\u001b[39m \u001b[38;5;28mprint\u001b[39m(\u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mTotal samples: \u001b[39m\u001b[38;5;132;01m{\u001b[39;00m\u001b[38;5;28mlen\u001b[39m(sample_dataset)\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m\"\u001b[39m)\n", + "\u001b[36mFile \u001b[39m\u001b[32m~/PyHealth/pyhealth/datasets/covid19_cxr.py:96\u001b[39m, in \u001b[36mCOVID19CXRDataset.__init__\u001b[39m\u001b[34m(self, root, dataset_name, config_path)\u001b[39m\n\u001b[32m 94\u001b[39m config_path = Path(\u001b[34m__file__\u001b[39m).parent / \u001b[33m\"\u001b[39m\u001b[33mconfigs\u001b[39m\u001b[33m\"\u001b[39m / \u001b[33m\"\u001b[39m\u001b[33mcovid19_cxr.yaml\u001b[39m\u001b[33m\"\u001b[39m\n\u001b[32m 95\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mself\u001b[39m._check_raw_data_exists(root):\n\u001b[32m---> \u001b[39m\u001b[32m96\u001b[39m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\n\u001b[32m 97\u001b[39m \u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mRaw COVID-19 CXR dataset files not found in \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mroot\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m. \u001b[39m\u001b[33m\"\u001b[39m\n\u001b[32m 98\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mPlease download the dataset from \u001b[39m\u001b[33m\"\u001b[39m\n\u001b[32m 99\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mhttps://www.kaggle.com/api/v1/datasets/download/tawsifurrahman/covid19-radiography-database \u001b[39m\u001b[33m\"\u001b[39m\n\u001b[32m 100\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mand extract the contents to the specified root directory.\u001b[39m\u001b[33m\"\u001b[39m\n\u001b[32m 101\u001b[39m )\n\u001b[32m 102\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m os.path.exists(os.path.join(root, \u001b[33m\"\u001b[39m\u001b[33mcovid19_cxr-metadata-pyhealth.csv\u001b[39m\u001b[33m\"\u001b[39m)):\n\u001b[32m 103\u001b[39m \u001b[38;5;28mself\u001b[39m.prepare_metadata(root)\n", + "\u001b[31mValueError\u001b[39m: Raw COVID-19 CXR dataset files not found in ~/Downloads/COVID-19_Radiography_Dataset. Please download the dataset from https://www.kaggle.com/api/v1/datasets/download/tawsifurrahman/covid19-radiography-database and extract the contents to the specified root directory." + ] + } + ], + "source": [ + "print(\"=\" * 80)\n", + "print(\"STEP 1: Loading COVID-19 CXR Dataset\")\n", + "print(\"=\" * 80)\n", + "\n", + "root = \"~/Downloads/COVID-19_Radiography_Dataset\"\n", + "base_dataset = COVID19CXRDataset(root)\n", + "sample_dataset = base_dataset.set_task(cache_dir=\"../../covid19cxr_cache\")\n", + "\n", + "print(f\"Total samples: {len(sample_dataset)}\")\n", + "print(f\"Task mode: {sample_dataset.output_schema}\")\n", + "\n", + "# Split into train/val/cal/test\n", + "# For conformal prediction, we need a separate calibration set\n", + "train_data, val_data, cal_data, test_data = split_by_sample_conformal(\n", + " dataset=sample_dataset, ratios=[0.6, 0.1, 0.15, 0.15]\n", + ")\n", + "\n", + "print(f\"Train: {len(train_data)}\")\n", + "print(f\"Val: {len(val_data)}\")\n", + "print(f\"Cal: {len(cal_data)} (for conformal calibration)\")\n", + "print(f\"Test: {len(test_data)}\")\n", + "\n", + "# Create data loaders\n", + "train_loader = get_dataloader(train_data, batch_size=32, shuffle=True)\n", + "val_loader = get_dataloader(val_data, batch_size=32, shuffle=False)\n", + "cal_loader = get_dataloader(cal_data, batch_size=32, shuffle=False)\n", + "test_loader = get_dataloader(test_data, batch_size=32, shuffle=False)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## STEP 2: Train ResNet-18 model" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(\"\\n\" + \"=\" * 80)\n", + "print(\"STEP 2: Training ResNet-18 Model\")\n", + "print(\"=\" * 80)\n", + "\n", + "# Initialize ResNet-18 with pretrained weights\n", + "resnet = TorchvisionModel(\n", + " dataset=sample_dataset,\n", + " model_name=\"resnet18\",\n", + " model_config={\"weights\": \"DEFAULT\"},\n", + ")\n", + "\n", + "# Train the model\n", + "device = \"cuda:0\" if torch.cuda.is_available() else \"cpu\"\n", + "trainer = Trainer(model=resnet, device=device)\n", + "\n", + "print(f\"Training on device: {device}\")\n", + "trainer.train(\n", + " train_dataloader=train_loader,\n", + " val_dataloader=val_loader,\n", + " epochs=5,\n", + " monitor=\"accuracy\",\n", + ")\n", + "\n", + "print(\"✓ Model training completed\")\n", + "\n", + "# Evaluate base model on test set\n", + "print(\"\\nBase model performance on test set:\")\n", + "y_true_base, y_prob_base, loss_base = trainer.inference(test_loader)\n", + "base_metrics = get_metrics_fn(\"multiclass\")(\n", + " y_true_base, y_prob_base, metrics=[\"accuracy\", \"f1_weighted\"]\n", + ")\n", + "for metric, value in base_metrics.items():\n", + " print(f\" {metric}: {value:.4f}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## STEP 3: Conventional Conformal Prediction with LABEL" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(\"\\n\" + \"=\" * 80)\n", + "print(\"STEP 3: Conventional Conformal Prediction (LABEL)\")\n", + "print(\"=\" * 80)\n", + "\n", + "# Target miscoverage rate of 10% (90% coverage)\n", + "alpha = 0.1\n", + "print(f\"Target miscoverage rate: {alpha} (90% coverage)\")\n", + "\n", + "# Create LABEL predictor\n", + "label_predictor = LABEL(model=resnet, alpha=alpha)\n", + "\n", + "# Calibrate on calibration set\n", + "print(\"Calibrating LABEL predictor...\")\n", + "label_predictor.calibrate(cal_dataset=cal_data)\n", + "\n", + "# Evaluate on test set\n", + "print(\"Evaluating LABEL predictor on test set...\")\n", + "y_true_label, y_prob_label, _, extra_label = Trainer(model=label_predictor).inference(\n", + " test_loader, additional_outputs=[\"y_predset\"]\n", + ")\n", + "\n", + "label_metrics = get_metrics_fn(\"multiclass\")(\n", + " y_true_label,\n", + " y_prob_label,\n", + " metrics=[\"accuracy\", \"miscoverage_ps\"],\n", + " y_predset=extra_label[\"y_predset\"],\n", + ")\n", + "\n", + "# Calculate average set size\n", + "predset_label = (\n", + " torch.tensor(extra_label[\"y_predset\"])\n", + " if isinstance(extra_label[\"y_predset\"], np.ndarray)\n", + " else extra_label[\"y_predset\"]\n", + ")\n", + "avg_set_size_label = predset_label.float().sum(dim=1).mean().item()\n", + "\n", + "# Extract scalar values from metrics (handle both scalar and array returns)\n", + "miscoverage_label = label_metrics[\"miscoverage_ps\"]\n", + "if isinstance(miscoverage_label, np.ndarray):\n", + " miscoverage_label = float(\n", + " miscoverage_label.item()\n", + " if miscoverage_label.size == 1\n", + " else miscoverage_label.mean()\n", + " )\n", + "else:\n", + " miscoverage_label = float(miscoverage_label)\n", + "\n", + "print(\"\\nLABEL Results:\")\n", + "print(f\" Accuracy: {label_metrics['accuracy']:.4f}\")\n", + "print(f\" Empirical miscoverage: {miscoverage_label:.4f}\")\n", + "print(f\" Average set size: {avg_set_size_label:.2f}\")\n", + "print(f\" Target miscoverage: {alpha:.2f}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## STEP 4: Covariate Shift Adaptive Conformal Prediction" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(\"\\n\" + \"=\" * 80)\n", + "print(\"STEP 4: Covariate Shift Adaptive Conformal Prediction\")\n", + "print(\"=\" * 80)\n", + "\n", + "# Extract embeddings from the model\n", + "# For TorchvisionModel, we extract features from avgpool layer (before fc)\n", + "print(\"Extracting embeddings from calibration set...\")\n", + "cal_embeddings = extract_embeddings(resnet, cal_data, batch_size=32, device=device)\n", + "print(f\" Cal embeddings shape: {cal_embeddings.shape}\")\n", + "\n", + "print(\"Extracting embeddings from test set...\")\n", + "test_embeddings = extract_embeddings(resnet, test_data, batch_size=32, device=device)\n", + "print(f\" Test embeddings shape: {test_embeddings.shape}\")\n", + "\n", + "# Create CovariateLabel predictor\n", + "print(\"\\nCreating CovariateLabel predictor...\")\n", + "covariate_predictor = CovariateLabel(model=resnet, alpha=alpha)\n", + "\n", + "# Calibrate with embeddings (KDEs will be fitted automatically)\n", + "print(\"Calibrating CovariateLabel predictor...\")\n", + "print(\" - Fitting KDEs for covariate shift correction...\")\n", + "covariate_predictor.calibrate(\n", + " cal_dataset=cal_data, cal_embeddings=cal_embeddings, test_embeddings=test_embeddings\n", + ")\n", + "print(\"✓ Calibration completed\")\n", + "\n", + "# Evaluate on test set\n", + "print(\"Evaluating CovariateLabel predictor on test set...\")\n", + "y_true_cov, y_prob_cov, _, extra_cov = Trainer(model=covariate_predictor).inference(\n", + " test_loader, additional_outputs=[\"y_predset\"]\n", + ")\n", + "\n", + "cov_metrics = get_metrics_fn(\"multiclass\")(\n", + " y_true_cov,\n", + " y_prob_cov,\n", + " metrics=[\"accuracy\", \"miscoverage_ps\"],\n", + " y_predset=extra_cov[\"y_predset\"],\n", + ")\n", + "\n", + "# Calculate average set size\n", + "predset_cov = (\n", + " torch.tensor(extra_cov[\"y_predset\"])\n", + " if isinstance(extra_cov[\"y_predset\"], np.ndarray)\n", + " else extra_cov[\"y_predset\"]\n", + ")\n", + "avg_set_size_cov = predset_cov.float().sum(dim=1).mean().item()\n", + "\n", + "# Extract scalar values from metrics (handle both scalar and array returns)\n", + "miscoverage_cov = cov_metrics[\"miscoverage_ps\"]\n", + "if isinstance(miscoverage_cov, np.ndarray):\n", + " miscoverage_cov = float(\n", + " miscoverage_cov.item() if miscoverage_cov.size == 1 else miscoverage_cov.mean()\n", + " )\n", + "else:\n", + " miscoverage_cov = float(miscoverage_cov)\n", + "\n", + "print(\"\\nCovariateLabel Results:\")\n", + "print(f\" Accuracy: {cov_metrics['accuracy']:.4f}\")\n", + "print(f\" Empirical miscoverage: {miscoverage_cov:.4f}\")\n", + "print(f\" Average set size: {avg_set_size_cov:.2f}\")\n", + "print(f\" Target miscoverage: {alpha:.2f}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## STEP 5: Compare Methods" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(\"\\n\" + \"=\" * 80)\n", + "print(\"STEP 5: Comparison of Methods\")\n", + "print(\"=\" * 80)\n", + "\n", + "print(f\"\\nTarget: {1-alpha:.0%} coverage (max {alpha:.0%} miscoverage)\")\n", + "print(\"\\n{:<40} {:<15} {:<15}\".format(\"Metric\", \"LABEL\", \"CovariateLabel\"))\n", + "print(\"-\" * 70)\n", + "\n", + "# Coverage (1 - miscoverage)\n", + "label_coverage = 1 - miscoverage_label\n", + "cov_coverage = 1 - miscoverage_cov\n", + "print(\n", + " \"{:<40} {:<15.2%} {:<15.2%}\".format(\n", + " \"Empirical Coverage\", label_coverage, cov_coverage\n", + " )\n", + ")\n", + "\n", + "# Miscoverage\n", + "print(\n", + " \"{:<40} {:<15.4f} {:<15.4f}\".format(\n", + " \"Empirical Miscoverage\",\n", + " miscoverage_label,\n", + " miscoverage_cov,\n", + " )\n", + ")\n", + "\n", + "# Average set size (smaller is better for efficiency)\n", + "print(\n", + " \"{:<40} {:<15.2f} {:<15.2f}\".format(\n", + " \"Average Set Size\", avg_set_size_label, avg_set_size_cov\n", + " )\n", + ")\n", + "\n", + "# Efficiency (inverse of average set size)\n", + "efficiency_label = 1.0 / avg_set_size_label\n", + "efficiency_cov = 1.0 / avg_set_size_cov\n", + "print(\n", + " \"{:<40} {:<15.4f} {:<15.4f}\".format(\n", + " \"Efficiency (1/avg_set_size)\", efficiency_label, efficiency_cov\n", + " )\n", + ")\n", + "\n", + "print(\"\\n\" + \"=\" * 80)\n", + "print(\"Summary\")\n", + "print(\"=\" * 80)\n", + "\n", + "print(\"\\nKey Observations:\")\n", + "print(\"1. Both methods achieve near-target coverage guarantees\")\n", + "print(\"2. LABEL: Standard conformal prediction\")\n", + "print(\"3. CovariateLabel: Adapts to distribution shift between cal and test\")\n", + "print(\"\\nWhen to use CovariateLabel:\")\n", + "print(\" - When test distribution differs from calibration distribution\")\n", + "print(\" - When you have access to test embeddings/features\")\n", + "print(\" - When you want more robust coverage under distribution shift\")\n", + "print(\"\\nWhen to use LABEL:\")\n", + "print(\" - When cal and test distributions are similar (exchangeable)\")\n", + "print(\" - Simpler method, no need to fit KDEs\")\n", + "print(\" - Computationally more efficient\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## STEP 6: Visualize Prediction Sets" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(\"\\n\" + \"=\" * 80)\n", + "print(\"STEP 6: Example Predictions\")\n", + "print(\"=\" * 80)\n", + "\n", + "# Show first 5 test examples\n", + "n_examples = 5\n", + "print(f\"\\nShowing first {n_examples} test examples:\")\n", + "print(\"-\" * 80)\n", + "\n", + "for i in range(min(n_examples, len(y_true_label))):\n", + " true_class = int(y_true_label[i])\n", + "\n", + " # LABEL prediction set\n", + " if isinstance(predset_label, np.ndarray):\n", + " label_set = np.where(predset_label[i])[0]\n", + " else:\n", + " label_set = torch.where(predset_label[i])[0].cpu().numpy()\n", + "\n", + " # CovariateLabel prediction set\n", + " if isinstance(predset_cov, np.ndarray):\n", + " cov_set = np.where(predset_cov[i])[0]\n", + " else:\n", + " cov_set = torch.where(predset_cov[i])[0].cpu().numpy()\n", + "\n", + " print(f\"\\nExample {i+1}:\")\n", + " print(f\" True class: {true_class}\")\n", + " print(f\" LABEL set: {label_set.tolist()} (size: {len(label_set)})\")\n", + " print(f\" CovariateLabel set: {cov_set.tolist()} (size: {len(cov_set)})\")\n", + " print(f\" Correct in LABEL? {true_class in label_set}\")\n", + " print(f\" Correct in CovariateLabel? {true_class in cov_set}\")\n", + "\n", + "print(\"\\n\" + \"=\" * 80)\n", + "print(\"Example completed successfully!\")\n", + "print(\"=\" * 80)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "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.12.3" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/examples/datasets_overview.ipynb b/examples/datasets_overview.ipynb index aa99fd677..885eb0595 100644 --- a/examples/datasets_overview.ipynb +++ b/examples/datasets_overview.ipynb @@ -424,9 +424,9 @@ "\n", "**Description**: Chest X-ray images for COVID-19 classification.\n", "\n", - "**Source/Link**: Custom or public sources (check PyHealth docs).\n", + "**Source/Link**: [Custom or public sources (check PyHealth docs).](https://www.kaggle.com/api/v1/datasets/download/tawsifurrahman/covid19-radiography-database)\n", "\n", - "**Download Method**: Varies; often from Kaggle or GitHub.\n", + "**Download Method**: curl, direct download\n", "\n", "**Restrictions**: Public datasets.\n", "\n", @@ -467,67 +467,6 @@ "**Example Usage**:" ] }, - { - "cell_type": "code", - "execution_count": 61, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[31mInit signature:\u001b[39m\n", - "SampleDataset(\n", - " samples: List[Dict],\n", - " input_schema: Dict[str, Union[str, Type[pyhealth.processors.base_processor.FeatureProcessor]]],\n", - " output_schema: Dict[str, Union[str, Type[pyhealth.processors.base_processor.FeatureProcessor]]],\n", - " dataset_name: Optional[str] = \u001b[38;5;28;01mNone\u001b[39;00m,\n", - " task_name: Optional[str] = \u001b[38;5;28;01mNone\u001b[39;00m,\n", - " input_processors: Optional[Dict[str, pyhealth.processors.base_processor.FeatureProcessor]] = \u001b[38;5;28;01mNone\u001b[39;00m,\n", - " output_processors: Optional[Dict[str, pyhealth.processors.base_processor.FeatureProcessor]] = \u001b[38;5;28;01mNone\u001b[39;00m,\n", - ") -> \u001b[38;5;28;01mNone\u001b[39;00m\n", - "\u001b[31mDocstring:\u001b[39m \n", - "Sample dataset class for handling and processing data samples.\n", - "\n", - "Attributes:\n", - " samples (List[Dict]): List of data samples.\n", - " input_schema (Dict[str, Union[str, Type[FeatureProcessor], Tuple[Union[str, Type[FeatureProcessor]], Dict[str, Any]]]]):\n", - " Schema for input data. Values can be string aliases, processor classes, or tuples of (spec, kwargs_dict).\n", - " output_schema (Dict[str, Union[str, Type[FeatureProcessor], Tuple[Union[str, Type[FeatureProcessor]], Dict[str, Any]]]]):\n", - " Schema for output data. Values can be string aliases, processor classes, or tuples of (spec, kwargs_dict).\n", - " dataset_name (Optional[str]): Name of the dataset.\n", - " task_name (Optional[str]): Name of the task.\n", - "\u001b[31mInit docstring:\u001b[39m\n", - "Initializes the SampleDataset with samples and schemas.\n", - "\n", - "Args:\n", - " samples (List[Dict]): List of data samples.\n", - " input_schema (Dict[str, Union[str, Type[FeatureProcessor], Tuple[Union[str, Type[FeatureProcessor]], Dict[str, Any]]]]):\n", - " Schema for input data. Values can be string aliases, processor classes, or tuples of (spec, kwargs_dict) for instantiation.\n", - " output_schema (Dict[str, Union[str, Type[FeatureProcessor], Tuple[Union[str, Type[FeatureProcessor]], Dict[str, Any]]]]):\n", - " Schema for output data. Values can be string aliases, processor classes, or tuples of (spec, kwargs_dict) for instantiation.\n", - " dataset_name (Optional[str], optional): Name of the dataset.\n", - " Defaults to None.\n", - " task_name (Optional[str], optional): Name of the task.\n", - " Defaults to None.\n", - " input_processors (Optional[Dict[str, FeatureProcessor]],\n", - " optional): Pre-fitted input processors. If provided, these\n", - " will be used instead of creating new ones from input_schema.\n", - " Defaults to None.\n", - " output_processors (Optional[Dict[str, FeatureProcessor]],\n", - " optional): Pre-fitted output processors. If provided, these\n", - " will be used instead of creating new ones from output_schema.\n", - " Defaults to None.\n", - "\u001b[31mFile:\u001b[39m ~/PyHealth/pyhealth/datasets/sample_dataset.py\n", - "\u001b[31mType:\u001b[39m type\n", - "\u001b[31mSubclasses:\u001b[39m " - ] - } - ], - "source": [ - "SampleDataset?" - ] - }, { "cell_type": "code", "execution_count": null, diff --git a/examples/timeseries_mimic4.ipynb b/examples/timeseries_mimic4.ipynb index f5d9e012b..1532d2d8d 100644 --- a/examples/timeseries_mimic4.ipynb +++ b/examples/timeseries_mimic4.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "id": "8f384611", "metadata": {}, "outputs": [ @@ -10,83 +10,40 @@ "name": "stdout", "output_type": "stream", "text": [ - "Memory usage Starting MIMIC4Dataset init: 668.4 MB\n", + "Memory usage Starting MIMIC4Dataset init: 645.9 MB\n", "Initializing MIMIC4EHRDataset with tables: ['diagnoses_icd', 'procedures_icd', 'prescriptions', 'labevents'] (dev mode: True)\n", - "Using default EHR config: /home/johnwu3/projects/PyHealth_Branch_Testing/PyHealth/pyhealth/datasets/configs/mimic4_ehr.yaml\n", - "Memory usage Before initializing mimic4_ehr: 668.4 MB\n", + "Using default EHR config: /home/ubuntu/PyHealth/pyhealth/datasets/configs/mimic4_ehr.yaml\n", + "Memory usage Before initializing mimic4_ehr: 645.9 MB\n", "Initializing mimic4_ehr dataset from /srv/local/data/physionet.org/files/mimiciv/2.2/ (dev mode: False)\n", - "Scanning table: diagnoses_icd from /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/diagnoses_icd.csv.gz\n", - "Joining with table: /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/admissions.csv.gz\n", - "Original path does not exist. Using alternative: /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/admissions.csv\n", - "Scanning table: procedures_icd from /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/procedures_icd.csv.gz\n", - "Joining with table: /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/admissions.csv.gz\n", - "Original path does not exist. Using alternative: /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/admissions.csv\n", - "Scanning table: prescriptions from /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/prescriptions.csv.gz\n", - "Scanning table: labevents from /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/labevents.csv.gz\n", - "Joining with table: /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/d_labitems.csv.gz\n", - "Scanning table: patients from /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/patients.csv.gz\n", - "Scanning table: admissions from /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/admissions.csv.gz\n", - "Original path does not exist. Using alternative: /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/admissions.csv\n", - "Scanning table: icustays from /srv/local/data/physionet.org/files/mimiciv/2.2/icu/icustays.csv.gz\n", - "Memory usage After initializing mimic4_ehr: 30751.7 MB\n", - "Memory usage After EHR dataset initialization: 30751.7 MB\n", - "Memory usage Before combining data: 30751.7 MB\n", - "Combining data from ehr dataset\n", - "Creating combined dataframe\n", - "Memory usage After combining data: 30751.7 MB\n", - "Memory usage Completed MIMIC4Dataset init: 30751.7 MB\n", - "Setting task InHospitalMortalityMIMIC4 for mimic4 base dataset...\n", - "Generating samples with 10 worker(s)...\n", - "Collecting global event dataframe...\n", - "Dev mode enabled: limiting to 1000 patients\n", - "Collected dataframe with shape: (458197, 47)\n", - "Generating samples for InHospitalMortalityMIMIC4 with 10 workers\n" + "Scanning table: diagnoses_icd from /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/diagnoses_icd.csv.gz\n" ] }, { - "name": "stderr", - "output_type": "stream", - "text": [ - "Collecting samples for InHospitalMortalityMIMIC4 from 10 workers: 100%|██████████| 1000/1000 [00:03<00:00, 304.76it/s]" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Caching samples to ../../test_cache_mortality_m4/InHospitalMortalityMIMIC4.parquet\n", - "Failed to cache samples: failed to determine supertype of list[datetime[μs]] and object\n", - "Label mortality vocab: {0: 0, 1: 1}\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "\n", - "Processing samples: 100%|██████████| 723/723 [00:00<00:00, 1726.48it/s]" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Generated 723 samples for task InHospitalMortalityMIMIC4\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "\n" + "ename": "FileNotFoundError", + "evalue": "Neither path exists: /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/diagnoses_icd.csv.gz or /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/diagnoses_icd.csv", + "output_type": "error", + "traceback": [ + "\u001b[31m---------------------------------------------------------------------------\u001b[39m", + "\u001b[31mFileNotFoundError\u001b[39m Traceback (most recent call last)", + "\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[1]\u001b[39m\u001b[32m, line 3\u001b[39m\n\u001b[32m 1\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mpyhealth\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mdatasets\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m MIMIC4Dataset\n\u001b[32m----> \u001b[39m\u001b[32m3\u001b[39m dataset = \u001b[43mMIMIC4Dataset\u001b[49m\u001b[43m(\u001b[49m\n\u001b[32m 4\u001b[39m \u001b[43m \u001b[49m\u001b[43mehr_root\u001b[49m\u001b[43m=\u001b[49m\u001b[33;43m\"\u001b[39;49m\u001b[33;43m/srv/local/data/physionet.org/files/mimiciv/2.2/\u001b[39;49m\u001b[33;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\n\u001b[32m 5\u001b[39m \u001b[43m \u001b[49m\u001b[43mehr_tables\u001b[49m\u001b[43m=\u001b[49m\u001b[43m[\u001b[49m\u001b[33;43m\"\u001b[39;49m\u001b[33;43mdiagnoses_icd\u001b[39;49m\u001b[33;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[33;43m\"\u001b[39;49m\u001b[33;43mprocedures_icd\u001b[39;49m\u001b[33;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[33;43m\"\u001b[39;49m\u001b[33;43mprescriptions\u001b[39;49m\u001b[33;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[33;43m\"\u001b[39;49m\u001b[33;43mlabevents\u001b[39;49m\u001b[33;43m\"\u001b[39;49m\u001b[43m]\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 6\u001b[39m \u001b[43m \u001b[49m\u001b[43mdev\u001b[49m\u001b[43m=\u001b[49m\u001b[38;5;28;43;01mTrue\u001b[39;49;00m\u001b[43m,\u001b[49m\n\u001b[32m 7\u001b[39m \u001b[43m)\u001b[49m\n\u001b[32m 9\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mpyhealth\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mtasks\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m InHospitalMortalityMIMIC4\n\u001b[32m 11\u001b[39m task = InHospitalMortalityMIMIC4()\n", + "\u001b[36mFile \u001b[39m\u001b[32m~/PyHealth/pyhealth/datasets/mimic4.py:239\u001b[39m, in \u001b[36mMIMIC4Dataset.__init__\u001b[39m\u001b[34m(self, ehr_root, note_root, cxr_root, ehr_tables, note_tables, cxr_tables, ehr_config_path, note_config_path, cxr_config_path, dataset_name, dev)\u001b[39m\n\u001b[32m 237\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m ehr_root:\n\u001b[32m 238\u001b[39m logger.info(\u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mInitializing MIMIC4EHRDataset with tables: \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mehr_tables\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m (dev mode: \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mdev\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m)\u001b[39m\u001b[33m\"\u001b[39m)\n\u001b[32m--> \u001b[39m\u001b[32m239\u001b[39m \u001b[38;5;28mself\u001b[39m.sub_datasets[\u001b[33m\"\u001b[39m\u001b[33mehr\u001b[39m\u001b[33m\"\u001b[39m] = \u001b[43mMIMIC4EHRDataset\u001b[49m\u001b[43m(\u001b[49m\n\u001b[32m 240\u001b[39m \u001b[43m \u001b[49m\u001b[43mroot\u001b[49m\u001b[43m=\u001b[49m\u001b[43mehr_root\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 241\u001b[39m \u001b[43m \u001b[49m\u001b[43mtables\u001b[49m\u001b[43m=\u001b[49m\u001b[43mehr_tables\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 242\u001b[39m \u001b[43m \u001b[49m\u001b[43mconfig_path\u001b[49m\u001b[43m=\u001b[49m\u001b[43mehr_config_path\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 243\u001b[39m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 244\u001b[39m log_memory_usage(\u001b[33m\"\u001b[39m\u001b[33mAfter EHR dataset initialization\u001b[39m\u001b[33m\"\u001b[39m)\n\u001b[32m 246\u001b[39m \u001b[38;5;66;03m# Initialize Notes dataset if root is provided\u001b[39;00m\n", + "\u001b[36mFile \u001b[39m\u001b[32m~/PyHealth/pyhealth/datasets/mimic4.py:59\u001b[39m, in \u001b[36mMIMIC4EHRDataset.__init__\u001b[39m\u001b[34m(self, root, tables, dataset_name, config_path, **kwargs)\u001b[39m\n\u001b[32m 57\u001b[39m default_tables = [\u001b[33m\"\u001b[39m\u001b[33mpatients\u001b[39m\u001b[33m\"\u001b[39m, \u001b[33m\"\u001b[39m\u001b[33madmissions\u001b[39m\u001b[33m\"\u001b[39m, \u001b[33m\"\u001b[39m\u001b[33micustays\u001b[39m\u001b[33m\"\u001b[39m]\n\u001b[32m 58\u001b[39m tables = tables + default_tables\n\u001b[32m---> \u001b[39m\u001b[32m59\u001b[39m \u001b[38;5;28;43msuper\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[43m.\u001b[49m\u001b[34;43m__init__\u001b[39;49m\u001b[43m(\u001b[49m\n\u001b[32m 60\u001b[39m \u001b[43m \u001b[49m\u001b[43mroot\u001b[49m\u001b[43m=\u001b[49m\u001b[43mroot\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 61\u001b[39m \u001b[43m \u001b[49m\u001b[43mtables\u001b[49m\u001b[43m=\u001b[49m\u001b[43mtables\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 62\u001b[39m \u001b[43m \u001b[49m\u001b[43mdataset_name\u001b[49m\u001b[43m=\u001b[49m\u001b[43mdataset_name\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 63\u001b[39m \u001b[43m \u001b[49m\u001b[43mconfig_path\u001b[49m\u001b[43m=\u001b[49m\u001b[43mconfig_path\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 64\u001b[39m \u001b[43m \u001b[49m\u001b[43m*\u001b[49m\u001b[43m*\u001b[49m\u001b[43mkwargs\u001b[49m\n\u001b[32m 65\u001b[39m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 66\u001b[39m log_memory_usage(\u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mAfter initializing \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mdataset_name\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m\"\u001b[39m)\n", + "\u001b[36mFile \u001b[39m\u001b[32m~/PyHealth/pyhealth/datasets/base_dataset.py:139\u001b[39m, in \u001b[36mBaseDataset.__init__\u001b[39m\u001b[34m(self, root, tables, dataset_name, config_path, dev)\u001b[39m\n\u001b[32m 133\u001b[39m \u001b[38;5;28mself\u001b[39m.dev = dev\n\u001b[32m 135\u001b[39m logger.info(\n\u001b[32m 136\u001b[39m \u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mInitializing \u001b[39m\u001b[38;5;132;01m{\u001b[39;00m\u001b[38;5;28mself\u001b[39m.dataset_name\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m dataset from \u001b[39m\u001b[38;5;132;01m{\u001b[39;00m\u001b[38;5;28mself\u001b[39m.root\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m (dev mode: \u001b[39m\u001b[38;5;132;01m{\u001b[39;00m\u001b[38;5;28mself\u001b[39m.dev\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m)\u001b[39m\u001b[33m\"\u001b[39m\n\u001b[32m 137\u001b[39m )\n\u001b[32m--> \u001b[39m\u001b[32m139\u001b[39m \u001b[38;5;28mself\u001b[39m.global_event_df = \u001b[38;5;28;43mself\u001b[39;49m\u001b[43m.\u001b[49m\u001b[43mload_data\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 141\u001b[39m \u001b[38;5;66;03m# Cached attributes\u001b[39;00m\n\u001b[32m 142\u001b[39m \u001b[38;5;28mself\u001b[39m._collected_global_event_df = \u001b[38;5;28;01mNone\u001b[39;00m\n", + "\u001b[36mFile \u001b[39m\u001b[32m~/PyHealth/pyhealth/datasets/base_dataset.py:192\u001b[39m, in \u001b[36mBaseDataset.load_data\u001b[39m\u001b[34m(self)\u001b[39m\n\u001b[32m 186\u001b[39m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34mload_data\u001b[39m(\u001b[38;5;28mself\u001b[39m) -> pl.LazyFrame:\n\u001b[32m 187\u001b[39m \u001b[38;5;250m \u001b[39m\u001b[33;03m\"\"\"Loads data from the specified tables.\u001b[39;00m\n\u001b[32m 188\u001b[39m \n\u001b[32m 189\u001b[39m \u001b[33;03m Returns:\u001b[39;00m\n\u001b[32m 190\u001b[39m \u001b[33;03m pl.LazyFrame: A concatenated lazy frame of all tables.\u001b[39;00m\n\u001b[32m 191\u001b[39m \u001b[33;03m \"\"\"\u001b[39;00m\n\u001b[32m--> \u001b[39m\u001b[32m192\u001b[39m frames = [\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m.\u001b[49m\u001b[43mload_table\u001b[49m\u001b[43m(\u001b[49m\u001b[43mtable\u001b[49m\u001b[43m.\u001b[49m\u001b[43mlower\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m \u001b[38;5;28;01mfor\u001b[39;00m table \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mself\u001b[39m.tables]\n\u001b[32m 193\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m pl.concat(frames, how=\u001b[33m\"\u001b[39m\u001b[33mdiagonal\u001b[39m\u001b[33m\"\u001b[39m)\n", + "\u001b[36mFile \u001b[39m\u001b[32m~/PyHealth/pyhealth/datasets/base_dataset.py:222\u001b[39m, in \u001b[36mBaseDataset.load_table\u001b[39m\u001b[34m(self, table_name)\u001b[39m\n\u001b[32m 219\u001b[39m csv_path = clean_path(csv_path)\n\u001b[32m 221\u001b[39m logger.info(\u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mScanning table: \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mtable_name\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m from \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mcsv_path\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m\"\u001b[39m)\n\u001b[32m--> \u001b[39m\u001b[32m222\u001b[39m df = \u001b[43mscan_csv_gz_or_csv_tsv\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcsv_path\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 224\u001b[39m \u001b[38;5;66;03m# Convert column names to lowercase before calling preprocess_func\u001b[39;00m\n\u001b[32m 225\u001b[39m df = df.rename(_to_lower)\n", + "\u001b[36mFile \u001b[39m\u001b[32m~/PyHealth/pyhealth/datasets/base_dataset.py:94\u001b[39m, in \u001b[36mscan_csv_gz_or_csv_tsv\u001b[39m\u001b[34m(path)\u001b[39m\n\u001b[32m 91\u001b[39m logger.info(\u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mOriginal path does not exist. Using alternative: \u001b[39m\u001b[38;5;132;01m{\u001b[39;00malt_path\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m\"\u001b[39m)\n\u001b[32m 92\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m scan_file(alt_path)\n\u001b[32m---> \u001b[39m\u001b[32m94\u001b[39m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mFileNotFoundError\u001b[39;00m(\u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[33mNeither path exists: \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mpath\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m or \u001b[39m\u001b[38;5;132;01m{\u001b[39;00malt_path\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m\"\u001b[39m)\n", + "\u001b[31mFileNotFoundError\u001b[39m: Neither path exists: /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/diagnoses_icd.csv.gz or /srv/local/data/physionet.org/files/mimiciv/2.2/hosp/diagnoses_icd.csv" ] } ], "source": [ "from pyhealth.datasets import MIMIC4Dataset\n", "\n", + "ehr_root = \"/srv/local/data/physionet.org/files/mimiciv/2.2/\"\n", + "ehr_root = \"~/Downloads/\"\n", + "\n", "dataset = MIMIC4Dataset(\n", - " ehr_root=\"/srv/local/data/physionet.org/files/mimiciv/2.2/\",\n", + " ehr_root=ehr_root,\n", " ehr_tables=[\"diagnoses_icd\", \"procedures_icd\", \"prescriptions\", \"labevents\"],\n", " dev=True,\n", ")\n", @@ -108,7 +65,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "id": "ca618021", "metadata": {}, "outputs": [ @@ -391,7 +348,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "id": "a66e489f", "metadata": {}, "outputs": [ @@ -418,7 +375,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "id": "3b642c1d", "metadata": {}, "outputs": [ @@ -879,11 +836,43 @@ " optimizer_params={\"lr\": 1e-4} # Using learning rate of 1e-4\n", ")\n" ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d09d115d", + "metadata": {}, + "outputs": [], + "source": [ + "!ls" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0757b9fe", + "metadata": {}, + "outputs": [], + "source": [ + "from pyhealth.datasets import MIMIC3Dataset\n", + "from pyhealth.tasks import MortalityPredictionMIMIC3\n", + "from pyhealth.models import RNN\n", + "from pyhealth.trainer import Trainer\n", + "\n", + "# Load healthcare data\n", + "dataset = MIMIC3Dataset(root=\"data/\", tables=[\"diagnoses_icd\", \"procedures\"])\n", + "samples = dataset.set_task(MortalityPredictionMIMIC3())\n", + "\n", + "# Train model\n", + "model = RNN(dataset=samples)\n", + "trainer = Trainer(model=model)\n", + "trainer.train(train_dataloader, val_dataloader, epochs=50)" + ] } ], "metadata": { "kernelspec": { - "display_name": "medical_coding_demo", + "display_name": ".venv", "language": "python", "name": "python3" }, @@ -897,7 +886,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.16" + "version": "3.12.3" } }, "nbformat": 4, diff --git a/examples/timeseries_vae_modeling.ipynb b/examples/timeseries_vae_modeling.ipynb new file mode 100644 index 000000000..17a49fcf9 --- /dev/null +++ b/examples/timeseries_vae_modeling.ipynb @@ -0,0 +1,1009 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Time-Series Modeling with VAE\n", + "\n", + "This notebook demonstrates how to use the enhanced VAE model for time-series data analysis and generation. Unlike image VAEs that work with spatial patterns, time-series VAEs model sequential patterns in medical data.\n", + "\n", + "What does it mean, to encode a time-series into a Variational Auto-Encoder?\n", + "\n", + "The first part of the VAE is an encoder based of a Gated Recurring Unit (GRU) Neural Network. This type of network is able to encode sequences of events into an embedding space.\n", + "\n", + "The events are treated as a sequence of events - we do not take into account the time yet, just the order of events. These events are aligned across all the patients. Since not all patients will have the same number of events, we add some null \"padding\" events to the patients that have fewer events than the maximum.\n", + "\n", + "The Encoder part of the VAE will encode these series of events into embeddings, which represent the whole history of events for a patient. We can use these embeddings as input for further modelling tasks, or to compare patients. For example, patients that have a similar sequence of events should cluster closely in the embedding space, compared to other patients.\n", + "\n", + "Finally, the Decoder part of the VAE reconstructs the original sequences of events, from the input.\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "from pyhealth.datasets import split_by_visit, get_dataloader\n", + "from pyhealth.trainer import Trainer\n", + "from pyhealth.models import VAE\n", + "from pyhealth.datasets import MIMIC4Dataset\n", + "from pyhealth.tasks import MortalityPredictionMIMIC4\n", + "\n", + "import torch\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Load MIMIC4 Demo Dataset\n", + "\n", + "We'll use the MIMIC4 demo dataset to demonstrate time-series VAE on real medical sequences.\n", + "\n", + "**Setup Instructions:**\n", + "1. Download MIMIC4 demo data from: https://physionet.org/files/mimic-iv-demo/2.2/\n", + "2. Create a `data/mimic4_demo` directory in your project root\n", + "3. Extract the downloaded files into `data/mimic4_demo/hosp/` subdirectory\n", + "4. Update the `ehr_root` path below if needed" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Memory usage Starting MIMIC4Dataset init: 812.4 MB\n", + "Initializing MIMIC4EHRDataset with tables: ['diagnoses_icd', 'procedures_icd', 'prescriptions'] (dev mode: True)\n", + "Using default EHR config: /home/ubuntu/PyHealth/pyhealth/datasets/configs/mimic4_ehr.yaml\n", + "Memory usage Before initializing mimic4_ehr: 812.4 MB\n", + "Initializing mimic4_ehr dataset from /home/ubuntu/PyHealth/data/mimic-iv-clinical-database-demo-2.2/ (dev mode: False)\n", + "Scanning table: diagnoses_icd from /home/ubuntu/PyHealth/data/mimic-iv-clinical-database-demo-2.2/hosp/diagnoses_icd.csv.gz\n", + "Joining with table: /home/ubuntu/PyHealth/data/mimic-iv-clinical-database-demo-2.2/hosp/admissions.csv.gz\n", + "Scanning table: procedures_icd from /home/ubuntu/PyHealth/data/mimic-iv-clinical-database-demo-2.2/hosp/procedures_icd.csv.gz\n", + "Joining with table: /home/ubuntu/PyHealth/data/mimic-iv-clinical-database-demo-2.2/hosp/admissions.csv.gz\n", + "Scanning table: prescriptions from /home/ubuntu/PyHealth/data/mimic-iv-clinical-database-demo-2.2/hosp/prescriptions.csv.gz\n", + "Scanning table: patients from /home/ubuntu/PyHealth/data/mimic-iv-clinical-database-demo-2.2/hosp/patients.csv.gz\n", + "Scanning table: admissions from /home/ubuntu/PyHealth/data/mimic-iv-clinical-database-demo-2.2/hosp/admissions.csv.gz\n", + "Scanning table: icustays from /home/ubuntu/PyHealth/data/mimic-iv-clinical-database-demo-2.2/icu/icustays.csv.gz\n", + "Memory usage After initializing mimic4_ehr: 815.3 MB\n", + "Memory usage After EHR dataset initialization: 815.3 MB\n", + "Memory usage Before combining data: 815.3 MB\n", + "Combining data from ehr dataset\n", + "Creating combined dataframe\n", + "Memory usage After combining data: 815.3 MB\n", + "Memory usage Completed MIMIC4Dataset init: 815.3 MB\n", + "Setting task MortalityPredictionMIMIC4 for mimic4 base dataset...\n", + "Generating samples with 2 worker(s)...\n", + "Collecting global event dataframe...\n", + "Dev mode enabled: limiting to 1000 patients\n", + "Collected dataframe with shape: (23830, 38)\n", + "Generating samples for MortalityPredictionMIMIC4 with 2 workers\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Collecting samples for MortalityPredictionMIMIC4 from 2 workers: 100%|██████████| 100/100 [00:00<00:00, 184.14it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Label mortality vocab: {0: 0, 1: 1}\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Processing samples: 100%|██████████| 108/108 [00:00<00:00, 20409.32it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Generated 108 samples for task MortalityPredictionMIMIC4\n", + "MIMIC4 demo dataset loaded\n", + "Number of samples: 108\n", + "Input features: ['conditions', 'procedures', 'drugs']\n", + "Output features: ['mortality']\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# Load MIMIC4 demo dataset\n", + "# Download demo data from: https://physionet.org/files/mimic-iv-demo/2.2/\n", + "# and place in a local directory, then update ehr_root below\n", + "ehr_root = \"/home/ubuntu/PyHealth/data/mimic-iv-clinical-database-demo-2.2/\" # Update this path to your local MIMIC4 demo data\n", + "\n", + "dataset = MIMIC4Dataset(\n", + " ehr_root=ehr_root,\n", + " ehr_tables=[\"diagnoses_icd\", \"procedures_icd\", \"prescriptions\"],\n", + " dev=True,\n", + ")\n", + "\n", + "# Set task for time-series modeling\n", + "task = MortalityPredictionMIMIC4()\n", + "ts_dataset = dataset.set_task(task, num_workers=2)\n", + "\n", + "print(\"MIMIC4 demo dataset loaded\")\n", + "print(f\"Number of samples: {len(ts_dataset)}\")\n", + "print(f\"Input features: {list(ts_dataset.input_schema.keys())}\")\n", + "print(f\"Output features: {list(ts_dataset.output_schema.keys())}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Create and Train Time-Series VAE\n", + "\n", + "The VAE will learn to encode patient trajectories into a latent space and reconstruct them." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Time-series VAE created\n", + "Input type: timeseries\n", + "Has embedding model: True\n", + "Has RNN encoder: True\n", + "Latent dimension: 64\n" + ] + } + ], + "source": [ + "# Create time-series VAE model\n", + "ts_model = VAE(\n", + " dataset=ts_dataset,\n", + " feature_keys=[\"conditions\"], # Single sequence feature for VAE\n", + " label_key=\"mortality\",\n", + " mode=\"binary\", # Binary classification for mortality prediction\n", + " input_type=\"timeseries\", # Key parameter for time-series mode\n", + " hidden_dim=64, # Latent dimension for medical sequences\n", + ")\n", + "\n", + "print(\"Time-series VAE created\")\n", + "print(f\"Input type: {ts_model.input_type}\")\n", + "print(f\"Has embedding model: {hasattr(ts_model, 'embedding_model')}\")\n", + "print(f\"Has RNN encoder: {hasattr(ts_model, 'encoder_rnn')}\")\n", + "print(f\"Latent dimension: {ts_model.hidden_dim}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Understanding the Time-Series VAE Architecture\n", + "\n", + "The time-series VAE differs from image VAEs:\n", + "\n", + "1. **EmbeddingModel**: Converts categorical sequences to dense vectors\n", + "2. **RNN Encoder**: Processes sequential embeddings, capturing temporal patterns\n", + "3. **Latent Space**: Fixed-size representation of the entire sequence\n", + "4. **Linear Decoder**: Reconstructs the sequence's compressed representation\n", + "\n", + "This architecture can learn patterns like \"diabetes → metformin → insulin\" or \"asthma → albuterol → steroids\"." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "VAE(\n", + " (embedding_model): EmbeddingModel(embedding_layers=ModuleDict(\n", + " (conditions): Embedding(865, 64, padding_idx=0)\n", + " (procedures): Embedding(218, 64, padding_idx=0)\n", + " (drugs): Embedding(486, 64, padding_idx=0)\n", + " ))\n", + " (encoder_rnn): GRU(64, 64, batch_first=True)\n", + " (mu): Linear(in_features=64, out_features=64, bias=True)\n", + " (log_std2): Linear(in_features=64, out_features=64, bias=True)\n", + " (decoder_linear): Linear(in_features=64, out_features=64, bias=True)\n", + ")\n", + "Metrics: []\n", + "Device: cuda\n", + "\n", + "Training time-series VAE...\n", + "Training:\n", + "Batch size: 32\n", + "Optimizer: \n", + "Optimizer params: {'lr': 0.0001}\n", + "Weight decay: 0.0\n", + "Max grad norm: None\n", + "Val dataloader: \n", + "Monitor: loss\n", + "Monitor criterion: min\n", + "Epochs: 10\n", + "Patience: None\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Epoch 0 / 10: 100%|██████████| 4/4 [00:00<00:00, 10.86it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Train epoch-0, step-4 ---\n", + "loss: 600.1951\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Evaluation: 100%|██████████| 4/4 [00:00<00:00, 712.44it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Eval epoch-0, step-4 ---\n", + "loss: 596.4567\n", + "New best loss score (596.4567) at epoch-0, step-4\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Epoch 1 / 10: 100%|██████████| 4/4 [00:00<00:00, 290.50it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Train epoch-1, step-8 ---\n", + "loss: 570.5898\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Evaluation: 100%|██████████| 4/4 [00:00<00:00, 731.70it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Eval epoch-1, step-8 ---\n", + "loss: 581.0278\n", + "New best loss score (581.0278) at epoch-1, step-8\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Epoch 2 / 10: 100%|██████████| 4/4 [00:00<00:00, 288.28it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Train epoch-2, step-12 ---\n", + "loss: 585.5507\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Evaluation: 100%|██████████| 4/4 [00:00<00:00, 743.87it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Eval epoch-2, step-12 ---\n", + "loss: 591.7324\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Epoch 3 / 10: 100%|██████████| 4/4 [00:00<00:00, 291.74it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Train epoch-3, step-16 ---\n", + "loss: 571.2698\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Evaluation: 100%|██████████| 4/4 [00:00<00:00, 740.78it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Eval epoch-3, step-16 ---\n", + "loss: 569.4090\n", + "New best loss score (569.4090) at epoch-3, step-16\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Epoch 4 / 10: 100%|██████████| 4/4 [00:00<00:00, 293.35it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Train epoch-4, step-20 ---\n", + "loss: 575.8144\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Evaluation: 100%|██████████| 4/4 [00:00<00:00, 740.13it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Eval epoch-4, step-20 ---\n", + "loss: 593.6073\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Epoch 5 / 10: 100%|██████████| 4/4 [00:00<00:00, 293.48it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Train epoch-5, step-24 ---\n", + "loss: 554.4583\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Evaluation: 100%|██████████| 4/4 [00:00<00:00, 730.30it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Eval epoch-5, step-24 ---\n", + "loss: 575.9142\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Epoch 6 / 10: 100%|██████████| 4/4 [00:00<00:00, 289.78it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Train epoch-6, step-28 ---\n", + "loss: 567.8894\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Evaluation: 100%|██████████| 4/4 [00:00<00:00, 743.44it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Eval epoch-6, step-28 ---\n", + "loss: 577.6712\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Epoch 7 / 10: 100%|██████████| 4/4 [00:00<00:00, 294.15it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Train epoch-7, step-32 ---\n", + "loss: 590.4861\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Evaluation: 100%|██████████| 4/4 [00:00<00:00, 737.75it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Eval epoch-7, step-32 ---\n", + "loss: 557.5274\n", + "New best loss score (557.5274) at epoch-7, step-32\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Epoch 8 / 10: 100%|██████████| 4/4 [00:00<00:00, 291.25it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Train epoch-8, step-36 ---\n", + "loss: 577.2799\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Evaluation: 100%|██████████| 4/4 [00:00<00:00, 751.47it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Eval epoch-8, step-36 ---\n", + "loss: 552.2935\n", + "New best loss score (552.2935) at epoch-8, step-36\n", + "\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Epoch 9 / 10: 100%|██████████| 4/4 [00:00<00:00, 293.05it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Train epoch-9, step-40 ---\n", + "loss: 536.7056\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n", + "Evaluation: 100%|██████████| 4/4 [00:00<00:00, 743.14it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "--- Eval epoch-9, step-40 ---\n", + "loss: 547.2967\n", + "New best loss score (547.2967) at epoch-9, step-40\n", + "Loaded best model\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Training completed!\n" + ] + } + ], + "source": [ + "# Prepare data for training\n", + "train_dataloader = get_dataloader(ts_dataset, batch_size=32, shuffle=True)\n", + "\n", + "# Create trainer\n", + "trainer = Trainer(\n", + " model=ts_model, \n", + " device=\"cuda\" if torch.cuda.is_available() else \"cpu\",\n", + " metrics=[] # VAE is unsupervised, no classification metrics needed\n", + ")\n", + "\n", + "# Train the model (reduced epochs for demo)\n", + "print(\"Training time-series VAE...\")\n", + "trainer.train(\n", + " train_dataloader=train_dataloader,\n", + " val_dataloader=train_dataloader, # Using same data for demo\n", + " epochs=10,\n", + " monitor=\"loss\",\n", + " monitor_criterion=\"min\",\n", + " optimizer_params={\"lr\": 1e-4},\n", + ")\n", + "\n", + "print(\"Training completed!\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Evaluate Reconstruction Performance\n", + "\n", + "Check how well the VAE reconstructs the original sequences.\n", + "\n", + "**What the outputs represent:**\n", + "- `y_prob`: Reconstructed patient trajectory embeddings (VAE's attempt to recreate the input)\n", + "- `y_true`: Original RNN hidden states summarizing each patient's diagnosis sequence\n", + "- `loss`: Reconstruction error measuring how well the VAE captures medical patterns\n", + "\n", + "The `y_true` values are 64-dimensional vectors that represent compressed summaries of patient medical histories, capturing temporal patterns like disease progression (e.g., hypertension → diabetes → kidney disease)." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Evaluation: 100%|██████████| 4/4 [00:00<00:00, 715.26it/s]" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Evaluation Results:\n", + "loss: 541.9971\n", + "\n", + "Reconstruction shape: torch.Size([32, 64])\n", + "Original shape: torch.Size([32, 64])\n", + "Loss: 654.7109\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "# Evaluate on training data\n", + "eval_results = trainer.evaluate(train_dataloader)\n", + "print(\"Evaluation Results:\")\n", + "for metric, value in eval_results.items():\n", + " print(f\"{metric}: {value:.4f}\")\n", + "\n", + "# Get reconstruction examples\n", + "data_batch = next(iter(train_dataloader))\n", + "with torch.no_grad():\n", + " output = ts_model(**data_batch)\n", + " \n", + "print(f\"\\nReconstruction shape: {output['y_prob'].shape}\")\n", + "print(f\"Original shape: {output['y_true'].shape}\")\n", + "print(f\"Loss: {output['loss'].item():.4f}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Generate New Medical Sequences\n", + "\n", + "Sample from the latent space to generate new patient trajectories and convert them to human-understandable medical codes." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Generated sequence representations:\n", + "Shape: torch.Size([3, 64])\n", + "Sample values: [ 0.53002435 1.3221712 -0.48090675 -0.45167932 -0.49437132]\n", + "\n", + "Converting to medical codes for generated sequence 0:\n", + "tensor([ 0.0000e+00, -7.3698e-03, -3.6019e+00, 4.2856e+00, 4.9865e+00,\n", + " -3.4686e+00, -2.6077e+00, 3.6966e-01, 3.1678e-01, 1.8775e+00,\n", + " 2.7686e+00, 9.8846e+00, 1.0820e+01, 4.1149e+00, 1.1023e+01,\n", + " -4.6142e+00, 6.1783e+00, -1.9797e+00, 3.3450e+00, 4.8513e-01,\n", + " 4.9730e+00, 4.7466e+00, 6.4790e+00, 4.3559e+00, -4.6351e+00,\n", + " 5.0865e-01, 2.9454e+00, 4.5632e+00, -6.7101e+00, 1.6942e+00,\n", + " 9.0058e+00, 1.1524e+00, -4.4482e+00, 3.0030e+00, -6.6758e+00,\n", + " 1.5273e+01, -9.0026e-01, -5.9171e-01, -8.6225e+00, -6.0907e+00,\n", + " 3.5220e+00, 9.3690e+00, -5.0509e-01, 1.1058e+01, -2.0280e+00,\n", + " 9.4648e+00, -1.8569e+00, 1.9413e+00, 6.4853e+00, -8.4831e+00,\n", + " -9.4427e-01, -2.8588e+00, 7.2913e-01, -9.2253e+00, -3.6401e+00,\n", + " 4.1965e+00, 6.1821e+00, 4.8190e-02, -1.0670e+00, -2.3349e+00,\n", + " -2.1616e+00, 2.2229e+00, 1.0739e+00, 1.5211e+00, 2.5068e+00,\n", + " 6.0805e-01, -3.9276e+00, -4.7792e+00, 7.1451e+00, 6.6988e+00,\n", + " 8.2785e+00, -7.7417e+00, 1.3240e+00, -2.9780e+00, 1.1269e+01,\n", + " 1.8551e+00, -1.1236e+01, -1.6523e+00, -4.8508e+00, 6.5365e+00,\n", + " -1.8226e+00, -2.5214e+00, -1.8810e+00, 7.5196e+00, 3.4994e+00,\n", + " -6.2609e-01, 3.3908e+00, 8.6278e+00, -8.5831e+00, -5.9723e+00,\n", + " -9.4077e-01, -3.6397e+00, -7.3617e+00, 2.4734e+00, 4.7124e+00,\n", + " 5.7872e+00, 1.1024e+00, -8.8864e+00, 6.5827e+00, 7.5309e+00,\n", + " 7.7808e-01, -3.8766e+00, 4.2168e+00, -1.0284e+00, -4.5411e+00,\n", + " -1.0719e+00, 3.6934e+00, -5.7031e+00, 4.2286e+00, -2.7739e+00,\n", + " 5.0000e+00, -1.1350e+00, -1.9651e+00, 1.6179e+00, 7.9560e+00,\n", + " 4.4798e+00, -1.6526e+00, -1.6522e+00, -3.5508e+00, 3.9089e+00,\n", + " 2.7357e+00, -3.3986e+00, 6.5241e+00, 1.7675e-01, -5.8271e+00,\n", + " 9.2375e+00, 2.4214e+00, -3.7925e+00, 1.3557e+00, 1.7812e+00,\n", + " -3.0547e-01, 6.5939e-01, 1.0546e+00, 3.9847e+00, 1.8091e+00,\n", + " -4.0046e+00, -5.5650e+00, 5.2020e+00, 7.5734e+00, -5.5784e+00,\n", + " -1.1468e+01, 8.2059e+00, -7.4497e+00, -6.2369e+00, -7.5726e+00,\n", + " -4.4698e+00, 2.5128e+00, -9.4868e+00, -2.7561e+00, -1.1705e+00,\n", + " 3.3567e+00, 3.7004e+00, 2.6886e+00, 3.2938e-01, -2.1804e+00,\n", + " 5.4503e+00, -7.9096e-01, 7.1233e+00, 6.3597e+00, -1.5332e+00,\n", + " 5.3480e-02, 2.1162e-01, 3.2930e+00, -1.8011e+00, -2.7989e+00,\n", + " 2.7531e+00, -1.1935e+00, -5.0806e+00, 3.6173e+00, -1.6692e+00,\n", + " -5.6118e+00, -3.0442e+00, 1.3044e+01, 1.8823e+00, 3.4506e+00,\n", + " -8.7729e+00, 4.5545e+00, -3.8803e+00, 1.7737e+00, -2.0081e+00,\n", + " -5.4540e+00, -6.3734e+00, -5.1804e-01, 1.9105e+00, -5.7511e+00,\n", + " -1.1010e+00, 1.4860e+00, 1.7801e+00, 7.2562e+00, 3.6735e-01,\n", + " 9.1315e+00, 7.1706e+00, -3.4692e+00, 3.5518e+00, -3.0591e+00,\n", + " -1.3145e+00, -6.0018e+00, -5.7727e+00, -3.2378e+00, -5.1966e+00,\n", + " -4.1021e+00, -3.1030e+00, 8.1722e+00, 5.2892e+00, -8.7676e+00,\n", + " 1.9973e+00, 4.6449e+00, 1.3642e+00, 8.9750e-01, 1.6920e-01,\n", + " 2.3763e+00, 3.4316e-01, 4.2113e+00, -1.6114e-01, -1.8713e+00,\n", + " -1.4838e+00, 2.5215e+00, 1.4842e+00, 6.3901e+00, 4.1662e+00,\n", + " 6.0793e-01, 1.7254e+00, 8.2590e+00, 2.6119e+00, -1.7054e+00,\n", + " 6.1178e+00, -2.9691e+00, -4.0823e+00, 4.7501e-01, 8.9351e-01,\n", + " -1.0580e+00, -1.4648e+00, 2.0005e+00, 4.4008e-01, -1.1741e+01,\n", + " -4.2694e-02, -7.7522e-01, 1.9731e+00, 5.9338e+00, 6.1365e+00,\n", + " -7.7485e+00, 1.3402e+01, 1.2785e+01, -1.6353e+00, -3.6195e+00,\n", + " -1.2166e+00, 3.3741e+00, -1.0241e+01, 6.4584e+00, -1.1245e+00,\n", + " 5.6069e-01, 4.5313e+00, 7.2805e+00, 5.9941e-01, -4.1223e+00,\n", + " 2.3223e-01, -6.0213e+00, 1.2135e+00, -4.0671e+00, -3.0445e+00,\n", + " -4.7401e+00, -5.2669e+00, 8.4796e+00, -5.4145e+00, -4.7753e+00,\n", + " -5.2986e-01, -3.6312e+00, 1.0913e+00, -3.6791e+00, 2.4095e+00,\n", + " 4.3596e-01, -1.4798e+00, -1.4894e+00, 1.8673e-01, 2.4698e-01,\n", + " -2.4453e-01, -3.0582e+00, 2.9348e+00, 2.3117e-01, -2.4103e+00,\n", + " -2.8271e+00, -3.9102e+00, -3.6497e+00, -2.4924e+00, 1.9910e+00,\n", + " -6.5865e+00, -3.6936e+00, -3.4439e-01, -7.0813e-02, 8.2621e-01,\n", + " 1.4598e-01, -6.6775e+00, 3.9390e+00, -8.5732e-02, 4.4681e+00,\n", + " -5.1826e+00, -6.4087e+00, 2.4561e-01, 1.2722e+00, -2.3493e+00,\n", + " 2.2532e+00, 3.5215e+00, -1.1521e+00, -5.0680e+00, 1.1928e+01,\n", + " 2.4243e+00, -4.3520e+00, -8.1776e+00, -1.0246e+00, -6.5926e+00,\n", + " -4.7592e+00, -6.3312e-01, -1.0127e+01, -8.8611e-01, -8.8121e+00,\n", + " 2.8199e-01, 1.7753e+00, -3.0299e+00, -5.9531e+00, 8.6943e-01,\n", + " 3.5751e+00, -1.1387e+01, -2.3700e+00, 4.8945e+00, 1.6143e+00,\n", + " 3.5814e+00, -7.8166e+00, -2.4447e+00, 2.9132e+00, 2.6121e+00,\n", + " 5.3359e+00, 6.1179e+00, -1.4136e+01, 2.7990e-01, 5.0767e+00,\n", + " 3.2156e+00, 2.9253e+00, 7.9484e+00, 2.6591e+00, 8.8704e+00,\n", + " 3.1986e+00, -4.0668e-01, 4.6038e+00, 2.6145e+00, 3.5966e+00,\n", + " 1.0976e+00, -4.4431e+00, -5.4594e+00, -9.8451e-01, 3.2744e+00,\n", + " 5.2823e+00, -7.2685e+00, 3.1512e+00, 2.7413e-01, -2.7417e+00,\n", + " 2.4061e+00, 1.0575e+00, -8.0792e+00, 1.5948e+00, 5.0245e-02,\n", + " -7.0174e+00, -2.5981e+00, 1.7484e+00, 5.5191e+00, 2.9680e+00,\n", + " 6.1405e+00, -1.4361e-01, 3.6003e+00, 5.1398e+00, -3.4543e+00,\n", + " 5.1749e+00, -4.8572e+00, -1.4890e+00, 1.3004e+00, 5.2664e+00,\n", + " -3.8776e+00, -2.9888e+00, -7.6976e-01, 3.3617e+00, 8.8238e+00,\n", + " 5.4425e+00, 6.1032e-01, -2.8261e+00, -4.6408e+00, -2.9985e+00,\n", + " -7.4634e+00, -2.6308e+00, 5.1425e-01, -8.0916e-01, 3.9377e+00,\n", + " -6.8549e+00, -6.0009e+00, -4.6179e-01, 7.0597e-01, -2.6481e+00,\n", + " 1.0844e+00, 1.0792e+01, -1.3607e+00, 1.6815e+00, -5.9647e+00,\n", + " -3.4795e-01, -5.7725e+00, 8.8240e+00, 1.2161e+01, 1.4274e+00,\n", + " 5.6612e+00, -2.3413e+00, -1.8727e+00, 4.8331e+00, -1.7449e+00,\n", + " 9.4813e+00, -4.2424e+00, -4.4759e+00, -3.1925e-01, -1.0234e+00,\n", + " -2.3237e-01, 3.3495e+00, -3.8373e-01, -9.8905e-01, 4.4709e+00,\n", + " 6.2089e-01, 4.7296e+00, -4.6643e-01, -2.9335e+00, -3.2276e-01,\n", + " -8.1376e+00, -3.3459e+00, -9.3769e-02, -1.1267e+01, -4.3118e-01,\n", + " -3.3150e+00, -6.2661e-01, 4.7186e+00, -3.7383e+00, -6.2295e+00,\n", + " 5.6783e+00, 1.5134e+00, 3.3611e+00, 3.0486e+00, 1.1139e+00,\n", + " -2.3641e+00, -2.5694e+00, 4.0144e+00, -7.9107e-01, -4.3788e-01,\n", + " 3.9177e+00, 1.1759e+01, 1.4001e+00, -3.9649e-01, -1.1905e+01,\n", + " -1.9034e+00, -8.7804e+00, 1.0761e+01, 3.0643e+00, 3.6976e+00,\n", + " -2.7494e+00, -2.5087e+00, 9.4577e-01, -2.5091e+00, 5.5027e+00,\n", + " -1.1978e+00, -6.2105e+00, 2.2060e+00, -7.4665e+00, 3.0630e+00,\n", + " -5.2187e+00, -4.4273e+00, -2.1675e+00, 5.1272e+00, 5.5543e+00,\n", + " 3.7251e-01, 6.5773e+00, -9.4365e-01, -4.3358e+00, -4.5703e+00,\n", + " -5.3149e+00, 1.0750e+01, 4.3271e+00, -1.6464e-01, -9.9271e+00,\n", + " 4.0325e+00, 5.2930e+00, 4.1603e-01, -9.8539e+00, 9.0224e-02,\n", + " -4.6029e+00, -6.9055e-01, -8.8508e-01, 8.0016e-02, -5.1926e+00,\n", + " -2.0259e-01, 2.5811e-01, 1.0760e+01, -3.1546e+00, -1.2496e+00,\n", + " 1.0318e+00, -4.8848e+00, -1.1945e+01, 8.8947e-01, -7.6019e+00,\n", + " 9.7675e+00, 7.3018e+00, 7.1488e+00, 1.9355e+00, -3.6839e+00,\n", + " 9.3663e+00, -1.6682e+00, -2.4040e+00, -3.5577e+00, -4.3686e+00,\n", + " -2.9042e+00, 7.6098e+00, -2.9299e+00, 5.0070e+00, -1.1131e+00,\n", + " 2.0663e+00, -1.8503e+00, 2.0247e+00, 2.2851e+00, -4.4661e+00,\n", + " 3.9783e+00, -1.1042e+00, 6.6821e+00, 1.5496e+00, 7.2286e+00,\n", + " 7.1757e+00, 1.5642e+00, -3.8730e+00, -6.7046e+00, 4.8879e+00,\n", + " 6.2288e-01, -1.1968e+00, -6.9655e-01, 9.2160e+00, 8.1812e+00,\n", + " -3.2031e+00, 6.3572e+00, 6.4712e+00, -4.6608e+00, -1.7319e+00,\n", + " -4.2632e+00, -4.7678e+00, 9.9987e+00, 1.4257e+01, 1.6364e+01,\n", + " -1.1067e+01, -1.7239e+00, 5.2205e+00, -5.6597e+00, 4.5558e+00,\n", + " -3.2298e+00, 6.6794e+00, 3.8081e+00, 6.7543e+00, -1.6579e+00,\n", + " -3.5063e+00, -7.2064e-01, -9.8697e-01, 1.8629e+00, -1.6241e+00,\n", + " -3.0487e+00, -3.4707e+00, -3.9215e-01, -4.1220e+00, 1.9885e-01,\n", + " -2.1967e+00, -4.9302e-01, 5.2048e+00, -3.4484e+00, -2.8122e+00,\n", + " -5.5603e+00, -3.5931e-01, 4.3701e+00, -5.1773e+00, -4.5849e-01,\n", + " 3.2636e+00, 4.9086e+00, 8.1466e+00, 5.8811e+00, 7.5002e+00,\n", + " 3.9989e-02, 6.6855e+00, 9.9836e+00, -3.3854e+00, 7.8459e+00,\n", + " -1.6212e-01, -5.1125e+00, 5.8930e+00, 8.9414e+00, -1.2838e+00,\n", + " 9.6739e+00, 1.4556e+00, -4.1944e+00, 6.6870e+00, 6.9083e+00,\n", + " -4.6303e+00, -2.2641e+00, 2.0928e+00, 1.6327e+00, -5.0583e+00,\n", + " 2.3900e+00, -1.3623e+00, 3.1129e+00, -2.0396e+00, 2.0124e+00,\n", + " -2.8472e+00, 6.2345e+00, 5.9359e-01, -4.3222e+00, -8.0300e+00,\n", + " 1.0396e+01, 2.1617e+00, 3.4943e+00, 3.0572e+00, -3.5476e+00,\n", + " 5.3472e+00, 2.4073e+00, 5.9503e-01, 5.2738e-01, -3.0144e+00,\n", + " -5.1299e+00, 2.1250e+00, 1.3509e+00, -2.8952e-01, -6.6030e+00,\n", + " -3.6746e+00, -3.7765e+00, -3.2359e+00, 1.3805e+00, -2.2590e+00,\n", + " -1.5889e+00, 4.8569e+00, 1.0156e+00, 3.9435e+00, -2.0284e+00,\n", + " -1.0859e+01, -2.6059e+00, -6.2794e+00, 8.0509e-01, 2.3528e+00,\n", + " -1.6507e+00, 1.1961e+00, 9.9826e+00, 4.8255e+00, -5.6086e+00,\n", + " -6.5066e+00, -7.2207e+00, 6.8090e+00, 3.7589e-01, -6.0209e+00,\n", + " -8.2463e-01, -7.4694e-01, 8.1887e+00, -2.9548e+00, -1.1866e+00,\n", + " -3.5102e+00, -4.6932e+00, 7.2601e+00, 2.2765e+00, 9.4055e+00,\n", + " 2.7460e+00, 1.4907e+00, 4.7538e-01, 2.9329e+00, 1.2719e+00,\n", + " -2.7927e+00, -1.2591e+00, -1.7836e+00, 2.8065e+00, 5.3934e-01,\n", + " 1.3045e+00, 1.2268e+00, -5.6013e+00, 3.1139e+00, 3.8369e+00,\n", + " 3.3059e-01, 2.2407e+00, 1.2366e+00, -6.2229e+00, -3.7157e+00,\n", + " 6.4204e+00, 1.0573e+01, -3.9952e-01, 1.4235e+01, -1.0884e+01,\n", + " -2.9518e+00, 1.1950e+00, 1.0031e+00, 2.0499e+00, 1.6345e+00,\n", + " -3.8371e+00, -2.6782e+00, 1.9266e+00, -3.5774e+00, -7.1045e+00,\n", + " -7.6499e-01, -1.9117e+00, -1.0165e+01, -7.5704e-01, -4.4083e-01,\n", + " -2.7491e-01, -1.7376e+00, -7.6327e+00, -4.6055e+00, 5.0006e+00,\n", + " 5.3006e+00, -2.9642e-01, 6.4890e+00, 8.0494e-01, -7.4606e-01,\n", + " 5.7291e+00, 1.4712e+00, 1.0860e-01, -7.0036e-01, -2.1391e+00,\n", + " -2.0974e+00, 3.6578e+00, -2.5981e+00, 7.4232e+00, -3.8255e+00,\n", + " 3.1794e+00, 4.3983e-01, 5.2267e+00, -3.5482e+00, 9.6503e+00,\n", + " 1.6477e-01, -6.9726e+00, 6.3025e+00, -9.1959e+00, 8.4988e+00,\n", + " -2.7036e+00, 5.2478e+00, 1.0211e+01, -2.6642e-01, 3.9743e+00,\n", + " -1.0607e+01, 1.4849e+01, -4.1829e-01, 3.5922e+00, -1.2574e+00,\n", + " -8.8174e-01, -4.4337e-01, 1.6383e+00, -4.3945e+00, 3.5651e-01,\n", + " -1.9686e+00, 2.1606e-02, 4.2785e+00, -1.2995e+00, 8.8444e-01,\n", + " 4.1780e+00, -1.0253e+01, -6.7567e+00, -5.7410e+00, 3.1234e+00,\n", + " -4.5726e+00, -1.7247e+00, 9.8022e+00, 5.5747e+00, 4.9975e+00,\n", + " 3.2196e+00, -3.8409e+00, 4.8316e+00, -6.6928e+00, -4.7451e+00,\n", + " 1.9149e+00, 2.1189e+00, 7.8778e+00, -3.7329e-02, 1.4081e+00,\n", + " -1.3638e+00, -8.6539e+00, 1.6721e-01, -9.8377e+00, -2.7099e+00,\n", + " -2.7666e-01, -5.0738e-02, -3.5834e+00, 5.4019e+00, -8.2766e+00,\n", + " -3.6412e+00, 3.1811e+00, 1.5183e-01, -9.9372e-01, 3.6720e+00,\n", + " -4.4105e-01, -1.4014e+00, 7.7510e+00, 5.7498e+00, 3.5791e+00,\n", + " -5.4780e-01, -3.8520e+00, -2.1077e+00, 6.4482e+00, 1.0814e+00,\n", + " -7.5035e-01, 4.4298e+00, -8.8133e+00, -2.7812e+00, -5.7001e-01,\n", + " -2.6631e+00, -3.3242e+00, 1.3150e+00, -2.7915e+00, 1.7820e+00,\n", + " 4.7887e-01, 1.1222e+00, -6.1201e+00, 1.3118e+01, 9.0041e+00,\n", + " 4.9772e+00, -7.0921e+00, 2.8077e-01, 3.6044e+00, 1.8358e+00,\n", + " -2.2833e+00, -6.1981e+00, 1.5658e+01, 3.6380e+00, 1.1059e+00,\n", + " -1.2764e-01, 6.4083e-01, -1.8858e+00, 2.6034e+00, -3.1585e+00,\n", + " -1.9641e+00, 4.2007e+00, 6.5796e-02, -6.1856e-01, -2.3976e+00,\n", + " -8.2248e-01, 2.6342e+00, 1.0856e+00, 3.1940e+00, -7.0448e+00,\n", + " 1.8103e+00, 5.3263e+00, 9.3208e+00, 6.1828e+00, 4.8899e+00,\n", + " -3.5434e+00, 3.8317e+00, 8.1334e-01, 1.4348e+00, -5.5027e+00,\n", + " 5.6279e+00, -1.4003e+01, 1.5963e+00, -3.8147e+00, 3.2877e+00,\n", + " -2.3182e+00, -1.9225e+00, 4.8933e+00, 1.3743e+00, 7.1876e+00,\n", + " 1.7507e+00, -1.3171e+01, -1.0366e+00, 6.4689e+00, 4.3425e+00,\n", + " 3.5808e+00, -5.5930e+00, -3.2690e-01, 5.2676e+00, 2.4258e+00],\n", + " device='cuda:0')\n" + ] + }, + { + "ename": "TypeError", + "evalue": "topk() got multiple values for argument 'k'", + "output_type": "error", + "traceback": [ + "\u001b[31m---------------------------------------------------------------------------\u001b[39m", + "\u001b[31mTypeError\u001b[39m Traceback (most recent call last)", + "\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[18]\u001b[39m\u001b[32m, line 33\u001b[39m\n\u001b[32m 31\u001b[39m top_k = \u001b[32m3\u001b[39m\n\u001b[32m 32\u001b[39m \u001b[38;5;28mprint\u001b[39m(similarities)\n\u001b[32m---> \u001b[39m\u001b[32m33\u001b[39m top_similarities, top_indices = \u001b[43mtorch\u001b[49m\u001b[43m.\u001b[49m\u001b[43mtopk\u001b[49m\u001b[43m(\u001b[49m\u001b[43msimilarities\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mtop_k\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mk\u001b[49m\u001b[43m=\u001b[49m\u001b[32;43m1\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[32m 35\u001b[39m \u001b[38;5;28;01mfor\u001b[39;00m pos \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mrange\u001b[39m(\u001b[38;5;28mmin\u001b[39m(\u001b[32m5\u001b[39m, seq_embeds.shape[\u001b[32m0\u001b[39m])): \u001b[38;5;66;03m# Show first 5 positions\u001b[39;00m\n\u001b[32m 36\u001b[39m \u001b[38;5;28mprint\u001b[39m(\u001b[33mf\u001b[39m\u001b[33m\"\u001b[39m\u001b[38;5;130;01m\\n\u001b[39;00m\u001b[33mPosition \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mpos\u001b[38;5;132;01m}\u001b[39;00m\u001b[33m:\u001b[39m\u001b[33m\"\u001b[39m)\n", + "\u001b[31mTypeError\u001b[39m: topk() got multiple values for argument 'k'" + ] + } + ], + "source": [ + "# Generate new sequences by sampling from latent space\n", + "ts_model.eval()\n", + "with torch.no_grad():\n", + " # Sample random latent vectors\n", + " latent_samples = torch.randn(3, ts_model.hidden_dim).to(ts_model.device)\n", + " \n", + " # Decode to get sequence representations\n", + " generated_sequences = ts_model.decoder(latent_samples)\n", + " \n", + " print(\"Generated sequence representations:\")\n", + " print(f\"Shape: {generated_sequences.shape}\")\n", + " print(f\"Sample values: {generated_sequences[0, :5].cpu().numpy()}\")\n", + " \n", + " # Convert embeddings to human-understandable medical codes\n", + " # Find closest codes in embedding space\n", + " \n", + " # Get all code embeddings from the embedding model\n", + " conditions_vocab = list(ts_dataset.input_processors['conditions'].code_vocab.keys())\n", + " all_codes = conditions_vocab # Use conditions vocabulary\n", + " code_embeddings = ts_model.embedding_model.embedding_layers['conditions'].weight.data # [vocab_size, embed_dim]\n", + " \n", + " print(f\"\\nConverting to medical codes for generated sequence 0:\")\n", + " \n", + " # The generated sequence is a single embedding vector, not a sequence\n", + " seq_embed = generated_sequences[0] # [embed_dim]\n", + " \n", + " # Compute cosine similarity with all code embeddings\n", + " similarities = torch.matmul(seq_embed, code_embeddings.t()) # [vocab_size]\n", + " \n", + " # Get top 3 most similar codes\n", + " top_k = 3\n", + " top_similarities, top_indices = torch.topk(similarities, top_k, dim=0)\n", + " \n", + " codes = [all_codes[idx] for idx in top_indices.cpu().numpy()]\n", + " sims = top_similarities.cpu().numpy()\n", + " print(f\"Top {top_k} similar medical codes: {codes}\")\n", + " print(f\"Similarities: {sims}\")\n", + " \n", + " print(\"\\nNote: These represent the most likely medical codes for the generated sequence.\")\n", + " print(\"In practice, you might use beam search or other decoding strategies for better results.\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Key Insights\n", + "\n", + "### How Time-Series VAE Works:\n", + "1. **Input Processing**: Categorical sequences (diagnoses, procedures) are embedded using the EmbeddingModel\n", + "2. **Sequence Encoding**: RNN processes the embedded sequence to capture temporal patterns\n", + "3. **Latent Compression**: Variable-length sequences become fixed-size latent vectors\n", + "4. **Reconstruction**: Decoder attempts to recreate the embedded sequence representation\n", + "5. **Code Generation**: Generated embeddings are mapped back to medical codes using nearest neighbor search\n", + "\n", + "### Medical Applications:\n", + "- **Trajectory Analysis**: Understand typical patient progression patterns from real MIMIC4 data\n", + "- **Synthetic Data**: Generate realistic patient histories for research and model training\n", + "- **Anomaly Detection**: Identify unusual treatment sequences in clinical practice\n", + "- **Outcome Prediction**: Learn sequence patterns that correlate with mortality and other outcomes\n", + "- **Data Augmentation**: Create additional training samples for underrepresented conditions\n", + "\n", + "### Key Improvements in This Version:\n", + "- **Real Data**: Uses MIMIC4 demo dataset instead of synthetic data for more realistic modeling\n", + "- **Multiple Sequences**: Models both diagnoses and procedures simultaneously\n", + "- **Human-Readable Output**: Converts generated embeddings back to interpretable medical codes\n", + "- **Clinical Relevance**: Focuses on in-hospital mortality prediction task\n", + "\n", + "### Differences from Image VAE:\n", + "- **Temporal vs Spatial**: Captures time-ordered dependencies instead of spatial patterns\n", + "- **Variable Length**: Handles sequences of different lengths\n", + "- **Categorical Data**: Works with medical codes, diagnoses, treatments\n", + "- **Generation**: Creates new realistic patient trajectories with interpretable medical codes" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "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.12.3" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/pyhealth/datasets/base_dataset.py b/pyhealth/datasets/base_dataset.py index 3390453ff..a7c0cb5c7 100644 --- a/pyhealth/datasets/base_dataset.py +++ b/pyhealth/datasets/base_dataset.py @@ -126,7 +126,7 @@ def __init__( if len(set(tables)) != len(tables): logger.warning("Duplicate table names in tables list. Removing duplicates.") tables = list(set(tables)) - self.root = root + self.root = os.path.expanduser(root) self.tables = tables self.dataset_name = dataset_name or self.__class__.__name__ self.config = load_yaml_config(config_path) diff --git a/pyhealth/datasets/covid19_cxr.py b/pyhealth/datasets/covid19_cxr.py index 42f5671b5..bba2cdf3f 100644 --- a/pyhealth/datasets/covid19_cxr.py +++ b/pyhealth/datasets/covid19_cxr.py @@ -92,6 +92,14 @@ def __init__( if config_path is None: logger.info("No config path provided, using default config") config_path = Path(__file__).parent / "configs" / "covid19_cxr.yaml" + root = os.path.expanduser(root) + if not self._check_raw_data_exists(root): + raise ValueError( + f"Raw COVID-19 CXR dataset files not found in {root}. " + "Please download the dataset from " + "https://www.kaggle.com/api/v1/datasets/download/tawsifurrahman/covid19-radiography-database " + "and extract the contents to the specified root directory." + ) if not os.path.exists(os.path.join(root, "covid19_cxr-metadata-pyhealth.csv")): self.prepare_metadata(root) default_tables = ["covid19_cxr"] @@ -149,6 +157,40 @@ def prepare_metadata(self, root: str) -> None: df.to_csv(os.path.join(root, "covid19_cxr-metadata-pyhealth.csv"), index=False) return + def _check_raw_data_exists(self, root: str) -> bool: + """Check if required raw data files exist. + + Args: + root: Root directory containing the dataset files. + + Returns: + bool: True if all required files exist, False otherwise. + """ + required_files = [ + "COVID.metadata.xlsx", + "Lung_Opacity.metadata.xlsx", + "Normal.metadata.xlsx", + "Viral Pneumonia.metadata.xlsx", + ] + return all(os.path.exists(os.path.join(root, f)) for f in required_files) + + def _check_raw_data_exists(self, root: str) -> bool: + """Check if required raw data files exist. + + Args: + root: Root directory containing the dataset files. + + Returns: + bool: True if all required files exist, False otherwise. + """ + required_files = [ + "COVID.metadata.xlsx", + "Lung_Opacity.metadata.xlsx", + "Normal.metadata.xlsx", + "Viral Pneumonia.metadata.xlsx", + ] + return all(os.path.exists(os.path.join(root, f)) for f in required_files) + def set_task( self, task: BaseTask | None = None, diff --git a/pyhealth/models/vae.py b/pyhealth/models/vae.py index e46c395e1..7078ec5d1 100644 --- a/pyhealth/models/vae.py +++ b/pyhealth/models/vae.py @@ -8,16 +8,16 @@ import torch.nn.functional as F from pyhealth.datasets import BaseSignalDataset -from pyhealth.models import BaseModel, ResBlock2D +from pyhealth.models import BaseModel, ResBlock2D, EmbeddingModel class VAE(BaseModel): - """VAE model (take 128x128 or 64x64 or 32x32 images) + """VAE model for images or time-series data. Kingma, Diederik P., and Max Welling. "Auto-encoding variational bayes." - Note: - We use CNN models as the encoder and decoder layers for now. + Supports both image generation/reconstruction and time-series modeling. + Images mode take 128x128 or 64x64 or 32x32 images. Args: dataset: the dataset to train the model. It is used to query certain @@ -26,129 +26,245 @@ class VAE(BaseModel): e.g. ["conditions", "procedures"]. label_key: key in samples to use as label (e.g., "drugs"). mode: one of "binary", "multiclass", or "multilabel". - embedding_dim: the embedding dimension. Default is 128. - hidden_dim: the hidden dimension. Default is 128. - **kwargs: other parameters for the Deepr layer. - - Examples: + input_type: 'image' for CNN-based VAE on images, 'timeseries' for RNN-based on sequences. Default 'image'. + input_channel: number of input channels (for images). Required if input_type='image'. + input_size: input image size (for images, e.g. 128). Required if input_type='image'. + hidden_dim: the latent dimension. Default is 128. + conditional_feature_keys: list of feature keys to use as conditions for generation (optional). + **kwargs: other parameters. """ def __init__( self, - dataset: BaseSignalDataset, + dataset, feature_keys: List[str], label_key: str, - input_channel: int, - input_size: int, mode: str, + input_type: str = "image", + input_channel: Optional[int] = None, + input_size: Optional[int] = None, hidden_dim: int = 128, + conditional_feature_keys: Optional[List[str]] = None, **kwargs, ): - super(VAE, self).__init__( - dataset=dataset, - feature_keys=feature_keys, - label_key=label_key, - mode=mode, - ) + super(VAE, self).__init__(dataset=dataset) + self.input_type = input_type self.hidden_dim = hidden_dim + self.conditional_feature_keys = conditional_feature_keys + self.mode = mode + self.feature_keys = feature_keys + self.label_key = label_key - # encoder part - if input_size == 128: - self.encoder1 = nn.Sequential( - ResBlock2D(input_channel, 16, 2, True, True), - ResBlock2D(16, 64, 2, True, True), - ResBlock2D(64, 256, 2, True, True), - ) - self.mu = nn.Linear(256 * 2 * 2, self.hidden_dim) # for mu - self.log_std2 = nn.Linear(256 * 2 * 2, self.hidden_dim) # for log (sigma^2) - - self.decoder1 = nn.Sequential( - nn.ConvTranspose2d(self.hidden_dim, 256, kernel_size=5, stride=2), - nn.ReLU(), - nn.ConvTranspose2d(256, 128, kernel_size=5, stride=2), - nn.ReLU(), - nn.ConvTranspose2d(128, 64, kernel_size=5, stride=2), - nn.ReLU(), - nn.ConvTranspose2d(64, 32, kernel_size=6, stride=2), - nn.ReLU(), - nn.ConvTranspose2d(32, input_channel, kernel_size=6, stride=2), - nn.Sigmoid(), - ) - - elif input_size == 64: - self.encoder1 = nn.Sequential( - ResBlock2D(input_channel, 16, 2, True, True), - ResBlock2D(16, 64, 2, True, True), - ResBlock2D(64, 256, 2, True, True), - ) - self.mu = nn.Linear(256, self.hidden_dim) # for mu - self.log_std2 = nn.Linear(256, self.hidden_dim) # for log (sigma^2) - - self.decoder1 = nn.Sequential( - nn.ConvTranspose2d(self.hidden_dim, 128, kernel_size=5, stride=2), - nn.ReLU(), - nn.ConvTranspose2d(128, 64, kernel_size=5, stride=2), - nn.ReLU(), - nn.ConvTranspose2d(64, 32, kernel_size=6, stride=2), - nn.ReLU(), - nn.ConvTranspose2d(32, input_channel, kernel_size=6, stride=2), - nn.Sigmoid(), - ) - - elif input_size == 32: - self.encoder1 = nn.Sequential( - ResBlock2D(input_channel, 16, 2, True, True), - ResBlock2D(16, 64, 2, True, True), - # ResBlock2D(64, 256, 2, True, True), - ) - self.mu = nn.Linear(64 * 2 * 2, self.hidden_dim) # for mu - self.log_std2 = nn.Linear(64 * 2 * 2, self.hidden_dim) # for log (sigma^2) - - self.decoder1 = nn.Sequential( - nn.ConvTranspose2d(self.hidden_dim, 64, kernel_size=5, stride=2), - nn.ReLU(), - nn.ConvTranspose2d(64, 32, kernel_size=6, stride=2), - nn.ReLU(), - nn.ConvTranspose2d(32, input_channel, kernel_size=6, stride=2), - nn.Sigmoid(), - ) - + # These will be lazily initialized when we see actual tensor sizes + self.cond_proj: Optional[nn.Linear] = None # for conditional metadata → latent + self.ts_proj: Optional[nn.Linear] = None # for timeseries concatenated features → hidden_dim + + if input_type == "image": + assert input_channel is not None and input_size is not None, \ + "For image mode, input_channel and input_size must be provided" + + # Embedding model for conditional features only (if used) + if conditional_feature_keys: + self.embedding_model = EmbeddingModel(dataset, embedding_dim=hidden_dim) + + # ----- Encoder ----- + if input_size == 128: + self.encoder1 = nn.Sequential( + ResBlock2D(input_channel, 16, 2, True, True), + ResBlock2D(16, 64, 2, True, True), + ResBlock2D(64, 256, 2, True, True), + ) + self.mu = nn.Linear(256 * 2 * 2, self.hidden_dim) + self.log_std2 = nn.Linear(256 * 2 * 2, self.hidden_dim) + + self.decoder1 = nn.Sequential( + nn.ConvTranspose2d(self.hidden_dim, 256, kernel_size=5, stride=2), + nn.ReLU(), + nn.ConvTranspose2d(256, 128, kernel_size=5, stride=2), + nn.ReLU(), + nn.ConvTranspose2d(128, 64, kernel_size=5, stride=2), + nn.ReLU(), + nn.ConvTranspose2d(64, 32, kernel_size=6, stride=2), + nn.ReLU(), + nn.ConvTranspose2d(32, input_channel, kernel_size=6, stride=2), + nn.Sigmoid(), + ) + + elif input_size == 64: + self.encoder1 = nn.Sequential( + ResBlock2D(input_channel, 16, 2, True, True), + ResBlock2D(16, 64, 2, True, True), + ResBlock2D(64, 256, 2, True, True), + ) + self.mu = nn.Linear(256, self.hidden_dim) + self.log_std2 = nn.Linear(256, self.hidden_dim) + + self.decoder1 = nn.Sequential( + nn.ConvTranspose2d(self.hidden_dim, 128, kernel_size=5, stride=2), + nn.ReLU(), + nn.ConvTranspose2d(128, 64, kernel_size=5, stride=2), + nn.ReLU(), + nn.ConvTranspose2d(64, 32, kernel_size=6, stride=2), + nn.ReLU(), + nn.ConvTranspose2d(32, input_channel, kernel_size=6, stride=2), + nn.Sigmoid(), + ) + + elif input_size == 32: + self.encoder1 = nn.Sequential( + ResBlock2D(input_channel, 16, 2, True, True), + ResBlock2D(16, 64, 2, True, True), + # ResBlock2D(64, 256, 2, True, True), + ) + self.mu = nn.Linear(64 * 2 * 2, self.hidden_dim) + self.log_std2 = nn.Linear(64 * 2 * 2, self.hidden_dim) + + self.decoder1 = nn.Sequential( + nn.ConvTranspose2d(self.hidden_dim, 64, kernel_size=5, stride=2), + nn.ReLU(), + nn.ConvTranspose2d(64, 32, kernel_size=6, stride=2), + nn.ReLU(), + nn.ConvTranspose2d(32, input_channel, kernel_size=6, stride=2), + nn.Sigmoid(), + ) + else: + raise ValueError("Unsupported input_size for image mode") + + elif input_type == "timeseries": + # Embedding model for sequence features + self.embedding_model = EmbeddingModel(dataset, embedding_dim=hidden_dim) + self.encoder_rnn = nn.GRU(hidden_dim, hidden_dim, batch_first=True) + self.mu = nn.Linear(hidden_dim, hidden_dim) + self.log_std2 = nn.Linear(hidden_dim, hidden_dim) + self.decoder_linear = nn.Linear(hidden_dim, hidden_dim) + else: + raise ValueError("input_type must be 'image' or 'timeseries'") + + # ------------------------------------------------------------- + # ENCODER + # ------------------------------------------------------------- def encoder(self, x) -> Tuple[torch.Tensor, torch.Tensor]: - h = self.encoder1(x) - batch_size = h.shape[0] - h = h.view(batch_size, -1) - return self.mu(h), torch.sqrt(torch.exp(self.log_std2(h))) - - def sampling(self, mu, std) -> torch.Tensor: # reparameterization trick + if self.input_type == "image": + h = self.encoder1(x) + batch_size = h.shape[0] + h = h.view(batch_size, -1) + mu = self.mu(h) + std = torch.sqrt(torch.exp(self.log_std2(h))) + + elif self.input_type == "timeseries": + # x is dict of embedded features from embedding_model + embedded_list = [] + for key, emb in x.items(): + if emb.dim() == 3: # (batch, seq, emb) + _, h_seq = self.encoder_rnn(emb) # h_seq: (1, batch, hidden_dim) + h = h_seq.squeeze(0) # (batch, hidden_dim) + else: + h = emb # (batch, emb_dim) + embedded_list.append(h) + + h = torch.cat(embedded_list, dim=-1) if len(embedded_list) > 1 else embedded_list[0] + + # Project to hidden_dim once, with a learnable layer + if h.shape[-1] != self.hidden_dim: + if self.ts_proj is None: + self.ts_proj = nn.Linear(h.shape[-1], self.hidden_dim).to(h.device) + h = self.ts_proj(h) + + mu = self.mu(h) + std = torch.sqrt(torch.exp(self.log_std2(h))) + + return mu, std + + # ------------------------------------------------------------- + # SAMPLING + # ------------------------------------------------------------- + def sampling(self, mu, std) -> torch.Tensor: eps = torch.randn_like(std) return mu + eps * std + # ------------------------------------------------------------- + # DECODER + # ------------------------------------------------------------- def decoder(self, z) -> torch.Tensor: - x_hat = self.decoder1(z) + if self.input_type == "image": + x_hat = self.decoder1(z) + elif self.input_type == "timeseries": + x_hat = self.decoder_linear(z) # (batch, hidden_dim) return x_hat - - @staticmethod - def loss_function(y, x, mu, std): - ERR = F.binary_cross_entropy(y, x, reduction='sum') - KLD = -0.5 * torch.sum(1 + torch.log(std**2) - mu**2 - std**2) + + # ------------------------------------------------------------- + # LOSS + # ------------------------------------------------------------- + def loss_function(self, y, x, mu, std): + if self.input_type == "image": + ERR = F.binary_cross_entropy(y, x, reduction='sum') + elif self.input_type == "timeseries": + ERR = F.mse_loss(y, x, reduction='sum') + + # KL divergence term + KLD = -0.5 * torch.sum(1 + torch.log(std ** 2) - mu ** 2 - std ** 2) return ERR + KLD - + + # ------------------------------------------------------------- + # FORWARD + # ------------------------------------------------------------- def forward(self, **kwargs) -> Dict[str, torch.Tensor]: - - # concat the info within one batch (batch, channel, height, width) - # if the input is a list of numpy array, we need to convert it to tensor - if isinstance(kwargs[self.feature_keys[0]][0], np.ndarray): - x = torch.tensor( - np.array(kwargs[self.feature_keys[0]]).astype("float16"), device=self.device - ).float() - else: - x = torch.stack(kwargs[self.feature_keys[0]], dim=0).to(self.device) - - mu, std = self.encoder(x) - z = self.sampling(mu, std) - z = z.unsqueeze(2).unsqueeze(3) - x_rec = self.decoder(z) - + + if self.input_type == "image": + # x: image tensor + x = kwargs[self.feature_keys[0]].to(self.device) # (batch, C, H, W) + + mu, std = self.encoder(x) + z = self.sampling(mu, std) # (batch, hidden_dim) + + # Conditional embeddings (if any) + if self.conditional_feature_keys: + cond_raw = {k: kwargs[k] for k in self.conditional_feature_keys} + cond_emb = self.embedding_model(cond_raw) # dict: key -> tensor + + # Pool temporal dims if needed and concat + cond_list = [ + emb.mean(dim=1) if emb.dim() == 3 else emb + for emb in cond_emb.values() + ] + cond_vec = torch.cat(cond_list, dim=-1) if len(cond_list) > 1 else cond_list[0] + + # Project cond_vec to latent dim with a learnable layer + if cond_vec.shape[-1] != self.hidden_dim: + if self.cond_proj is None: + self.cond_proj = nn.Linear(cond_vec.shape[-1], self.hidden_dim).to(cond_vec.device) + cond_vec = self.cond_proj(cond_vec) + + # Simple conditioning: shift latent by conditional vector + z = z + cond_vec + + # Prepare for ConvTranspose decoder + z = z.unsqueeze(2).unsqueeze(3) # (batch, hidden_dim, 1, 1) + x_rec = self.decoder(z) + + elif self.input_type == "timeseries": + # Embed all feature_keys first + embedded = self.embedding_model({k: kwargs[k] for k in self.feature_keys}) + mu, std = self.encoder(embedded) + z = self.sampling(mu, std) + x_rec = self.decoder(z) + + # For reconstruction target x: re-aggregate exactly as in encoder + embedded_list = [] + for key, emb in embedded.items(): + if emb.dim() == 3: # (batch, seq, emb) + _, h_seq = self.encoder_rnn(emb) + h = h_seq.squeeze(0) # (batch, hidden_dim) + else: + h = emb + embedded_list.append(h) + + x = torch.cat(embedded_list, dim=-1) if len(embedded_list) > 1 else embedded_list[0] + if x.shape[-1] != self.hidden_dim: + if self.ts_proj is None: + self.ts_proj = nn.Linear(x.shape[-1], self.hidden_dim).to(x.device) + x = self.ts_proj(x) + loss = self.loss_function(x_rec, x, mu, std) results = { "loss": loss, @@ -158,6 +274,7 @@ def forward(self, **kwargs) -> Dict[str, torch.Tensor]: return results + if __name__ == "__main__": from pyhealth.datasets import SampleSignalDataset, get_dataloader from pyhealth.datasets import COVID19CXRDataset @@ -188,12 +305,13 @@ def encode(sample): # model model = VAE( dataset=sample_dataset, - input_channel=3, - input_size=128, feature_keys=["path"], label_key="path", mode="regression", - hidden_dim = 256, + input_type="image", + input_channel=3, + input_size=128, + hidden_dim=256, ).to("cuda") # data batch diff --git a/pyproject.toml b/pyproject.toml index ceedcdd0b..339c71429 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -39,6 +39,7 @@ dependencies = [ "pandas~=2.3.1", "pandarallel~=1.6.5", "pydantic~=2.11.7", + "openpyxl~=3.1.0" ] license = "BSD-3-Clause" license-files = ["LICENSE.md"] diff --git a/tests/core/test_covid19_cxr.py b/tests/core/test_covid19_cxr.py new file mode 100644 index 000000000..2d2b079cf --- /dev/null +++ b/tests/core/test_covid19_cxr.py @@ -0,0 +1,88 @@ +""" +Unit tests for the COVID19CXRDataset class. + +The tests simply check that the dataset initialization works as expected, +creating mock files and ensuring COVID19CXRDataset behaves correctly when +raw data files are present or absent. + +Author: + Giovanni M. Dall'Olio +""" +import os +import shutil +import tempfile +import unittest +from unittest.mock import patch + +from pyhealth.datasets import COVID19CXRDataset + + +class TestCOVID19CXRDataset(unittest.TestCase): + def setUp(self): + self.temp_dir = tempfile.mkdtemp() + + def tearDown(self): + shutil.rmtree(self.temp_dir) + + def test_check_raw_data_exists_returns_false_when_files_missing(self): + """Test _check_raw_data_exists returns False when required files are missing.""" + dataset = COVID19CXRDataset.__new__(COVID19CXRDataset) # Create without __init__ + result = dataset._check_raw_data_exists(self.temp_dir) + self.assertFalse(result) + + def test_check_raw_data_exists_returns_true_when_files_present(self): + """Test _check_raw_data_exists returns True when all required files are present.""" + # Create dummy files + required_files = [ + "COVID.metadata.xlsx", + "Lung_Opacity.metadata.xlsx", + "Normal.metadata.xlsx", + "Viral Pneumonia.metadata.xlsx", + ] + for filename in required_files: + with open(os.path.join(self.temp_dir, filename), 'w') as f: + f.write("dummy content") + + dataset = COVID19CXRDataset.__new__(COVID19CXRDataset) + result = dataset._check_raw_data_exists(self.temp_dir) + self.assertTrue(result) + + def test_init_raises_value_error_when_raw_data_missing(self): + """Test that __init__ raises ValueError with correct message when raw data is missing.""" + with self.assertRaises(ValueError) as context: + COVID19CXRDataset(root=self.temp_dir) + + expected_message = ( + f"Raw COVID-19 CXR dataset files not found in {self.temp_dir}. " + "Please download the dataset from " + "https://www.kaggle.com/api/v1/datasets/download/tawsifurrahman/covid19-radiography-database " + "and extract the contents to the specified root directory." + ) + self.assertEqual(str(context.exception), expected_message) + + @patch('pyhealth.datasets.covid19_cxr.COVID19CXRDataset._check_raw_data_exists') + @patch('pyhealth.datasets.base_dataset.BaseDataset.__init__') + def test_init_works_when_raw_data_present(self, mock_base_init, mock_check): + """Test that __init__ works when raw data is present.""" + mock_check.return_value = True + + # Mock the metadata file as existing + metadata_path = os.path.join(self.temp_dir, "covid19_cxr-metadata-pyhealth.csv") + with open(metadata_path, 'w') as f: + f.write("""path,url,label +/home/ubuntu/Downloads/COVID-19_Radiography_Dataset//COVID/images/COVID-1.png,https://sirm.org/category/senza-categoria/covid-19/,COVID +/home/ubuntu/Downloads/COVID-19_Radiography_Dataset//COVID/images/COVID-2.png,https://sirm.org/category/senza-categoria/covid-19/,COVID +/home/ubuntu/Downloads/COVID-19_Radiography_Dataset//COVID/images/COVID-3.png,https://sirm.org/category/senza-categoria/covid-19/,COVID +/home/ubuntu/Downloads/COVID-19_Radiography_Dataset//COVID/images/COVID-167.png,https://github.com/ml-workgroup/covid-19-image-repository/tree/master/png,COVID +/home/ubuntu/Downloads/COVID-19_Radiography_Dataset//COVID/images/COVID-336.png,https://eurorad.org,COVID +/home/ubuntu/Downloads/COVID-19_Radiography_Dataset//COVID/images/COVID-967.png,https://github.com/ieee8023/covid-chestxray-dataset,COVID""" + ) + + dataset = COVID19CXRDataset(root=self.temp_dir) + + # Check that BaseDataset.__init__ was called + mock_base_init.assert_called_once() + + +if __name__ == "__main__": + unittest.main() \ No newline at end of file diff --git a/tests/core/test_vae.py b/tests/core/test_vae.py new file mode 100644 index 000000000..294886a32 --- /dev/null +++ b/tests/core/test_vae.py @@ -0,0 +1,235 @@ +import unittest +import torch +import os + +from pyhealth.datasets import SampleDataset, get_dataloader +from pyhealth.models import VAE + + +class TestVAE(unittest.TestCase): + """Test cases for the VAE model.""" + + def test_model_initialization_image(self): + """Test VAE initialization for image mode.""" + samples = [ + { + "patient_id": "patient-0", + "visit_id": "visit-0", + "image": torch.randn(1, 128, 128), + "label": 1, + }, + { + "patient_id": "patient-1", + "visit_id": "visit-1", + "image": torch.randn(1, 128, 128), + "label": 0, + }, + ] + + input_schema = {"image": "tensor"} + output_schema = {"label": "binary"} + + dataset = SampleDataset( + samples=samples, + input_schema=input_schema, + output_schema=output_schema, + dataset_name="test_image", + ) + + model = VAE( + dataset=dataset, + feature_keys=["image"], + label_key="label", + mode="binary", + input_type="image", + input_channel=1, # assuming grayscale + input_size=128, # use 128 + hidden_dim=64, + ) + + self.assertIsInstance(model, VAE) + self.assertEqual(model.input_type, "image") + self.assertEqual(model.hidden_dim, 64) + + def test_model_forward_image(self): + """Test VAE forward pass for image mode.""" + samples = [ + { + "patient_id": "patient-0", + "visit_id": "visit-0", + "image": torch.rand(1, 128, 128), # dummy image 0-1 + "label": 1, + }, + { + "patient_id": "patient-1", + "visit_id": "visit-1", + "image": torch.rand(1, 128, 128), + "label": 0, + }, + ] + + input_schema = {"image": "tensor"} + output_schema = {"label": "binary"} + + dataset = SampleDataset( + samples=samples, + input_schema=input_schema, + output_schema=output_schema, + dataset_name="test_image", + ) + + model = VAE( + dataset=dataset, + feature_keys=["image"], + label_key="label", + mode="binary", + input_type="image", + input_channel=1, + input_size=128, + hidden_dim=64, + ) + + train_loader = get_dataloader(dataset, batch_size=1, shuffle=False) + data_batch = next(iter(train_loader)) + + with torch.no_grad(): + ret = model(**data_batch) + + self.assertIn("loss", ret) + self.assertIn("y_prob", ret) + self.assertIn("y_true", ret) + + def test_model_initialization_timeseries(self): + """Test VAE initialization for timeseries mode.""" + samples = [ + { + "patient_id": "patient-0", + "visit_id": "visit-0", + "conditions": ["cond-33", "cond-86"], + "label": 1.0, # dummy + }, + { + "patient_id": "patient-1", + "visit_id": "visit-1", + "conditions": ["cond-33"], + "label": 0.5, + }, + ] + + input_schema = {"conditions": "sequence"} + output_schema = {"label": "regression"} + + dataset = SampleDataset( + samples=samples, + input_schema=input_schema, + output_schema=output_schema, + dataset_name="test_ts", + ) + + model = VAE( + dataset=dataset, + feature_keys=["conditions"], + label_key="label", + mode="regression", + input_type="timeseries", + hidden_dim=64, + ) + + self.assertIsInstance(model, VAE) + self.assertEqual(model.input_type, "timeseries") + self.assertTrue(hasattr(model, "embedding_model")) + + def test_model_forward_timeseries(self): + """Test VAE forward pass for timeseries mode.""" + samples = [ + { + "patient_id": "patient-0", + "visit_id": "visit-0", + "conditions": ["cond-33", "cond-86"], + "label": 1.0, + }, + ] + + input_schema = {"conditions": "sequence"} + output_schema = {"label": "regression"} + + dataset = SampleDataset( + samples=samples, + input_schema=input_schema, + output_schema=output_schema, + dataset_name="test_ts", + ) + + model = VAE( + dataset=dataset, + feature_keys=["conditions"], + label_key="label", + mode="regression", + input_type="timeseries", + hidden_dim=64, + ) + + train_loader = get_dataloader(dataset, batch_size=1, shuffle=False) + data_batch = next(iter(train_loader)) + + with torch.no_grad(): + ret = model(**data_batch) + + self.assertIn("loss", ret) + self.assertIn("y_prob", ret) + self.assertIn("y_true", ret) + + def test_conditional_image_vae(self): + """Test VAE with conditional features for image mode.""" + samples = [ + { + "patient_id": "patient-0", + "visit_id": "visit-0", + "image": torch.rand(1, 128, 128), + "conditions": ["cond-33"], + "label": 1, + }, + { + "patient_id": "patient-1", + "visit_id": "visit-1", + "image": torch.randn(1, 128, 128), + "conditions": ["cond-86"], + "label": 0, + }, + ] + + input_schema = {"image": "tensor", "conditions": "sequence"} + output_schema = {"label": "binary"} + + dataset = SampleDataset( + samples=samples, + input_schema=input_schema, + output_schema=output_schema, + dataset_name="test_cond", + ) + + model = VAE( + dataset=dataset, + feature_keys=["image"], + label_key="label", + mode="binary", + input_type="image", + input_channel=1, + input_size=128, + hidden_dim=64, + conditional_feature_keys=["conditions"], + ) + + self.assertTrue(hasattr(model, "embedding_model")) + + train_loader = get_dataloader(dataset, batch_size=1, shuffle=False) + data_batch = next(iter(train_loader)) + + with torch.no_grad(): + ret = model(**data_batch) + + self.assertIn("loss", ret) + + +if __name__ == "__main__": + unittest.main() \ No newline at end of file