7 분 소요

image

“Unsupervised Model Drift Estimation with Batch Normalization Statistics for Dataset Shift Detection and Model Selection” 논문을 개인 공부 및 리뷰를 위해 쓴 글입니다.
논문 출처 : https://arxiv.org/abs/2107.00191




1. Introduction

  • 테스트 데이터에서의 입력과 출력 데이터의 결합 확률(joint probability)이 훈련 데이터와 다른 dataset shift 문제는 배포 후(post-deployment) 단계 동안 심층 신경망의 성능을 심각하게 하락시킨다.
    • 또한, 많은 실제 데이터는 non-stationary 환경에서 빈번하게 변한다.
  • 하지만, 사람이 새롭게 들어오는 데이터를 주석을 달거나 꾸준히 검사하는 것은 거의 불가능하기 때문에, 타겟 데이터셋으로부터 비지도 방식으로 model drift를 측정하는 것은 바람직하다.
  • data shift 문제는 주석(annotation) 없이 테스트 에러를 예측해야 되며 모델 파라미터에만 따라 타겟 데이터셋의 불일치를 측정하는 것은 연구대상이다.


  • 전이 학습(Transfer Learning)에서, 테스트 에러를 예측하는 것은 모델 선택(model selection) 관점에서 타겟 데이터를 위해 가장 유사한 inductive biases를 가진 모델을 선택하는 것 또한 고려되어야 한다.
    • 전이 학습(Transfer Learning) : 학습 데이터가 부족한 분야의 모델 구축을 위해 데이터가 풍부한 분야에서 훈련된 모델을 재사용하는 학습 기법 1
    • 이미 학습된 많은 모델은 적용하려는 데이터가 학습할 때의 데이터와 같은 분포를 가진다고 가정으로 했을 때 효율적이다.
    • 즉, 이미 잘 훈련된 모델이 있고, 만드려는 모델과 유사한 문제를 해결하는 모델일 경우 전이 학습을 사용한다. 1
  • 오픈 데이터셋과 model zoo 덕분에, 미세 조정을 위해 베스트 초기화를 가진 모델을 선택하는 것은 더 중요해지고 있다.
    • 이전에 만든 모델의 가중치를 가져와 추가적으로 새로운 과제에 맞게 조정한다면 모델을 아예 처음부터 새로 훈련하는 것보다 훨씬 더 빠르게 수렴하여 학습 속도도 빠르고 우수한 성능을 발휘할 수 있다. 2
    • 미세 조정(fine-tuning) : 기존에 학습되어져 있는 모델을 기반으로 아키텍쳐를 새로운 목적에 맞게 변형하고 이미 학습된 모델 weights로부터 학습을 업데이트하는 방법 1
      • 모델의 파라미터를 미세하게 조정하는 행위
      • fine tuning 한다고 하면, 기존에 학습이 된 레이어에 데이터를 추가로 학습시켜 파라미터를 업데이트 해야 한다.
  • 그리고, covariate shift를 최소화하기 위해, 훈련 궤적(trajectory) 중 가장 유사한 checkpoint를 선택하는 것이 바람직하다.


  • DNN에 대한 한계 우도(marginal likelihood)를 계산하는 것은 다루기 힘들기 때문에, 베이지안 추론(bayesian inference)은 inductive biases를 측정하기 위한 해결책이 될 수 없으며, 가변 베이즈 방법 또한 비싼 계산때문에 실현하기 어렵다.


    이미지 출처3

    • 우도(가능도, likelihood): 어떤 특정한 값을 관측할 때, 이 관측치가 어떠한 확률분포에서 나왔는가에 관한 값 4
    • 베이지안 추론(bayesian inference): 사전 분포(prior probability)에 대해서 알고, 데이터에 대한 적절한 가정을 알 수 있다면 사후분포(posterior probability)를 알 수 있다.
  • 훈련하는 동안 지수평균 이동과 함께 데이터의 통계를 축적하고 각 표현 계층의 입력을 테스트할 때 통계치에 의해 정규화하는 배치 정규화(BN)의 동작에 영감을 받아, BN 레이어에서 학습가능한 파라미터와 평가를 실행하여 타겟 데이터셋으로부터 model drift를 측정한다.
  • 저자들의 기여를 요약하면 다음과 같다.
    1. 원본 훈련 데이터나 주석이 달린 타겟 데이터의 라벨에 접근이 필요하지 않는 새로운 model drift estimation(MDE)를 도입한다.
    2. covariate shift와 concept shift가 존재하는 dataset shift에서 MDE 방법이 효과적임을 입증한다.
    3. concept shift로부터의 복구와 model zoo로부터 미세 조정을 위한 model selection 관점에서 MDE 성능을 평가한다.



