z [논문 리뷰] : Manifold Mixup : Better Representations by Interpolating Hidden States
본문 바로가기

Others

[논문 리뷰] : Manifold Mixup : Better Representations by Interpolating Hidden States

728x90

시작하면서..

이전 포스트에서는 mixup에 대해 공부 했었습니다.
이번에는 이에 대한 연장선에 있다고 할 수 있는 Manifold Mixup에 대해 정리하겠습니다.

Abstract

Deep Neural Network는 train set과 test set이 slightly different 하면, 부정확한 결과를 내곤 합니다.
논문에서는 이에 대한 해결책으로 간단한 regularizer이며 덜 confident하게 predict 할 수 있도록 하는 Manifold Mixup을 소개합니다.

Introduction

Deep Neural Network는 여러 분야에서 SOTA Backbone으로 사용되고 있습니다. 하지만 deep neural network는 training set과 비슷한 instance에 대해서만 성능이 뛰어납니다. 약간 다른 distribution에 대해서는 높은 confidence로 잘못 예측합니다.

논문에서는 SOTA networks의 decision boundaries와 hidden representations에 대해 고려할만한 두가지 문제를 제시합니다.

  • decision boundary가 data와 가깝거나 sharp할 수 있음.
  • hidden representation space의 대부분은 높은 confidence predictions에 대응함.

이러한 직관들에 motivate된 Manifold Mixup은 hidden representation의 linear combination에 대해 Neural Network를 train 함으로써 이러한 결점들을 다루는 간단한 regularizer입니다.

embedding과 같이 high level representations는 low dimensional하고 linear classification에 유용하기 때문에 hidden representaion에 대해 linear interpolations는 feature space의 의미있는 region을 탐색하게 합니다.

hidden representation의 사용을 위해 labels에도 same linear interpolation을 적용해줍니다.

Manifold mixup에는 세 장점이 있습니다.

  • decision boundary를 smooth하게 해줌.
  • hidden representation의 arrangement를 improve함. 이는 low confidence prediction에 대한 regions를 넓힘.
  • representations를 flatten함.

The central message of this paper

Manifold Mixup improves the hidden representations and decision boundaries of neural networks at multiple layers.

논문에서는 다양한 experiments를 통해 4개의 이점을 보여줍니다.

  • 다른 regularizers 보다 나은 generalization
  • test samples에 대한 log-likelihood improve
  • 형태가 일그러진 data predict 시의 성능이 높아짐.
  • adversarial attack에 대한 robustness 증가

Manifold Mixup

Notation
\(g_k(x)\) : k번째 layer의 input data
\(f_k()\) : k번째 layer의 mapping

Manifold Mixup에는 5단계가 있습니다.

  1. Set of eligible layers \(S\) 에서 random layer \(k\)를 선택합니다. (\(g_0(x)\) 포함 가능)
  2. two random data (minibatch) \((x,y),(x^\prime,y^\prime)\)를 선택한 layer 전까지 feed forward. \((g(x),y),(g(x^{\prime}),y^{\prime})\)
  3. 이 중간의 \((g(x),y),(g(x^\prime),y^\prime)\) 에 대해서 mixup(convex combination)
    \(Mix_\lambda(a,b) = \lambda a + (1-\lambda)b\)
    with (0\leq \lambda \leq 1)

    \(\lambda \thicksim Beta(\alpha, \alpha)\)
  4. mixed minibatch로 k번째 layer 부터 output까지 마저 feed forward 함.
    output : \((\tilde g_k,\tilde y):=(Mix_\lambda(g_\lambda(x),g_k(x^\prime)),Mix_\lambda(y,y^\prime))\)
  5. loss와 gradient 구해서 update

Manifold Mixup Flattens Representations

어떻게 Manifold Mixup이 hidden representation에 영향을 줄까요?
High level에서 Manifold Mixup은 class-specific representation을 flatten 할 수 있다고 합니다.

 

Theory

Manifold Mixup을 통해 어떻게 Neural Network의 representations가 바뀔까요?

만약 충분히 deep한 hidden layer에서의 Manifold Mixup이 이루어 졌다면, hidden layer의 dim(H)가 class num보다 크다고 가정했을 때 loss는 0이 될 수 있습니다.
이에 대한 결과로 resulting representations는 dim(H)-d+1의 차원을 갖음을 알 수 있습니다. 이에 대한 내용은 Fig. 3.과 Appendix F에 추가적인 설명이 있습니다.

Appendix F

Manifold Mixup의 essential motivation은 network가 hidden states를 학습해서 class 마다의 hidden state를 flatten 하는 것 입니다.

두 점 A,B에 대해서 (class가 두 개인 경우) interpolate point가 same label이면 100% confidence predict 일 것이고, different label이면 50%, 50%의 soft label을 갖을 것입니다.
하지만 실제로의 data points에는 각 다른 pairs와 다른 \(\lambda\)에 따라 many arrangements가 있을 것입니다.

훈련된 model은 \(p(y|h)\) distribution을 capture 하려고 할 것입니다. 그래서 labels에 대해 single distribution을 할당하게 됩니다. (A 50%, b 50% 인데 A만 100% 라고 말할 수 있음.)

interpolated points에서 이러한 inconsistent한 soft labels는 class들이 concentrate되어 있거나, representations가 다른 클래스를 가리키는 방향의 가변성이 없는 경우 피할 수 있습니다.

이는 곧 flattening을 이끌고, 이는 가변성 있는 방향에 대한 수의 reduction 입니다.

Empirical Investigation of Flattening

이 부분에서는 flattening theory가 실제 훈련 시에도 적용하는지를 보여드리겠습니다.
MNIST dataset에 대하여Manifold Mixup을 포함한 Neural Network을 학습 후 network에 대한 hidden representations에 SVD를 적용해보겠습니다.

모든 네트워크와 regularizers에 대해 class마다의 the largest singular value와 all other singular values를 first hidden layer을 기준으로 측정하였습니다.

  • The largest singular value
    • Baseline : 51.73
    • Weight decay : 33.76
    • Dropout : 28.83
    • Input mixup : 33.46
    • Manifold mixup : 31.65
  • The sum of all the other singular values
    • Baseline : 78.67
    • Weight decay : 73.36
    • Dropout : 77.47
    • Input mixup : 66.89
    • Manifold mixup : 40.98

위의 결과를 통해 weight decay, dropout, input mixup 모두 the largest singular value만 줄이지만, Manifold Mixup은 the sum of the all other singular values에 대해 reduction을 이뤄냈습니다.

Why is Flattening Representations Desirable?

왜 flattening이 바람직할까요?

  1. hidden representation이 훨 씬 더 작은 volume을 차지함.
  2. 정보 이론 문헌에 의하면 compression은 generalization과 연관이 깊음을 알 수 있음.
  3. 예전 실험에 의해 경험적으로 compression은 generalization과 연관이 깊은 것을 알 수 있음.
728x90