본 논문은 MIDL 2018에 accept된 논문으로 Mix up 알고리즘 기반 Data Augmentation을 제안하고 있습니다.(https://openreview.net/forum?id=rkBBChjiG)
1. Introduction
Data Augmentation의 목적은 훈련 데이터 셋의 양을 인위적으로 늘림으로써 모델의 일반화를 증가시키는 것입니다. 특히 segmentation의 경우 image와 해당 mask, 즉 label image에 동일한 변형을 해주어야합니다. 예를 들어 image에는 30도 회전을 적용하고 mask에는 50도 회전을 적용하면 변형된 mask는 변형된 image의 mask가 아니게 되는 것이죠. 이러한 Data Augmentation은 회전, 뒤집기와 같은 변형을 통해서 훈련 데이터 셋의 양을 늘릴 수 있습니다.
비교적 최근에 제안된 Data Augmentation 기법인 'Mix Up' 알고리즘[1]은 현재 가지고 있는 훈련 데이터 셋에서 2개의 image를 임의로 선택한 뒤 linear combination을 통해 새로운 image을 만들어냅니다. 물론 선택된 image 들에 대응되는 2개의 mask 역시 linear combination을 통해 새로운 mask를 만들어냅니다.
본 논문에서는 이 mix up 알고리즘을 기반으로한 'mixmatch'를 의학 영상에 적용하여 BraTS 2017 데이터 셋에 대한 semantic segmentation의 성능 향상을 목표로 하고있습니다.
2.Method
mix up 알고리즘에서 2개의 훈련 데이터셋($X$)을 무작위로 선택하게 됩니다.($(x_{i}, y_{i}), (x_{j}, y_{j}) \in X$) 이제 선택된 2개의 무작위 image를 linear combination을 적용합니다. 따라서 만들어지는 새로운 영상은 $x_{mixup}=\gamma x_{i}+(1-\gamma)x_{j}$, $y_{mixup}=\gamma y_{i}+(1-\gamma)y_{j}$이고 $\gamma \in [0, 1]$입니다. 이때 $\gamma \sim {\sf \beta}(\alpha, \alpha), \alpha \in (0, \infty)$입니다.
여기서 mix up 알고리즘의 경우 두 영상을 훈련 데이터에서 완전히 무작위로 선택한다는 특징이 있습니다. 하지만 본 논문에서 제안하는 mix match 알고리즘은 훈련 데이터에서 무작위로 선택은 하지만 완전히 무작위 선택은 아닙니다. 완전 무작위 선택을 하지 않는 이유는 의학 image의 큰 문제 중 하나인 'data imbalance' 때문입니다. 본 논문에서 사용하는 BraTS 데이터 셋의 경우에도 대부분의 영상이 tumor가 없습니다. 따라서 tumor를 segmentation해야하는 데 tumor가 없는 image가 더 많으니 완전 무작위로 선택하면 tumor가 없는 image를 선택할 수도 있고 이를 방지하고자 다른 선택 방법을 제시하였습니다.
그래서 본 논문에서 제시하는 선택 알고리즘은 image 내의 image patch 별로 tumor(논문에서는 foreground라는 표현을 사용하였는데 이는 관심배경이라는 뜻으로 씌이므로 저는 tumor로 해석하였습니다.)의 크기가 다를 텐데, 그 중에서 가장 tumor의 크기가 큰 image patch와 가장 작은 image patch를 matching 시킵니다. 좀 더 자세히 설명하면 minibatch size가 $n$이라고 했을 때 image 별로 $2n$개의 image patch를 불러옵니다. 이때 첫번째 $n$개의 patch 중에서 tumor의 크기가 가장 큰 patch와 두번째 $n$개의 patch 중에서 tumor의 크기가 가장 작은 patch를 선택하여 linear combination을 진행합니다.
2.1. Performance on BraTS training set
먼저 BraTS 2017 데이터 셋[2][3]은 뇌의 신경 교종(gliomas) image와 신경 교종의 위치를 label한 데이터 셋입니다. 그리고 본 논문에서 사용된 sementic segmentation 성능 측정 신경망은 BraTS 2017 Challenge에서 준우승한 신경망[4]을 활용하였습니다.(우승한 신경망의 경우 1개의 신경망을 학습한게 아니라 여러가지 신경망을 ensemble 효과를 통해 성능을 향상[5]시켰기 때문에 사용하지 않았습니다.) 손실 함수는 Dice loss[6]를 사용하였습니다.
또한 좋은 data augmentation은 신경망의 일반화 성능을 반드시 향상해야합니다. 일반화 성능 향상을 측정하기 위해서 BraTS 2017의 데이터 셋에서 아주 일부(285개중 10개)만 따로 학습을 시켜 성능을 측정하였습니다.
실험은 먼저 199개의 데이터 셋으로 훈련하는 신경망과 10개의 데이터 셋으로 훈련하는 신경망(이 경우 뒤에 's'가 추가로 붙습니다.)으로 나눈 뒤, 각 신경망의 데이터가 Data Augmentation이 적용되지 않은 'no mix', 회전, 뒤집기, 확대와 같은 일반적인 Data Augmentation을 적용한 'aug', [1]에서 제안된 mix up 알고리즘을 적용한 'mixup', 본 논문에서 제안하는 'mixmatch'
2.2. Effect of mixup/mixmatch samples on training
신경망을 학습하는 것은 일반적으로 backpropagation 알고리즘에 의존합니다. chain rule에 의해서 주어진 픽셀값($p_{i}$)이 주는 손실 함수에 대한 영향이 신경망의 매개변수들을 업데이트하며 앞으로 전파됩니다. 본 논문에서 추가적으로 증명하고자 하는 것은 $\frac{\partial L}{\partial p_{i}}(\gamma x_{i} + (1-\gamma) x_{j}) \approx \gamma \frac{\partial L}{\partial p_{i}}(x_{i}) + (1-\gamma)\frac{\partial L}{\partial p_{i}}(x_{j})$입니다. 만약 이 식이 성립한다면 sample을 mixing 한다는 것은 minibatch size를 증가시기는 것과 동일하게 작용하기 때문에 계산 성능 역시 향상 시킬 수 있을 것입니다.
3. Results
위 사진은 다양한 방법을 적용한 성능을 iteration에 따라서 Dice Loss를 비교하고 있습니다. mixup이나 mixmatch는 noaug나 aug보다 성능이 훨씬 좋은 것을 볼 수 있습니다. 또한 mixup과 mixmatch의 성능자체는 비슷한 결과를 보여주고 있습니다.
Figure2의 위쪽 사진은 $\frac{\partial L}{\partial p_{i}}(\gamma x_{i} + (1-\gamma) x_{j})$의 결과이고 Figure2의 아래쪽 사진은 $\gamma \frac{\partial L}{\partial p_{i}}(x_{i}) + (1-\gamma)\frac{\partial L}{\partial p_{i}}$의 결과를 보여주고 있습니다. $\frac{\partial L}{\partial p_{i}}$의 값은 Dice loss 미분의 weighted average와 비슷한 것에 주목할 필요가 있습니다. Dice loss의 미분은 mix한 patch들로부터의 미분의 가중합과 거의 유사합니다.
*** 논문 평가
1. 본 논문은 semantic segmentation을 위한 mix up 기반 mix match의 data augmentation을 제안합니다.
2. 본 논문에서 가장 이해가 되지 않는 점은 mix up이 어째서 minibatch size를 늘리는 것과 같은 효과를 가지는 지입니다.(혹시 아시는 분은 댓글로 남겨주시길 바랍니다.)
3. 마지막으로 mix up에서 $\gamma$를 beta 분포로부터 가져온다는 점입니다. 굳이 beta 분포로 가져오는 이유는 아마 [1]에 설명이 되어있을 듯하니 이 부분은 [1]을 추가적으로 읽어보겠습니다.
[1]. H. Zhang et al. mixup: Beyond empirical risk minimization. arXiv preprint arXiv:1710.09412, 2017.(https://arxiv.org/abs/1710.09412)
[2]. S. Bakas et al. Advancing the cancer genome atlas glioma mri collections with expert segmentation labels and radiomic features. Scientific data, 4:170117, 2017.(https://www.ncbi.nlm.nih.gov/pubmed/28872634)
[3]. B. Menze et al. The multimodal brain tumor image segmentation benchmark (brats). IEEE transactions on medical imaging, 34(10):1993–2024, 2015.(https://ieeexplore.ieee.org/document/6975210)
[4]. G. Wang et al. Automatic brain tumor segmentation using cascaded anisotropic convolutional neural networks. CoRR, abs/1709.00382, 2017.(https://arxiv.org/abs/1709.00382)
[5]. K. Kamnitsas et al. Ensembles of multiple models and architectures for robust brain tumour segmentation. arXiv preprint arXiv:1711.01468, 2017.(https://arxiv.org/abs/1711.01468)
[6]. F. Milletari et al. V-net: Fully convolutional neural networks for volumetric medical image segmentation. In 3D Vision (3DV), 2016 Fourth International Conference on, pages 565–571. IEEE, 2016.(https://arxiv.org/abs/1606.04797)
첫 논문 리뷰인데 많이 부족한 점이 많습니다. 비판적 사고를 기르기위한 논문 리뷰인데 너무 어렵네요... 나중에는 더 좋은 리뷰를 보여드리겠습니다.