Dataset Shift Detection

  • 입력과 출력의 결합 분포(joint probability)가 train과 test 사이에 다른 것을 dataset shift로 정의했다.
    • 결합 분포(joint probability): 확률 변수가 여러 개일 때 이들을 함께 고려하는 확률 분포 5
  • dataset shift를 수식으로 정의하면, $P_{tr}(x,y) \ne P_{te}(x,y)$
  • covariate shift는 $P_{tr}(x) \ne P_{te}(x)$ and $P_{tr}(y\vert x) = P_{te}(y\vert x)$ 일 때 발생한다.
    • 입출력 규칙(주어진 입력에 대하여 출력의 생성규칙)은 훈련시와 테스트시에 다르지 않지만, 입력(covariate)의 분포가 훈련시와 테스트시에 다른 상황을 말한다. 6
  • concept shift는 $P_{tr}(x) = P_{te}(x)$ and $P_{tr}(y\vert x) \ne P_{te}(y\vert x)$ 일 때 발생한다.
  • 보통 머신 러닝 실무자들은 concept shift를 감지하는 데 실패하는 데, 라벨 정보가 충분치 않기 때문이다.


Model Selection

  • 타겟 데이터셋과 모델 파라미터의 inductive biases가 유사한 가장 적합한 모델을 선택해야 한다.
    • bias: 타겟과 예측값이 얼마나 멀리 떨어져 있는지 여부 7
    • inductive bias: 주어지지 않은 입력의 출력을 예측하는 것. 즉, 보지 못한 데이터에 대해서도 귀납적 추론이 가능하도록 하는 알고리즘이 가지고 있는 가정의 집합 7
  • 다시 말해, 전이 가능성 추정(transferability estimation)은 타겟 데이터셋에 대해 훈련 없이 모델을 선택하는 것을 목표로 하며, 특히 작은 훈련 데이터셋으로 짧은 훈련일 경우 전이 가능성은 더 높은 정확도로 이어진다.
    • 전이 가능성 추정(transferability estimation)은 소스 모델을 타겟 작업으로 전송할 때 성능이 얼마나 좋은지 예측하는 전이 학습(transfer learning)에서 필수적인 문제이다. 8
  • 전이 가능성을 평가하기 위해
    • Cui et al.은 소스와 타겟 데이터셋 사이의 도메인 유사성을 직접 측정했다.
    • Representation similarity analysis (RSA)는 사전 학습된 모델과 타겟 데이터셋에서 훈련된 모델과의 특징의 비유사도 메트릭을 비교했다.
    • Nguyen et al.은 forward-passing 타겟 데이터에서 모델과 타겟 레이블로 수도 레이블 사이의 조건부 교차 엔트로피에서 log expected empirical prediction (LEEP) 메트릭을 제안했다.
    • Deshpande et al.은 neural tangent kernel에서 영감을 받은 모델 파라미터의 선형화로 미세 조정 역학(dynamics)을 근사화하고 타겟 데이터셋의 그라디언트와 라벨로부터 유사성을 계산했다.
    • Lyle et al은 훈련 속도와 베이지안 추론으로부터의 한계 우도 사이의 관계성을 묘사했다.
    • Ueno & Kondo는 비지도 feature map sparsity analysis(FSA)를 포함한 model selection을 위해 몇가지 메트릭을 제안했다.



3. Model Drift Estimation

  • BN 계층이 학습 가능한 파라미터와 실행 추정치(running estimates)에 대한 훈련 데이터의 통계를 모두 포착한다는 가정 하에, 저자들은 BN 계층의 통계를 활용하여 학습된 모델 맥락에서 타겟 데이터로부터 훈련 데이터의 불일치를 추정한다.
  • 제안된 MDE는 테스트 에러를 단일 라벨링되지 않은 데이터를 전달하는 단일 포워드로 효과적으로 추정한다.


