[24’] M3D: Advancing 3D Medical Image Analysis with Multi-Modal Large Language Models

Date:     Updated:

카테고리:

태그:

image


🔍 Abstract

2024년 3월에 발표된 해당 논문은 Medical Multimodal LLM에서 3D 데이터, 모델, 평가가 모두 부족하다는 점을 지적하며 해당 분야의 발전을 위한 M3D-Data, M3D-LaMed, M3D-Bench를 각각 제시한다. 지금까지 3D medical data가 매우 부족했던 상황이었기에, 각각의 가치가 매우 높다. 따라서 이들을 각각의 섹션으로 나누어 설명할 예정이다.


1. M3D-Data

image

M3D-DataM3D-CapM3D-VQA, M3D-RefSeg, M3D-Seg로 나누어진다. M3D-Cap은 Image-Text Pair Data로 120K개로 구성되어 있고, 나머지 세 가지는 도합 662K개의 Instruction-Response Pair Data로 구성되어 있다.


1.1. Image-Text Pair Data

먼저 M3D-Cap, 즉 Image-Text Pair Data는 Radiopaedia로부터 수집된 120K Pair를 사용하였다. 이때 Image는 3D CT, Text는 CT Report로 구성되어 있다. 이를 활용하여 Image-Text Retrieval이나 Report Generation 등의 task를 수행할 수 있다.


1.2. Instruction-Response Pair Data

image

Instruction-Response Pair DataM3D-VQA, M3D-RefSeg, M3D-Seg로 나누어진다. 각각의 정제 과정을 살펴보자.

image

  • M3D-VQA: VQA task를 위해 전문가의 Annotation을 얻는 것은 매우 어렵다. 따라서 Image-Text Pair Dataset으로부터 Qwen-72B LLM을 사용하여 Multiple-choice VQA 데이터를 구축하였다. 이때 VQA는 각 Report로부터 Plane, Phase, Organ, Abnormality, Location을 주제로 각각 문제를 만들어 구성하였다. Test Set 14K개에 대하여 LLM-based analysis와 Expert Review를 진행하였는데, Pass Rate가 99.4%였기 때문에 충분히 신뢰할 수 있다고 주장한다. Figure 2는 VQA Dataset 분석을 나타낸다.
  • M3D-Seg: Figure 1의 Label-based InstructionDefinition-based Instruction에 해당한다. 각종 Public Dataset을 모아서 쉽게 제작할 수 있다.
  • M3D-RefSeg: TotalSegmentor Dataset의 Segmentation mask마다 전문가가 Report를 작성하도록 하고, 이를 바탕으로 Qwen-72B LLM을 사용하여 Instruction Data를 생성하였다.


2. M3D-LaMed

image


2.1. Architecture

image

Model Architecture를 정리하면 다음과 같다.

  • 3D Image Encoder: MONAI 3D ViT (Scratch)를 그대로 사용한다.
  • 3D Perceiver: 3D ViT의 Output은 너무 많은 Token을 가지기에 이를 압축하기 위하여 사용한다. 자세한 구조는 위 그림 참고.
  • LLM: LLaMA-2-7B를 사용한다.
  • Segmentation Module: 저자들의 이전 연구에서 개발한 SegVol을 사용하며, 방법은 LISA와 동일한 Promptable Segmentation Token을 사용한다.


2.2. Training

image

Training은 다음과 같이 세 단계로 진행한다.

  1. Vision Encoder Pre-training: CLIP-style pre-training을 진행하며, 이때 text encoder는 Pretrained BERT를 사용하였다.
  2. MLLM Pre-training: M3D-Cap을 사용하여 3D Perceiver만 학습하였다.
  3. MLLM Instruction Tuning: M3D-VQA, M3D-RefSeg, M3D-Seg를 사용하여 Vision Encoder, 3D Perceiver, LLM, Segmentation Module을 모두 학습시켰다. 이때 LLM은 LoRA를 사용하였다.


3. M3D-Bench

