five

Cancer-Net SCa-Synth

收藏
arXiv2024-11-08 更新2024-11-12 收录
下载链接:
https://github.com/catai9/Cancer-Net-SCa-Synth
下载链接
链接失效反馈
官方服务:
资源简介:
Cancer-Net SCa-Synth是由滑铁卢大学开发的开放访问合成2D皮肤病变数据集,专门用于皮肤癌分类。该数据集包含10,000张图像,均匀分布在良性和恶性皮肤癌病例中。数据集通过使用Stable Diffusion模型和DreamBooth训练器生成,旨在解决现有数据集类别不平衡的问题。创建过程中,分别使用300张良性皮肤癌图像和300张恶性皮肤癌图像进行模型训练,生成各5000张图像。该数据集的应用领域为皮肤癌的快速准确检测,旨在通过合成数据提升机器学习模型的性能。

Cancer-Net SCa-Synth is an open-access synthetic 2D skin lesion dataset developed by the University of Waterloo, exclusively tailored for skin cancer classification tasks. This dataset comprises 10,000 images, with an even split between benign and malignant skin cancer cases. It was generated using the Stable Diffusion model and DreamBooth training framework, with the aim of mitigating the class imbalance problem prevalent in existing datasets. During the dataset construction process, 300 benign skin lesion images and 300 malignant skin lesion images were respectively utilized for model fine-tuning, to generate 5,000 images for each category. The target application scenario of this dataset is rapid and accurate skin cancer detection, and its core objective is to enhance the performance of machine learning models via synthetic data.
提供机构:
滑铁卢大学
创建时间:
2024-11-08
原始信息汇总

Cancer-Net-SCa-Synth 数据集概述

数据集结构

  • data 目录:包含训练数据,推荐使用符号链接。
    • jpeg 子目录:包含JPEG格式的图像。
      • test 子目录:测试集图像。
      • train 子目录:训练集图像。
    • test.csv:测试集的元数据CSV文件。
    • train.csv:训练集的元数据CSV文件。

数据集来源

  • ISIC 2020皮肤病变数据集:用于生成图像的原始数据集,可从Kaggle下载。

数据生成

  • 生成训练数据集:使用src/create_training_dataset.py脚本生成训练实例目录。
    • 示例命令: bash python src/create_training_dataset.py malignant
      --source_csv data/train.csv --source_dir data/jpeg/train --target_dir data/generated/train-malignant --subset_size 300

      bash python src/create_training_dataset.py benign
      --source_csv data/train.csv --source_dir data/jpeg/train --target_dir data/generated/train-benign --subset_size 300

模型训练

  • Stable Diffusion (SD) 模型训练:使用src/train_dreambooth.py脚本进行训练。
    • 示例命令: bash accelerate launch src/train_dreambooth.py --pretrained_model_name_or_path=$MODEL_NAME --instance_data_dir=$INSTANCE_DIR --output_dir=$OUTPUT_DIR --instance_prompt="melanoma" --resolution=512 --train_batch_size=1 --gradient_accumulation_steps=1 --learning_rate=5e-6 --lr_scheduler="constant" --lr_warmup_steps=0 --max_train_steps=400

图像生成

  • 生成图像:使用src/generate_images.py脚本生成图像。
    • 示例命令: bash python src/generate_images.py --pretrained_model_name_or_path="malignant-model" --prompt="melanoma" --num_images=5000 --output_folder="data/jpeg/generated"

      bash python src/generate_images.py --pretrained_model_name_or_path="benign-model" --prompt="benign" --num_images="5000" --output_folder="data/jpeg/generated"

数据处理

  • 数据预处理:使用src/preprocess_data.py脚本对数据进行标准化处理。
    • 示例命令: bash python src/preprocess_data.py --raw_folder_location="data/jpeg/train" --csv_location="data/train.csv" --processed_output_folder="data/processed/train"

      bash python src/preprocess_data.py --raw_folder_location="data/jpeg/test" --csv_location="data/test.csv" --processed_output_folder="data/processed/test"

      bash python src/preprocess_data.py --raw_folder_location="data/jpeg/generated" --csv_location="data/generated.csv" --processed_output_folder="data/processed/generated"

模型训练

  • MobileNetV2模型训练:使用src/train_mobilenetv2_model.py脚本进行训练。
    • 示例命令: bash python src/train_mobilenetv2_model.py --output_folder results/scenarioA --train_csv_location data/train.csv --train_folder_location data/processed/train --test_csv_location data/test.csv --test_folder_location data/processed/test --pretrained_model_name_or_path imagenet

      bash python src/train_mobilenetv2_model.py --output_folder results/scenarioB --train_csv_location data/generated.csv --train_folder_location data/processed/generated --test_csv_location data/test.csv --test_folder_location data/processed/test --pretrained_model_name_or_path imagenet

      bash python src/train_mobilenetv2_model.py --output_folder results/scenarioC --train_csv_location data/train.csv --train_folder_location data/processed/train --test_csv_location data/test.csv --test_folder_location data/processed/test --pretrained_model_name_or_path results/scenarioB/best_model.weights.h5