3.1 Batch Normalization

  • BN 동작은 미니 배치 내의 각 입력 특징을 평균 0 및 단위 분산을 갖도록 정규화함으로써 DNN 훈련 중에 파라미터 공간의 optimization landscape를 부드럽게 해준다.
  • 특히, 비전(vision) 태스크 경우 안정성과 수렴 속도를 얻기 위해 대부분 신경망에 BN 계층을 포함시킨다.
    • 학습률을 높이면 가중치의 scale이 커지게 되는데, BN을 쓰면 scale을 정규화하여 발산을 방지해준다. 6
      • 가중치의 scale이 점점 커지게 되면 기존에 학습하였던 분포와는 다른 분포를 가지게 된다.
  • 채널 수 $C$로 미니배치 $n$의 입력 특징 벡터를 $x^n=[x_1^n,x_2^n,…,x_C^n]$로 정의하자.
  • BN 계층은 실행 추정치들을 저장함으로써 입력 특징 벡터를 정규화한다.
    • 모델 훈련 단계에서 사용한 각 N개의 미니 배치에 대한 평균과 분산을 이용해 전체 훈련 데이터셋의 평균과 분산을 대신한다.
    • 모두 저장할 수 없기 때문에 미리 저장해둔 N개의 미니 배치의 이동 평균을 사용하여 해결한다.
    • 매 미니배치마다 구해뒀던 이동 평균과 분산을 메모리에 기억해놔야 테스트시 모델 훈련 단계에서 저장했던 이동 평균을 재사용할 수 있다. 9
  • $y_c^n=\gamma_c \frac{x_c^n-\mu_c}{\sigma_c}+\beta_c$
    • $\gamma$, $\beta$ : 학습가능한 파라미터
    • $\mu_c$, $\sigma_c$ : 훈련하는 동안 지수 이동 평균(exponential moving average)으로 계산되는 실행 추정치(running estimates)
      • 지수 이동 평균(exponential moving average): 최근에 높은 가중치를 주지만, 오래된 과거도 비록 낮은 영향력이지만 가중치를 부여하도록 고려한 방법 10
      • 수식으로 표현하면 $\mu=\alpha\mu+(1-\alpha)\mu_B,$ $\sigma=\alpha\sigma+(1-\alpha)\sigma_B$ 11
    • 보통 BN은 activation 전에 배치되는데 relu 경우 음의 영역은 모두 0이 되므로 정보의 반을 모두 잃어버린다. $\gamma$와 $\beta$를 사용하여 더 많은 영역을 activation 값으로 가져갈 수 있게 해준다. 12
  • 즉, 소스 데이터의 통계가 실행 추정치에 암묵적으로 포함된다고 추론하고 라벨 정보 없이 모델의 소스 데이터와 타겟 데이터의 통계를 비교하여 모델 불일치를 측정할 수 있다.