저자들은 크게 image-text retrieval, report generation, VQA, positioning, segmentation의 5가지 Task에서 평가를 진행하였고, 이를 합쳐 M3D-Bench라고 하였다. 각각을 요약하면 다음과 같다.

  1. Image-Text Retrieval: M3D-Cap Test set를 사용하여 TR(Text-to-Image Retrieval)IR(Image-to-Text Retrieval)을 평가하였다.
  2. Report Generation: M3D-Cap Test set를 사용하여 Report Generation을 평가하였다. 이때 Traditional Metrics BLEU, ROUGE, METEOR, BERT-Score와 Qwen-72B를 사용한 LLM-based Metrics를 사용하였다.
  3. VQA: M3D-VQA Test set를 사용하여 VQA를 평가하였다. 이때 Closed-ended VQA, Open-ended VQA를 모두 평가하였고 Open-ended VQA의 경우에는 정답의 유사도를 평가하기 위해 BLEU, ROUGE, METEOR, BERT-Score를 사용하였다.
  4. Positioning: M3D-Seg Test set의 segmentation mask를 bounding box로 변환해 사용하여 REC(Referring Expression Comprehension), REG(Referring Expression Generation)을 평가하였다. Input/Output bounding box는 모두 Text로 처리하였다.
  5. Segmentation: M3D-Seg Test set를 사용하여 Segmentation을 평가하였다. Dice를 사용하여 평가하였다.

그러나 이들은 모두 In-Domain 데이터에 대한 평가이기 때문에 다른 모델과의 비교는 공정하지 않을 수 있다는 점을 염두에 두어야 한다.


4. Experiments

4.1. Image-Text Retrieval

image
image

Image-Text Retrieval의 경우 CLIP Pre-training의 성능을 확인하기 위해 사용하였다. 기본적으로 3D CLIP-like Model이 Medical Image Analysis 계열에 없는 관계로 3D Image의 10개의 Slice를 사용하여 2D Image로 변환하여 사용하였다. Original CLIP과 비교하려 하였지만 성능이 너무 나쁜 관계로 PMC-CLIP과 비교하였다고 한다. 월등한 성능을 보였다.


4.2. Report Generation

image
image

Report Generation의 경우 Report Generation 및 VQA에 특화된 RadFM 모델과 비교하였다. 이때 M3D-Cap을 사용하여 평가하였는데, M3D-Cap 데이터는 3D Perceiver Pre-training에만 사용되고 Instruction Tuning에는 사용되지 않았기 때문에 비교적 공정한 비교가 가능하다. 그래서인지 성능 차이가 크게 나지 않았다. 추가로, Adapter를 Linear로 사용하는 것보다 MLP로 사용하는 것이 좋았는데 이는 LLaVA-1.5의 결과와 일치한다.


4.3. VQA

image
image

VQA는 너무 큰 차이가 나서 결과를 신뢰하기 어렵다. 아무래도 Training Set과 같은 데이터를 사용하기 때문에 공정하지 않다.


4.4. Positioning

image
image

Positioning의 경우 REC, REG를 평가하였다. 비교할 모델이 없어 따로 다른 모델과의 비교는 하지 않고, 대신 Ablation Study를 진행했다. 학습 시 Visual Encoder를 학습하는 것이 그렇지 않은 것보다 성능이 높았다. 이처럼 Vision-centric Task에서는 Vision Encoder의 역할이 중요하다. 이는 PerceptionGPT의 결과와 유사하다.


4.5. Segmentation

image
image

Segmentation의 경우 Semantic Segmentation, RES(Referring Expression Segmentation)을 평가하였다. 기존 저자들의 SegVol의 성능을 뛰어넘었고, 추가로 RES를 수행할 수 있게 되었다는 점이 인상적이다. 다만 데이터셋 문제로 비교는 어렵다.


4.6. Ablation Study

image

Vision Encoder의 Pre-training, 3D Perceiver의 Spatial PoolingMLP, Instruction Tuning 시 Vision Encoder를 같이 학습시키는 것이 중요함을 확인하였다.


4.7. Case Study on OOD Questions

image

지금까지의 Evaluation이 모두 In-Domain 데이터에 대한 것이었기 때문에 Out-of-Domain 데이터에 대한 실험을 진행하였다. 결론은 LLM의 능력을 충분히 발휘하여 OOD 상황에 대해서도 충분한 성능을 나타낸다는 것이다.


💡 Summary

M3D3D Medical Image Analysis를 위한 Data, Model, Benchmark를 제시한 논문이다. M3D-DataImage-Text Pair DataInstruction-Response Pair Data로 나누어져 있으며, M3D-LaMed3D Image Encoder, 3D Perceiver, LLM, Segmentation Module로 구성되어 있다. M3D-BenchImage-Text Retrieval, Report Generation, VQA, Positioning, Segmentation의 5가지 Task로 구성되어 있다. 이들은 모두 3D Image Analysis 분야에서 중요한 역할을 할 것으로 기대된다. 대부분의 과정에 동의하나 OOD(Out-of-Domain) 데이터에 대한 실험이 부족하다는 점이 아쉽다.


📃 Reference


Medical 카테고리 내 다른 글 보러가기

댓글 남기기