[ECCV 2018] Piggyback: Adapting a single network to multiple tasks by learning to mask weights 핵심 리뷰

This entry is part 8 of 22 in the series Incremental Learning

내용 요약

기존의 distillation + exemplar방식에 binary masking 방법을 추가한 incremental learning 방법론을 제안합니다. PackNet과는 달리 직접 Pruning을 학습하지 않고 Task별 binary masking을 학습하는 방법을 사용합니다.

1. 들어가며

이번 글에서는 ECCV 2018에서 발표된 Piggyback: Adapting a single network to multiple tasks by learning to mask weights 논문을 리뷰합니다. 이 논문은 Piggyback 이라고 불리며, 이번 글에서도 Piggyback 이라 지칭하겠습니다.

전체-흐름-속에서-보기
그림1. Incremental Learning 전체 흐름

Incremental Learning을 방법론에 따라 크게 구분하면 위의 그림과 같이 구분할 수 있습니다.

  • Regularization : 이전 task에서 학습한 네트워크의 파라미터가 최대한 변하지 않으면서 새로운 task를 학습하도록 유도
  • Distillation : 이전 task에서 학습한 파라미터를 새로운 task를 위한 네트워크에 distillation
  • Distillation + Memory : 이전 task의 데이터를 소량 메모리로 두고 새로운 task학습 때 활용
  • Distillation + Memory + Bias correction : 새로운 task에 대한 bias를 주요 문제로 보고, 이에 대한 개선에 집중
  • Distillation + Memory + Dynamic structure : task에 따라 가변적으로 적용할 수 있는 네트워크 구조를 사용
  • Distillation + Memory + Generative model : 이전 task의 데이터를 generative model을 사용하여 replay 하는 방식을 사용
  • Dynamic structure : Pruning / Masking 등을 사용하여 task별로 사용할 파라미터 또는 네트워크 등을 정해줌

Piggyback은 Dynamic structure에 해당하는 방법 중 하나입니다.

2. 제안 방법

바로 제안 방법을 살펴보겠습니다.

image 12
그림2. Piggyback 제안 방법

가장 직접적으로 비교되는 모델은 PackNet입니다.
PackNet과 결정적으로 다른 점은 PackNet은 pruning을 통해 task별 사용할 파라미터를 정한 반면, Piggyback은 binary masking을 통해 task별로 사용할 파라미터를 정한다는 것입니다.

2-1. Real valued masking

먼저 masking 방법을 살펴보겠습니다.

  • 실수 값을 갖는 mask 벡터를 만들기
  • parameter와 연산
  • output에 대해 threshold를 적용하여 0,1 binary masking

이렇게 해서 task별 학습이 완료되고 사용할 파라미터가 정해지면 최종적으로는 threshold가 적용되어 나온 binary masking 벡터만 사용합니다.

2-2. Elementwise masking

최종적으로는 pretrained backbone network에 elementwise binary masking 벡터를 연산해줌으로써 pruning과 비슷한 효과를 냅니다.

3. 실험 결과

다음은 이렇게 제안한 방법의 실험 결과를 살펴보겠습니다.

3-1. New fine grained classification tasks

먼저 ImageNet으로 학습한 뒤 다양한 fine grained classification을 수행한 결과입니다.

ImageNet-fine-grained-classification-결과
그림3. ImageNet fine grained classification 결과

비교 대상은 다음과 같습니다.

  • Classifier Only : feature extractor는 ImageNet pretrained 상태로 fix 한 뒤 classifier만 해당 task로 학습
  • PackNet : Pruning 방식
  • Ours
  • Individual Networks : 각각의 task마다 새로운 네트워크로 fine tuning, upper bound 역할

결과를 보면 PackNet 방식은 task를 추가할수록 성능이 눈에 띄게 하락하는 모습을 볼 수 있습니다. 이는 task가 추가될 때마다 pruning을 수행하며 사용할 수 있는 파라미터가 줄어들기 때문입니다. 반면 Piggyback은 individual networks 방식 보다도 높은 성능을 내는 모습을 볼 수 있습니다.

3-2. Adding a large scale dataset to an ImageNet

다음은 ImageNet으로 학습한 뒤 대형 데이터셋을 추가로 학습했을 때의 결과입니다.

ImageNet-대형-데이터셋-추가-결과
그림4. ImageNet 대형 데이터셋 추가 결과

비교 대상은 다음과 같습니다.

  • Jointly Trained Network : 두 개의 데이터셋을 통합한 뒤 하나의 네트워크로 학습
  • PackNet : Pruning 방식
  • Ours
  • Individual Networks : 각각의 task마다 새로운 네트워크로 fine tuning, upper bound 역할

결과를 보면 Piggyback 방식은 Individual Networks 방식에 비해 절반 사이즈의 모델로 거의 동등한 수준의 성능을 내는 모습을 볼 수 있습니다.

3-3. Other network architectures

다음은 다른 network architecture를 사용했을 때의 성능 비교입니다.

다른-network-architecture-성능-비교
그림5. 다른 network architecture 성능 비교

결과를 보면 더 깊은 모델(ResNet-50, DenseNet-121)을 사용할수록 Individual network와의 성능 차이가 커지는 모습을 볼 수 있습니다.

4. Ablations

다음은 ablations를 살펴보겠습니다.

4-1. Effect of initialization

먼저 첫 학습 데이터에 따른 성능 비교입니다.

effect-of-initialization
그림6. effect of initialization

결과를 보면 ImageNet으로 학습했을 때의 성능이 가장 좋습니다. 이는 ImageNet이 그만큼 다양한 feature 특성을 갖고 있기 때문으로 해석됩니다.

4-2. Percentage of zero of binary mask

다음은 데이터셋에 따른 binary mask에서 0의 비중입니다.

percentage-of-zero-of-binary-mask
그림7. percentage of zero of binary mask

결과를 보면 어려운 문제일수록 0의 비중이 더 큰 모습을 볼 수 있습니다. 또한 ImageNet init보다 Places init 일 때 0의 비중이 더 큰데, 이는 ImageNet에서 배운 feature가 더 다양해서 그만큼 필요한 변화량이 적기 때문입니다. 또한 더 깊은 layer일수록 더 많은 비중의 0이 필요한 모습을 볼 수 있습니다.

4-3. Effect of task specific batchnorm

다음은 task specifir batch norm에 대한 실험 결과입니다.

effect-of-task-specific-batchnorm
그림8. effect of task specific batchnorm

결과를 보면 fixed batchnorm보다 trained batchnorm의 성능이 더 좋은 모습을 볼 수 있습니다. 이는 ImageNet과 다른 데이터셋과의 domain shift를 task specific batchnorm이 커버해주기 때문으로 해석할 수 있습니다.

Series Navigation<< [NIPS 2018] Memory Replay GANs: learning to generate images from new categories without forgetting(MeRGAN) 핵심 리뷰[ECCV 2018] End-to-End Incremental Learning (EEIL) 핵심 리뷰 >>
0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x
Scroll to Top