iMTE

Unsupervised Anomaly Detection with Generative Adversarial Networks to Guide Marker Discovery 본문

Deep learning

Unsupervised Anomaly Detection with Generative Adversarial Networks to Guide Marker Discovery

Wonju Seo 2018. 6. 29. 23:58

Unsupervised Anomaly Detection with Generative Adversarial Networks to Guide Marker Discovery


Abstract

1. Models are typically based on large amount of data with annotated examples of known markers aiming at automating detection.

2. Unsupervised learning to identify anomalies in imaging data as candidates for markers.

3. AnoGan, a deep convolutional generative adversarial network to learn a manifold of normal anatomical variability, accompanying a noevel anomaly scoring scheme based on the mapping from image space to a latent space.

Introduction

Imaging data에서 질환의 marker의 검출과 양을 아는 것은 진단과 질병의 진행 혹은 치료 반응 동안 매우 중요하다. 알려진 marker의 vocabulary에 의존하는 것은 풍부한 관련 정보를 포함하는 이미징 데이터의 사용을 제한한다. 

Medical imaging은 질환의 상태와 연관된 marker들과 치료 반응의 관찰을 가능하게한다. 널리 알려진 marker들이 있지만, 많은 질환은 충분한 broad set이 없어, 예측력이 제한된다. 더나아가, predictive marker가 알려지더라도 지도 학습을 하기위해서 많은 수의 annotated된 data를 필요로한다. 이러한 점은 치료의 결정에 대한 imaging data를 사용하는 능력을 제한한다.

이 논문에서는 Generative adversarial network를 사용해서 충분히 대표적인 model of appearance를 생성하는 문제를 해결하였다. 또한, imaging space에서 latent space로 mapping하는 개선된 기법이 제안되었다. 이 두가지 요소를 사용해서 training data를 다르는 관측들과 적합하지 않은 데이터를 구별하였다.


Related work

(GAN만 설명) GAN은 실제와 비슷한 이미지를 생성하는 generative model을 학습할 수 있다. Radford et al. -> Deep convolutional generative adeversarial networks (DCGAN)

Yeh et al. -> natural image에 GAN을 학습시키고 semantic image inpainitng에 사용함.

이 논문은 Yeh et al. 과 다른 두가지 방법을 제안한다.

1. latent space를 찾기위한 novel variant method

2. inpainting task에서 필요 없었던, anomaly score를 정의

논문의 주된 차이점은

1. Trained DCGAN을 활용하여 정상적인 해부학 및 국소 변칙 모양을 정확하게 구분할 수 있는 생성 모델

2. local anomalous appearance와 normal anatomy 사이의 구별을 정확하게 하는 모델


Generative Adversarial Representation Learning to Identify Anomalies

GAN을 이용해서 normal anatomical variability를 만드는 generative 모델을 학습시키고, discriminator는 generated된 이미지와 real data를 동시에 구분한다.

2.1 Unsupervised Manifold Learning of Normal Anatomical Variability

M개의 healthy anatomy medical images, image size가 a x b 일때, 각 이미지는 다음과 같이 나타낸다.

각 Image Im으로 부터 K개의 2D image patches(c x c)를 추출해낸다.

학습과정 동안에 GAN은 manifold X (Fig 2의 blue region)을 학습한다.

Testing시에서는 unseen image J로 부터 추출된 c x c 크기의와 ground-truth labels로 모델의 성능을 검증한다.

GAN에서 G는 sample z (random variable)로 부터 G(z)를 만들어 x 데이터의 확률 분포를 학습한다. 이 논문에서는 latent space Z로 샘플된 uniformly distributed input이 사용되었다. D는 discriminator로 stanadard CNN구조를 사용해서 2D image를 single scalar value로 변환한다. D는 입력되는 이미지가 실제인지 가짜인지를 구분한다. D와 G는 two-player minimax game를 풀어가면서 동시에 최적화 된다.

(기존의 GAN에서 볼 수 있는 cost function이다.)

D는 real image를 real로 fake image를 fake로 판단하도록 학습하며, G는 위 식의 오른쪽 term을 최소화함으로 D를 속이도록 학습한다.

2.2 Mapping New Images to the Latent Space

Adversarial training이 마무리가 되면, generative model은 latent space (z)에서 실제 image의 x의 mapping 방법을 학습한다. 하지만 GAN은 x에서 z로 mapping하는 inverse 방법을 자동적으로 하지 못한다. Latent space는 smooth transitions을 갖고 있어, latent space의 인접한 두 point는 두개의 유사한 image를 생성해낸다. x 이미지가 주어질 때, 이미지 x와 가장 유사하고 manifold X에 위치하는 G(z)에 해당하는 latent space의 z를 찾는 것이 목표이다.

x와 G(z)의 유사함의 정도는 generator가 만들어내는 data distribution pg에 의존한다. 아주 적절한 z를 찾기 위해서 z1을 latent space에서 sampling하고 학습된 generator에 넣어서 G(z1)을 생성해낸다. 가장 비슷한 image의 G(zr)을 찾기 위해서 latent space의 Z에서의 z의 위치는 backpropagation steps을 거치면서 최적화된다.