搜集汇总
数据集介绍
main_image_url
构建方式
Cancer-Net SCa-Synth数据集的构建基于最新的生成式人工智能技术,特别是Stable Diffusion和DreamBooth。研究团队首先从ISIC 2020训练集中随机抽取300张良性皮肤癌图像和300张黑色素瘤图像,分别用于训练两个独立的Stable Diffusion模型。每个模型使用单一关键词('benign'或'melanoma')作为提示进行训练。训练过程中,采用AdamW优化器和MSE损失函数,学习率设定为5e-6,图像分辨率为512x512。经过训练后,生成共计10,000张图像,其中5,000张为良性,5,000张为黑色素瘤,从而构建出Cancer-Net SCa-Synth数据集。
使用方法
使用Cancer-Net SCa-Synth数据集时,研究者可以选择多种训练策略。例如,可以直接使用该数据集训练MobileNetV2模型,或将其与ISIC 2020训练集结合进行微调。实验结果表明,结合使用Cancer-Net SCa-Synth和ISIC 2020训练集的模型在ISIC 2020测试集上的表现显著优于仅使用单一数据集的模型。此外,数据集的图像生成代码和模型训练流程均可在GitHub上获取,便于研究者进行复现和进一步研究。
背景与挑战
背景概述
皮肤癌在美国是最常见的癌症类型,因其高发率和早期发现的重要性,成为公共卫生领域的重要课题。近年来,数据集的构建和深度学习技术的进步在皮肤癌的快速准确检测中显示出巨大潜力。然而,现有的开源数据集存在显著的类别不平衡问题,这严重影响了深度学习模型的有效性。在此背景下,Cancer-Net SCa-Synth数据集应运而生,由滑铁卢大学的Chi-en Amy Tai、Oustan Ding和Alexander Wong等人开发。该数据集利用最新的生成式人工智能技术,特别是Stable Diffusion和DreamBooth,生成了一个包含10,000张合成2D皮肤病变图像的开源数据集,旨在解决类别不平衡问题,提升皮肤癌分类模型的性能。
当前挑战
Cancer-Net SCa-Synth数据集在构建过程中面临多项挑战。首先,合成图像的真实性和多样性是关键问题,尽管Stable Diffusion和DreamBooth技术在生成高质量图像方面表现出色,但仍需确保生成的图像能够准确反映真实皮肤病变的特点。其次,数据集的类别平衡问题虽已通过合成数据得到缓解,但如何确保这些合成数据在实际应用中与真实数据具有同等效用,仍需进一步验证。此外,合成数据的隐私和伦理问题也需引起重视,确保数据生成过程符合医疗伦理标准。最后,尽管该数据集在初步实验中显示出提升模型性能的潜力,但其长期效果和在不同模型中的适用性仍需广泛研究和验证。
常用场景
经典使用场景
在皮肤癌分类领域,Cancer-Net SCa-Synth数据集通过合成生成的高质量2D皮肤病变图像,显著提升了深度学习模型的训练效果。该数据集特别适用于解决现有公开数据集中类别不平衡的问题,通过增强少数类别的样本数量,使得模型在良性与恶性皮肤癌的分类任务中表现更为均衡和准确。
解决学术问题
Cancer-Net SCa-Synth数据集通过提供合成生成的2D皮肤病变图像,有效解决了现有皮肤癌数据集中类别不平衡的学术难题。这一问题长期困扰着深度学习模型的训练效果,尤其是在皮肤癌的早期检测中,类别不平衡可能导致模型对某些类型的病变识别能力不足。该数据集的应用显著提升了模型的泛化能力和分类准确性,为皮肤癌的早期诊断提供了更为可靠的技术支持。
实际应用
在实际应用中,Cancer-Net SCa-Synth数据集被广泛用于开发和优化皮肤癌检测算法。医疗机构和研究机构利用该数据集训练深度学习模型,以提高皮肤癌的早期诊断率。此外,该数据集还支持移动设备上的皮肤癌筛查应用,使得患者能够通过便携设备进行初步自我检查,从而及时发现潜在的皮肤病变。
数据集最近研究
最新研究方向
在皮肤癌诊断领域,Cancer-Net SCa-Synth数据集的最新研究方向聚焦于利用生成式人工智能技术,特别是Stable Diffusion和DreamBooth,来生成合成皮肤病变图像,以解决现有数据集中的类别不平衡问题。这一研究不仅提升了深度学习模型在皮肤癌分类中的性能,还通过公开数据集推动了全球范围内机器学习在癌症护理中的应用。未来研究可能进一步探索其他深度学习模型与ControlNet的结合,以增强文本到图像扩散模型的条件控制能力,从而生成更高质量的合成图像,进一步提升皮肤癌分类的准确性。
相关研究论文
  • 1
    Cancer-Net SCa-Synth: An Open Access Synthetically Generated 2D Skin Lesion Dataset for Skin Cancer Classification滑铁卢大学 · 2024年
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作