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.
Cancer-Net-SCa-Synth 数据集概述
数据集结构
- data 目录:包含训练数据,推荐使用符号链接。
- jpeg 子目录:包含JPEG格式的图像。
- test 子目录:测试集图像。
- train 子目录:训练集图像。
- test.csv:测试集的元数据CSV文件。
- train.csv:训练集的元数据CSV文件。
- jpeg 子目录:包含JPEG格式的图像。
数据集来源
- 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 300bash 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
-

- 1Cancer-Net SCa-Synth: An Open Access Synthetically Generated 2D Skin Lesion Dataset for Skin Cancer Classification滑铁卢大学 · 2024年