3.2 Model Drift Score Based on Batch Normalization Statistics

  • model drift는 보통 소스와 타겟 사이의 분포적인 shift로부터 온다.
    • 모델은 소스로부터 훈련되지만, 모델은 타겟에 배포가 된다.
  • 실행 추정치들은 소스 데이터의 통계를 축적하여 추론 시간을 위해 활용된다는 사실로부터, Bn 계층은 암묵적으로 소스 데이터로부터 타겟 데이터의 불일치를 추정하는데 도울 수 있다.
  • BN 계층 $l$의 제안된 drift 점수는 다음 수식으로부터 얻을 수 있다.
  • $d^{(l)}=\frac{1}{NC}\sum_{n=1}^N\sum_{c=1}^C$ $Dist(\frac{x_c^{n,(l)}-\bar u_c^{n,(l)}}{\bar \sigma_c^{n,(l)}}, \frac{y_c^{n,(l)}-\beta^{n,(l)}}{\gamma_c^{(l)}})$
    • $n$ : mini-batch
    • $\bar \mu_c^n, \bar\sigma_c^n$ : mini-batch $x^n$의 평균과 표준 편차
    • $Dist(a,b)$ : 벡터 a, b 사이의 거리 메트릭(측정)
      • b 부분은 BN 계층의 소스(source)에 대한 정보를 포함
      • a 부분은 타겟(target)의 정보를 포함
      • 따라서, 오직 모델 파라미터만 사용해서 타겟 데이터로부터 소스 데이터셋의 불일치를 암묵적으로 비교한다.
  • 전체 모델 불일치는 모든 계층의 평균을 취함으로써 계산된다.
    • $D=\frac{1}{L}\sum_{l=1}^Lw^{(l)}d^{(l)}$
      • 가중치 $w^{(l)}\in [0, 1]$는 다른 계층과 비교하여 BN 계층 $l$의 상대적 중요성을 가리킨다.
      • 가중치는 훈련 단계 동안 그라디언트의 크기 또는 가중치와 그라디언트의 L2-규범 비율에 비례하여 설정할 수 있다.
      • 이 논문에서는 모든 계층에 $w^{(l)}$을 1로 설정했다.
  • 계층 $l$의 입력 특징 벡터가 독립적이고 평균 $\bar \mu_c^{(l)}$와 표준 편차 $\bar\sigma_c^{(l)}$를 가진 가우시안 분포를 따르는 i.i.d 랜덤 변수라 가정할 때, 식의 왼쪽부분은 평균 0, 단위 분산을 가진 가우시안 분포를 따르고, 오른쪽 부분은 다음을 따른다.
    • $\frac{y_c^{n,(l)}-\beta^{n,(l)}}{\gamma_c^{(l)}}$ $\sim N(\frac{\bar \mu_c^{n,(l)}-u_c^{(l)}}{\sigma_c^{(l)}},(\frac{\bar\sigma_c^{n,(l)}}{\sigma_c^{(l)}})^2)$
  • Drift score는 가우시안 분포를 따르는 두 랜덤 변수 사이의 거리를 비교하여 근사화하고, 거리 메트릭은 wasserstein distnace로 단순화된다.
    • $d^{(l)}=\frac{1}{NC}\sum_{n=1}^N\sum_{c=1}^C$ $\frac{(\bar \mu_c^{n, (l)}-\mu_c^{(l)})^2 + (\bar \sigma_c^{n, (l)}-\sigma_c^{(l)})^2}{(\sigma_c^{(l)})^2}$
    • wasserstein distance : 두 확률분포의 연관성을 측정하여 그 거리의 기대값이 가장 작을 때의 거리 13


  • 입력 특징 벡터가 i.i.d라는 가정 없이, BN 계층 $l$의 drift score는 코사인 거리같은 전통적인 거리 메트릭으로 계산될 수 있다.
    • $CosDist(a,b)=(1-a\cdot b/\Vert a \Vert\Vert b \Vert)/2$



3.3 Low-Rank Approximation of Representation Layer

  • 각 표현 계층 출력의 차원 축소를 달성하기 위해 낮은 순위 근사치(low-rank approximation)를 추가로 적용한다.
  • 낮은 순위 근사치는 입력 기능의 필수 정보를 캡처하는 불변(invariant) 부분 공간을 보존하는 반면 중복성은 거부한다.
  • 저자들은 특이값 분해(SVD)를 각 BN 계층 $l$의 입력 특징 벡터 $x^{n,(l)}$에 적용했다.
  • $\hat x^{n,(l)}=U\hat D V^T$
    • $R_{tr}$ 절단 비율
    • $\hat D=Diag([\sigma_1,\sigma_2,…,\sigma_{R_{tr}{min(C,HW)}},0,…,0])$
  • $\gamma$ 곱셈과 $\beta$ 덧셈의 BN 동작은 샘플링 에러를 포함하여 신호를 증폭하여 전달하여 drift 측정의 성능을 저하시킬 수 있다는 점에 유의할 필요가 있다.
  • low rank approximation를 적용함으로써 하락을 극복하고 MDE의 신뢰를 높였다.



