MedMNIST v2医学图像数据集已经发布,相较 MedMNIST v1,MedMNIST v2 新增了 2 个 2D 生物图像数据,以及 6 个 3D 生物医学图像数据。
开展实际医学人工智能相关的研究时往往会面临数据孤岛问题,尽管医学数据十分丰富,但由于数据隐私等问题,研究者能访问到的数据十分稀缺。
医学影像算法任务中,调整深度学习模型需要大量的工作投入,如网络架构选择、优化策略、预处理和数据增强等,事实上很多设计可以通过自动机器学习来解决。
医学图像领域根据特定目的发展出了许多图像模态,不同模态泛化能力对于模型十分重要,但评估模型的泛化能力往往需要大量的数据集。
由于医学图像相对复杂的特性,使得预处理、建模流水线等会扮演极其重要的角色,甚至超过机器学习的部分(如 nnUNet)。尽管模型端到端的性能非常重要,但研究者也需要标准化的、只需要关注机器学习部分的数据以加速研究过程。
论文地址:https://arxiv.org/pdf/2110.14795.pdf
数据和代码链接:https://medmnist.com
标准性:数据集具有相同的大小 28*28(2D)或 28*28*28(3D),并提供了标准的训练集、验证集和测试集的划分;
多样性:数据集包含多种模态(X 光片、视网膜 OCT、超声、CT 等)、 多种任务(多分类、二分类、多标签、有序回归), 数据集规模从百量级到十万量级不等;
轻量性:数据集尺寸小,28*28(2D)或 28*28*28(3D);
教育性:生物医学图像分析需要计算机视觉、 机器学习、 生物医学图像、 临床等多种背景知识, 所有数据均采用 CC(Creative Commons) 许可, 便于用于教育目的。
图二 MedMNIST v2 全景图
验证实验
表三 MedMNIST v2性能指标
表四 MedMNIST v2 性能平均指标
快速上手
1.medmnist的安装
pip install --upgrade git+https://github.com/MedMNIST/MedMNIST.git
2.下载MedMNIST v2数据集
python -m medmnist download
3.MedMNIST v2数据集的调用(以PathMNIST为例)
调用medmnist加载数据集,并将数据集转变为PyTorch的dataloader格式
>>> from medmnist import PathMNIST
>>> train_dataset = PathMNIST(split='train', download=True)
4.查看数据集的数量、任务类型、标签意义等介绍
>>> print(train_dataset)
Dataset PathMNIST (pathmnist)
Number of datapoints: 89996
Root location: /home/three/.medmnist
Split: train
Task: multi-class
Number of channels: 3
Meaning of labels: {'0': 'adipose', '1': 'background', '2': 'debris', '3': 'lymphocytes', '4': 'mucus', '5': 'smooth muscle', '6': 'normal colon mucosa', '7': 'cancer-associated stroma', '8': 'colorectal adenocarcinoma epithelium'}
Number of samples: {'train': 89996, 'val': 10004, 'test': 7180}
Description: The PathMNIST is based on a prior study for predicting survival from colorectal cancer histology slides, providing a dataset (NCT-CRC-HE-100K) of 100,000 non-overlapping image patches from hematoxylin & eosin stained histological images, and a test dataset (CRC-VAL-HE-7K) of 7,180 image patches from a different clinical center. The dataset is comprised of 9 types of tissues, resulting in a multi-class classification task. We resize the source images of 3×224×224 into 3×28×28, and split NCT-CRC-HE-100K into training and validation set with a ratio of 9:1. The CRC-VAL-HE-7K is treated as the test set.
License: CC BY 4.0
5.只需一行代码,便可以以蒙太奇的形式可视化查看数据集
>>> train_dataset.montage(length=20)
图三 PathMNIST的20*20蒙太奇展示
潜在用途
自动机器学习(AutoML):医学影像算法任务中,调整深度学习模型有很大一部分工作是需要研究者和工程师人为指定的,如网络架构选择、优化策略、预处理和数据增强等,而这一部分需要研究者投入大量的精力。因此自动机器学习显得尤为重要,MedMNIST 可以作为医学图像分类领域自动机器学习的基准,从而在一定程度上促进医学图像分析领域自动机器学习的发展。
不同模态的模型泛化:根据特定的任务,通过调整传感器和成像协议,许多医学图像模态被设计出来。好的模型设计应当具有较强的泛化性能,然而仅仅在少量数据集上进行验证并不能去评判一个特定的模型是否具有泛化能力。MedMNIST 的多样性可以公平地评估机器学习算法在不同设置下的泛化能力。同时,MedMNIST 包含多样的数据模态、任务和数据量的各个子集也可以用来分析不同任务之间的迁移关联。
3D 视觉:长期以来,3D 医学图像领域一直缺少易用的标准数据集。即便是像 LIDC、MSD 这样经过一定标准化的数据集,由于未提供官方数据划分、数据预处理等原因,最终系统的性能表现往往高度取决于预处理和模型管线,从而难以将模型本身加以比较。MedMNIST v2 中多样、标准、易用的 3D 数据集,将为该领域的研究提供一个测试基准。
安全隐私的机器学习:可信机器学习(trustworthy machine learning),尤其是机器学习的安全性和隐私性越来越受到关注。其中,医学领域由于自身对安全性和隐私性的高要求,一直是可信机器学习的重点研究对象。MedMNIST 的多数据集设计可以很自然的成为该领域研究的一个易用的基线实验数据。
入门医学 AI 交叉领域(对初学者):由于人体及生命现象的高度复杂性,现代医学(尤其是临床医学)一直是一门高度依赖经验的科学。如今伴随着深度学习等数据驱动方法的崛起,AI 已经越来越成为临床研究和基础研究的重要工具。很多专家认为,生物医学是 “AI+” 交叉学科最好的研究方向之一,大量的科学研究和产业转换也正在将这样的论断变为现实。然而,任何交叉学科都具有较高门槛,尤其是对于医学 AI 这样交汇了高度复杂的生物医学和快速发展的 AI 两门学科的方向。我们希望,MedMNIST 可以成为这样一个窗口,让更多初学者从这样一个标准化的沙盒开始,踏入生物医学图像分析甚至更多相关领域。
>>> import medmnist