이 논문에서는 Residual loss와 discrimination loss를 새로운 이미지를 latent space로 mapping 하기 위해서 사용하였다. Residual loss는 생성된 이미지와 x 이미지와의 유사도를 보는 것이고, discrimination loss는 생성된 이미지가 학습된 manifold X위에 있도록 한다. 그러므로 학습된 GAN의 이 discriminator와 generator는 backpropagation을 통해 z의 계수를 적용하는데 사용된다.


Residual Loss

완벽한 generator와 완벽한 latent space로의 mapping의 가정아래, image x와 G(zr)은 동일하고 residual loss는 0이 된다. (L1 norm이다.)


Discriminato loss

Image inpainting에서 Yeh et al은 discrimination loss를 다음과 같이 계산하였다.


An Improved Discrimination Loss Based on Feature Matching

Zr이 D를 속이기위해서 update되는 Yeh et al의 연구와 달리, 이 논문에서는 normal image의 학습된 분포와 G(zr)을 match하기 위해서 Zr이 update되었다. 이 방법은 Feature matching 기술을 사용한 것이다.

Feature matching은 discriminator의 반응에 over-training으로 인한 GAN의 instability를 해결한다. Feature matching방법으로 generator의 최적화에 대한 objective function은 GAN의 학습을 개선한다. discriminator가 generated된 data를 구분하는 것을 통해서 generator를 학습시키는 것이 아니라 training data와 비슷한 통계적인 데이터를 생성하도록 한다.

즉, 중간의 feature representation이 real image에서 추출된 feature와 같도록 학습하는 것이다.

이 논문에서는 adversal training 동안에 labeled data를 사용하지 않았기 때문에, class-specific한 discriminative features를 학습하지 않고, 좋은 표현 (good representations)을 학습하도록 하였다.

discrimination loss를 계산하기위해서 scalar output을 쓰는 대신에, discriminator의 richer intermediate feature presentation을 사용학 다음과 같이 정의하였다.

f()는 discriminator의 intermediate layer output이다. 새로운 loss term에 기반해서, z의 coordinate의 적응은 생성된 이미지 G(zr)이 normal image에 맞는지 여부에 상관없이 trained discriminator의 어려운 결정에 의존할 뿐만 아니라, adversarial training 동안 discriminator에 의해 학습된 특징 표현 정보가 고려된다. 이런 의미에서 trained discriminator는 classifier가 아닌 feature extractor로 사용된다.

latent space로의 mapping을 위해서 overall loss는 weighted sum형태로 표현된다.

 


2.3 Detection of Anomalies

New data의 anomaly detection 동안, image x를 정상 또는 비정상적인 이미지로 평가한다. latent space로의 mapping에 사용된 loss function은 모든 update 반복 r에서 adversarial training 중에 보이는 이미지와 생성된 이미지 G(zr)의 compatibility를 평가한다.

따라서, 이미지 x에 normal image model에 대한 적합도를 나타내는 anomaly score가 정의될 수 있다.

R(x) : Residual score defined by residual loss

D(x) : Discrimination score defined loss discrimination loss


Model은 anomalous image에 대해서 큰 anomaly score를 매기고, 반면에 training 중에서 이미 본 이미지와 비슷한 이미지라면 낮은 anomaly score를 매긴다.

Anomaly score A(x)는 anomaly detection에 사용되고, residual image는 image의 anomalous의 위치를 확인하는데 사용된다.


Experiments

Data, Data selection and preprocessing

Implementation Details

Radford et al에서 제시된 GAN의 구조를 사용했고 64 x 64 크기의 image patches를 사용했다.

Four fractionally-strides convolutional layers in the generator

four convolution layers in the discriminator 

all filter size : 5 x 5

gray-scale image를 처리했기 때문에 512-256-128-64 channels을 사용하였다.

DCGAN training은 Adam을 사용해서 20 epoch동안 학습하였다. 

latent space에 새로운 image를 mapping하기 위해서 500번의 backpropagation step이 진행되었다.

learning rate : 0.1


Result

Conclusion

이 논문은 deep generative adeversarial network를 기반으로 한 anomaly detection을 제안하였다. Generator와 discriminator를 동시에 학습함으로, healthy 데이터에 대한 model의 unsupervised training을 기반으로 unseen 데이터의 anomaly를 detection 할 수 있었다. 결과는 training 도중에 본 적이 없는 망막 유체 및 HRF와 같은 다른 알려진 이상을 탐지할 수 있었음을 보여주었다. (역시 unsupervised learning인가) 따라서 이 모델은 새로운 anomaly를 발견할 수 있을 것으로 기대된다. 이전 연구와는 달리 residual loss만을 이용하면 이미지에서 latent space로의 mapping에 좋은 결과가 도출될 수 있다는 것을 보여준다.


Unsupervised learning은 데이터의 distribution을 학습하는 것이므로, GAN에 몇몇 제약을 추가해서 distribution을 잘 배우게 하는 것이 매우 중요한 것으로 보인다. 이 논문에서는 feature mapping을 통한 방법을 사용해서 latent space로의 mapping을 강화하였다고 볼 수 있다. 


Comments