4. Experimental Results

  • 이미지 분류에서 covariate shift와 concept shift 타입에서 제안된 MDE의 평가를 수행했고, 정확도와 drift 점수 사이의 선형 모델링을 보여줌으로써 낮은 차원 근사를 가진 MDE 성능을 분석했다.
  • 제안된 MDE를 베이지안 및 NLL, Brier 점수 및 ECE를 포함한 비베이지안 드리프트 감지 메트릭과 비교한다.
  • 그런 다음 두 가지 모델 선택 문제에서 MDE의 성능을 검증한다. 하나는 concept drift에 따른 훈련 궤적에서 모델을 선택하는 것이고, 다른 하나는 다른 소스 데이터셋에 대해 훈련된 모델을 포함하는 model zoo에서 가장 실현 가능한 모델을 선택하는 것이다.
  • FSA의 모델 선택 성능과 비지도 방식인 랜덤 선택을 조사한다.
  • 그리고, 지도 방식인 DSA, RSA, LEEP와 MDE를 비교한다.


4.1 Performance Analysis over Dataset Shift

image


Covariate Shift

  • 성능은 방해에 따라 하락할 때, 제안된 MDE는 drift 점수가 증가함에 따라 covariate shift를 확인한다.


Concept Shift

  • concept drift는 모델이 CIFAR-10에서 훈련되었지만, 모델이 SVHN 데이터셋에 배포될 때를 말한다.
  • 제어 가능성(controllability)을 만들고 이 테스트 시나리오를 평활화(smoothing)하기 위해, 중복 확률을 조정하여 전체 데이터셋을 클래스 정보에 따라 훈련 데이터와 테스트 데이터로 나누는 새로운 프레임워크인 중첩 테스트(overlapping test)를 제안한다.

image

  • CIFAR-100의 데이터 수 50k로, 중복 확률이 0:33일 때, 훈련 데이터 수 30k와 검증 데이터 30k는 각각 60개의 클래스로 구성되어 훈련 데이터와 검증 데이터 사이에 20개의 클래스가 중복된다.
  • 그림 3은 성능 격차와 드리프트 점수 사이의 선형 모델링을 보여준다.
  • MDE의 drift 점수는 테스트 에러를 추정하는 데 도움이 되지만, 소스 데이터와 타겟 데이터에 대해 훈련된 모델 간의 작은 성능 차이를 구별할 수 없어 보인다.
  • 그리고 제안된 MDE의 안정성이 낮은 순위 근사치의 높은 변동으로 인해 저하되는 것을 관찰할 수 있다.
    • 이는 낮은 순위 근사치가 입력 특징 벡터의 필수 정보를 포함하는 불변 부분 공간을 방해하기 때문이다.



4.2 Performance Analysis over Model Selection

Recovery from Concept Shift

image

  • 위 그림은 매 30 에폭마다 dataset shift가 발생할 때 MDE의 실제 사용의 예시이다.
  • dataset shift가 발생하면, MDE의 drift 점수는 올라가고, 이때 20개의 다른 모델 후보들로부터 가장 작은 drift를 가진 모델을 선택한다. 근데 그 모델 후보들은 dataset shift로부터 자동 복구를 위해 다른 데이터셋으로 훈련되었다.
  • 각 소스 데이터에 최적화된 이전에 훈련된 모델들 중에서 가장 작은 drift score를 산출하는 모델을 선택하여 concept drift에서 자동 해결책을 구현한다.


Model Selection among Model Zoo

  • 8개의 다른 데이터셋을 준비하여 소스 데이터셋 $i$의 훈련 데이터셋과 타겟 데이터셋 $j$에 미세 조정을 한 64쌍을 생성한다.
    • 모델은 Resnet-50을 사용했다.
  • 그림의 왼쪽 : 타겟 데이터셋에서 1 에폭 훈련 당 사전훈련된 모델의 정확도
  • 그림의 오른쪽 : 타겟 데이터셋에서 사전 훈련된 모델의 drift score


image

  • 제안된 MDE는 모델 선택을 위한 지도 접근법에 대해 상당히 경쟁적인 반면, 타겟 데이터셋의 추가 라벨 정보를 필요로 하지 않았다.


Consistency Analysis on Various Model Architectures

image

  • 위 실험결과로 알 수 있듯이, 제안된 MDE는 VGG-19, Resnet-50, Mobilenet-v2 같은 backbone 아키텍처에서도 일관성있게 보였으며, 이는 다른 소스 데이터셋에서 훈련된 다른 아키텍처를 포함한 model zoo로부터 가장 적합한 모델을 선택하는 데 유용하다고 할 수 있다.





References

댓글남기기