본 포스트에서는 최근 저희가 발표한 Batch-Instance Normalization for Adaptively Style-Invariant Neural Networks에 대해 소개하려고 합니다. 이 논문은 입력 영상의 style variation을 해결하기 위한 새로운 normalization 기법을 제안하며, 다양한 computer vision 문제에서 기존의 Batch normalization 및 Instance normalization을 효과적으로 대체할 수 있음을 보입니다.


Introduction

이미지가 표현하는 정보는 크게 content와 style 두 가지로 구분될 수 있습니다. Image style transfer는 서로 다른 두 이미지의 content와 style을 합치는 것을 목표로 하며, 이에 관해서는 이전 포스트에서 자세히 다뤄진 바 있습니다. Computer graphics에서 이미지를 rendering 할 때 아래 그림과 같이 물체들의 shape (content)과 texture (style)를 구분하는 것도 이와 비슷한 맥락에서 이해할 수 있습니다.

rendering2
Rendering by creating object shapes (left) and adding textures (right). Images from studio3dg.com.

대부분의 영상 인식 문제에서 이미지의 style보다는 content가 중요한 비중을 차지합니다. 간단한 예로, 의자와 책상을 구별하는 데 있어서 object shape이 핵심적인 정보를 전달하는 반면, object texture (재질, 무늬, 색깔 등)는 오히려 물체의 구별을 어렵게 만드는 요인이 되기도 합니다. 이와 같은 물체의 고유한 texture 뿐만 아니라, 날씨, 조명, 카메라설정, 필터효과 등으로 인해 발생하는 이미지 style의 다양성은 일반적인 object classification 문제의 복잡도를 증가시키고 인식 성능을 떨어뜨리는 주요 원인 중 하나입니다. 따라서 이러한 style variation을 제거하는 것은 모델의 학습을 용이하게 하고 성능 향상을 불러올 수 있습니다.

그러나 때로는 style 정보도 영상 인식에서 중요한 역할을 수행합니다. 예를 들어, 의자의 종류 (철제, 원목, 플라스틱 등)를 분류하는 문제에서는 물체의 texture 자체가 필수적인 정보가 됩니다. 또한 이미지의 전체적인 밝기나 대조와 같은 style 정보는 일반적인 object classification에서는 불필요한 noise로 작용하지만, 이미지의 날씨나 시간을 인식하는 문제에서는 핵심적인 역할을 수행할 수 있습니다. 즉, 주어진 문제에 대해 의미 있는 style 정보는 인식 과정에서 반드시 보존되어야 합니다.

최근 발전된 neural style transfer 연구들은 convolutional neural network의 feature statistics (e.g. Gram matrix [1], mean and variance [2])가 이미지 style에 대한 직접적인 descriptor로 사용될 수 있음을 보였습니다. 특히 Instance Normalization (IN)은 content 이미지의 feature statistics를 직접 normalize함으로써 style variation을 제거하는 효과를 가져왔고, style transfer 분야에서 Batch Normalization (BN)을 대체하는 normalization 모듈로 활발히 적용되고 있습니다. 그러나 IN은 원본 이미지의 중요한 style 정보까지 normalize 해버리기 때문에, 일반적인 object classification 에서는 BN 보다 훨씬 낮은 성능을 보이는 것으로 알려져 있습니다.

저희가 제안하는 Batch-Instance Normalization (BIN)은 이미지로부터 불필요한 style만 선택적으로 normalize하고 중요한 style은 보존하기 위한 방법입니다. 이 때 style 정보의 중요도는 주어진 문제에 대해 adaptive하게 결정됩니다. BIN은 기존의 BN 기반 neural network에 간단히 적용될 수 있으며, 다양한 영상 인식 문제에서 BN보다 더 향상된 성능을 보여줍니다. 또한 style transfer 에서도 기존의 IN을 쉽게 대체할 수 있으며, IN보다 좀 더 개선된 결과를 생성합니다.


Batch-Instance Normalization (BIN)

BN은 input tensor의 feature statistics (mean and variance)를 batch 단위로 normalize하기 때문에 instance-level style variation을 어느 정도 보존할 수 있습니다. 반면 IN은 instance 단위로 normalize를 수행하여 instance-level style variation을 제거하게 됩니다. 따라서 BN과 IN을 잘 결합하면 중요한 style은 유지하고 불필요한 style은 제거하는 효과를 가져올 수 있습니다. 이를 위해 BIN은 새로운 learnable parameter인 ρ를 도입합니다.bin1여기서 \hat{\mathbf{x}}^{(B)}\hat{\mathbf{x}}^{(I)}는 각각 batch-normalzed response와 instance-normalized response를 의미하며, γβ는 affine transformation parameters, \mathbf{y}는 output입니다. ρ의 값은 parameter update (e.g. gradient descent) 과정에서 아래와 같이 [0, 1] 범위로 bound됩니다.bin2여기서 η는 learning rate, Δρ는 parameter update vector (e.g. gradient)를 의미합니다. 이러한 formulation에서 ρ는 각 feature channel에 대한 style gate의 역할을 수행합니다. 특정 channel이 주어진 문제에 중요한 style을 encode하는 경우, ρ는 1에 가까운 값을 갖도록 학습되고 BN을 사용하여 해당 channel의 style을 보존하게 됩니다. 반면 불필요한 style을 encode하는 channel의 경우, ρ값이 0에 가까워지도록 학습되고 IN을 사용하여 해당 style을 normalize하게 됩니다.

