File size: 2,861 Bytes
b6e82b4
 
 
 
 
 
 
 
 
 
 
 
 
 
8e13a83
b6e82b4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
c678118
b6e82b4
 
 
 
 
 
c678118
b6e82b4
 
 
 
 
c678118
b6e82b4
 
 
 
 
 
 
c678118
b6e82b4
 
c678118
b6e82b4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
---
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}
}
```