nnunet 논문 링크
nnunet 논문 업데이트 버전 링크
nnunet은 제공된 데이터셋에 자동으로 적응하는 semantic segmentation 방법이다. U-Net 기반 segmentation pipeline이다.
semantic segmentation이 무엇인가?
=> 컴퓨터 비전분야에서 사용되는 기술로, 이미지에서 각 픽셀을 해당하는 객체 또는 클래스로 분할하는 작업을 말한다.
National Institute of health stroke scale의 줄임말
stroke로 인한 신경학적 장애를 평가하는 임상 척도이며, 총 11개의 문항에 대한 답변을 기반으로 평가하며 0점~42점의 결과를 볼 수 있다. 점수가 높을수록 중증이다.
NIHSS score는 병변의 위치, 크기에만 영향을 받는것이 아니라 다양한 요인에 영향을 받으므로 단순히 병변의 크기만으로 NIHSS score를 판단하기는 어렵다.
현재 우리의 데이터셋은 총
2019년 1월 1일부터 2021년 12월 31일까지 본원 응급실을 통해 신경과로 입원한 환자들 중에 뇌경색 진단명으로 등록된 환자, 18세 이상 90세 이하의 환자
=> 3년간 총 273명의 환자가 분류되었음
한 환자당 dataset은 이미지는 ADC,B0,B1000 nii.gz 영상으로 이루어져있고, lesion 영상도 있음
2d regression
train-> lesion이 제일 많은 depth 2개의 image를 추출하여 multi input으로 사용함
3d regression
train - lesion영상과 nii.gz 파일과 merge해서 사용
test - nnunetv2로 예측한 파일과 adc.nii.gz를 merge해서 사용
결과=> score가 큰 값을 예측할때 크게 벗어나는 경우가 있음
결과
lesion1_MIN.nii.gz의 mask image를 ground truth로 사용
Epoch = 150
Fold 0~4 총 5번 학습을 함. (한 fold 당 대략 7시간이 걸림 총 35시간 정도 학습 진행)
Dataset의 마지막 10개를 제외한 NIHSS_S0001~263번을 학습하였으며 lesion이 없는 158, 212, 214, 226, 250, 258는 제외해 학습을 진행함
기존 방식: brain image와 lesion image를 fc layer에 넣기 직전에 합쳐서 넣음.
수정한 방식: 공간적인 정보를 고려하기 위해 flatten 전에 두 이미지의 feature를 합치고 1x1conv 1개를 적용함
Transformer 기반의 모델 사용(ViT, DeiT)
Data augmentation 적용함
Epoch = 200
Batch size= 32
Image size = (182, 218)
Optimizer = SGD
Number of total data = 264
5-fold cross validation
성능: 전체 mae 사용
Huggingface에 있는 모델과 transformers 라이브러리를 활용하여 image classification용 ViT와 DeiT를 regression 문제로 바꾸어 적용.
(image classification으로 풀면 성능이 안 좋았음)
ViT는 기본 모델인 “google/vit-base-patch16-224”를 사용.
DeiT는 MRI dataset으로 fine-tune한 “raedinkhaled/deit-base-mri”를 사용.
입력으로는 brain image와 lesion image를 각각 따로 넣어서 실험.
Epoch = 100
Batch size= 32
Image size = (224, 224)
Optimizer = Adamw
Number of total data = 264
5-fold cross validation
baseline
deit raw brain image
deit lesion image
vit raw brain image
vit lesion image
=> 결과:
lesion image만 사용한 경우, ViT와 DeiT 모두 baseline을 뛰어넘는 성능을 보임.(baseline은 brain, lesion image 모두 사용)
lesion image의 경우 DeiT가 ViT 보다 성능이 좋지만, brain image만 사용하는 경우 오히려 ViT가 조금 더 좋음. (baseline 보단 낮음)
일반적인 augmentation 방법(crop, flip, rotate)는 학습 데이터의 quality가 떨어질 수 있음
그래서 샘플수가 적은 score들에 대해서 환자의 3d data에 lesion이 있는 다른 layer들을 사용하였음
=> 전체 mae는 올라갔고 클래스별 mae는 떨어짐
작은 lesion, 높은 score 예측 어렵