bin_diagram
 Diagram of Batch-Instance Normalization. The style gate determines the proper normalization method based on the importance of the style information.

Experiment

논문에서는 object classification, multi-domain task, style transfer에서 다양한 방면의 실험과 분석을 통해 BIN의 효과를 입증하였습니다. 이 포스트에서는 object classification과 style tranfer에서의 결과를 간단히 소개합니다.

1. Object Classification

Residual Network를 기반으로, CIFAR-10/100 및 ImageNet에서 BN과 BIN의 object classification 성능을 비교한 결과는 아래와 같습니다.expt1_1세 데이터셋 모두 BIN이 BN보다 뛰어난 성능을 보여줍니다. 이를 좀 더 자세히 분석하기 위해, BN, IN, BIN 및 BN+IN (BN과 IN의 단순한 앙상블. i.e. ρ=0.5) 의 학습 그래프를 비교하였습니다.expt2_2.pngIN 및 BN+IN은 BN보다 낮은 성능을 보이는 반면, BIN은 BN보다 향상된 성능을 보이고, 학습 속도도 빨라지는 것을 확인할 수 있습니다. BN+IN과 BIN의 비교 결과는 BIN로 인한 성능 향상이 단순히 BN과 IN의 앙상블 효과가 아니라, 불필요한 style만 선택적으로 제거한 결과임을 입증합니다.

추가적으로 ResNeXt, DenseNet 등 다양한 CNN architecture에 BIN을 적용한 결과는 다음과 같습니다.expt1_4.pngBIN은 다양한 architecture에서 BN보다 높은 성능을 나타냅니다. 이는 BIN의 확장성을 입증함과 더불어, BIN이 가져오는 효과가 단순히 layer를 깊게 쌓거나 복잡한 architecture를 쓰는 것만으로 대체될 수 없다는 것을 의미하기도 합니다.

2. Image Style Transfer

BIN이 BN 뿐 아니라 IN의 역할도 대체할 수 있음을 보이기 위해 image style transfer 실험을 진행하였습니다. Fast style transfer network 에 BN, IN, BIN, BN+IN을 적용했을 때의 content loss 및 style loss 학습 그래프는 아래와 같습니다. expt3_1BN은 나머지 방법들보다 훨씬 큰 loss를 보이는 반면, IN과 BIN은 그보다 크게 감소된 content loss 및 style loss를 생성합니다. BN+IN은 IN 및 BIN 보다 큰 style loss를 생성하는데, 이는 BN+IN이 content 이미지의 불필요한 style을 제대로 제거하지 못하기 때문일 것입니다. BIN은 content 이미지의 style을 완전히 제거하지는 않기 때문에 IN에 비해 style loss는 약간 증가하지만, 이미지의 중요한 style을 보존할 수 있기 때문에 content loss가 약간 감소하는 효과를 얻을 수 있습니다. 이는 다음과 같은 style transfer 결과를 통해서도 확인할 수 있습니다. expt3_2IN과 BN+IN은 content 이미지의 style을 거의 반영하지 못하고 부자연스러운 결과를 생성하기도 하지만, BIN은 content 이미지의 중요한 style을 보존하면서 style transfer를 수행하기 때문에 좀 더 자연스러운 결과를 얻을 수 있습니다. 더 많은 예는 논문에 제시되어 있습니다.


Conclusion

Deep neural network를 학습하는 데 있어서 normalization의 중요성은 꾸준히 연구되어 왔고, 그 중 BN은 현재 딥러닝에 거의 필수적인 툴로 활용되고 있습니다. Batch re-normalization, Layer normalization, Group normalization 등의 새로운 normalization 기법들은 주로 BN의 minibatch dependency를 개선함으로써 제한된 환경에서 BN보다 향상된 결과를 얻었지만, 아직까지 어떤 방법도 BN만큼 포괄적인 활용성을 보여주지는 못하고 있습니다. 이 논문에서는 제안하는 BIN은 매우 간단하지만 BN을 개선하는 데 있어서 새로운 관점을 제시하며, 폭 넓은 분야에서 그 효과를 입증합니다. 향후 BIN에 기반한 연구가 저희의 주 연구 분야인 medical image analysis를 포함한 다양한 computer vision 영역에 도움을 줄 수 있을 것으로 기대하고 있습니다.


Reference

[1] Leon A Gatys et al., Image style transfer using convolutional neural networks. CVPR, 2016.

[2] Xun Huang et al., Arbitrary style transfer in real-time with adaptive instance normalization. ICCV, 2017.

 

Posted by:hyeonseob

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s