M-FLAG / README.md
youngzhou12's picture
Update README.md
c678118 verified
---
license: mit
library_name: pytorch
tags:
- Medical Vsion-Language Pre-Training
- BenchX
---
# M-FLAG Checkpoint Model Card
A retrained M-FLAG model for benchmarking medical vision-language pre-training methods within the BenchX framework.
## Model Details
- **Model Type**: M-FLAG
- **Architecture**: ResNet-50 image encoder and CXR-BERT text encoder
- **Original Papers**: [M-FLAG: Medical Vision-Language Pre-training with Frozen Language Models and Latent Space Geometry Optimization](https://arxiv.org/abs/2307.08347)
- **Benchmark Paper**: [BenchX: A Unified Benchmark Framework for Medical Vision-Language Pretraining on Chest X-Rays](https://arxiv.org/abs/2410.21969)
- **Benchmark Framework**: https://github.com/yangzhou12/BenchX
## Intended Use
- **Primary Use Cases**:
- Benchmarking performance for Medical Image Classification
- Benchmarking performance for Medical Image Segmentation
- Benchmarking performance for Medical Report Generation
## Pre-Training Data
- **Dataset**:
- Data source(s): MIMIC-CXR
- Types of medical images: Frontal chest X-rays
- Text data type: Associated radiology reports
## Prerequisites
Please follow the [instruction](https://github.com/yangzhou12/BenchX/blob/release/README.md#installation) to install BenchX.
## Training & Evaluation
### 1. Classification
To fine-tune M-FLAG for classification, run this command:
```
python bin/train.py config/classification/<dataset_name>/mflag.yml
```
### 2. Segmentation
To fine-tune M-FLAG for segmentation, run this command:
```
python mmsegmentation/tools/train.py config/benchmark/<dataset_name>/mflag.yml
```
### 3. Report Generation
To fine-tune M-FLAG for report generation, run this command:
```
python bin/train.py config/report_generation/<dataset_name>/mflag.yml
```
### 4. Evaluation
To evaluate fine-tuned M-FLAG models, run:
```
# For classification and report generation
python bin/test.py config/<task_name>/<dataset_name>/mflag.yml validator.splits=[test] ckpt_dir=<path_to_checkpoint>
# For segmentation
python mmsegmentation/tools/my_test.py mmsegmentation/config/<dataset_name>/mflag.yml <path_to_checkpoint>
```
## Citations
```bibtex
@inproceedings{huang2021M-FLAG,
title={M-FLAG: Medical Vision-Language Pre-training with Frozen Language Models and Latent Space Geometry Optimization},
author={Liu, Che and Cheng, Sibo and Chen, Chen and Qiao, Mengyun and Zhang, Weitong and Shah, Anand and Bai, Wenjia and Arcucci, Rossella},
booktitle={Proceedings of MICCAI},
pages={637--647},
year={2023},
}
```
```bibtex
@inproceedings{zhou2024benchx,
title={BenchX: A Unified Benchmark Framework for Medical Vision-Language Pretraining on Chest X-Rays},
author={Yang Zhou, Tan Li Hui Faith, Yanyu Xu, Sicong Leng, Xinxing Xu, Yong Liu, Rick Siow Mong Goh},
booktitle={Proceedings of NeurIPS},
year={2024}
}
```