ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Delving into Deep Imbalanced Regression
    2021_Project/generalization 2022. 3. 22. 20:59

    데이터 불균형을 해결하는 연구들은 예전부터 많이 존재했다. 하지만 이들 중 대다수는 classification 문제에 focus 되어 있었으며 연속형 데이터를 다루는 regression에서의 데이터 불균형 문제 해결에 대해서는 제대로 다뤄지지 않았다. 그러던 도중 2021년에 소개된 "Delving into Deep Imbalanced Regression"이라는 논문을 접하게 되었고 불균형 연속형 데이터를 해결하는 방법인 label distribution smoothing (LDS)기법에 대해 알게되었다. 따라서 오늘은 위 논문을 리뷰하며 불균형 문제 해결방법에 대해 소개하도록 하겠다.

     

    보다 더 자세한 내용은 논문을 통해서, 혹은 아래 사이트에서 상세하게 알 수 있다.

    https://towardsdatascience.com/strategies-and-tactics-for-regression-on-imbalanced-data-61eeb0921fca

     

    Strategies and Tactics for Regression on Imbalanced Data

    Let me introduce to you our latest work, which has been accepted by ICML 2021 as a Long oral presentation: Delving into Deep Imbalanced Regression. Under the classic problem of data imbalance, this…

    towardsdatascience.com

     

    Delving into Data Imbalanced Regression

     

     

    1. Introduction

    Deep Imbalanced Regression(DIR)은 classification과는 다른 문제양상을 보인다. 우선 첫번째로 연속형 target value들의 경우, class들간의 경계가 모호하기 때문에 re-sampling과 re-weighting과 같은 전통적인 imbalanced classification 메소드를 적용시키기 어렵다. 게다가 연속형 label값은 본질적으로 target간에 유의미한 distence를 갖고 있는데 따라서 주변값의 분포에 따라 서로 다른 불균형을 지닌다. 예를들어 target label t1, t2가 모두 training data에서 관측이 적다고 가정하자. 또한 이때, t1은 주위에([t1-x, t1+x]) 많은 sample이 있는 반면 t2는 거의 적은 neighborhood를 갖는다고 해보자. 이렇게 될 경우 t1은 t2만큼의 불균형 문제를 겪지 않을 것이다.

    마지막으로 classification 문제와는 다르게 연속형 데이터는 특정 대상값에 대한 데이터가 아예 없을 수 있는데 이를 해결하기 위해 extrapolation과 interpolation이 필요하다.

    이를 해결하기 위해 논문에서는 두가지의 방법을 제시한다: (1)label distribution smoothing(LDS), (2)feature distribution smoothing(FDS). 두 방법 모두 커널 함수를 도입함으로 인접 데이터간의 유사성을 활용한다. 

     

    논문 저자들의 contribution은 아래와 같다.

    • We formally define the DIR task as learning from imbal- anced data with continuous targets, and generalizing to the entire target range. DIR provides thorough and unbiased evaluation of learning algorithms in practical settings.
    • We develop two simple, effective, and interpretable algo- rithms for DIR, LDS and FDS, which exploit the similarity between nearby targets in both label and feature space.
    • We curate benchmark DIR datasets in different domains: computer vision, natural language processing, and health- care. We set up strong baselines as well as benchmarks for proper DIR performance evaluation.
    • Extensive experiments on large-scale DIR datasets verify the consistent and superior performance of our strategies.

     

    3. Methods

     

    3.1  Label Distribution Smoothing (LDS)

    LDS는 같은 불균형 정도라도 연속형 데이터의 학습 결과는 범주형 데이터의 학습 결과와 다른 양상을 보인다는 점으로부터 시작되었다.

    논문의 저자들은 1) CIFAR-100, 2)IMDB-WIKI, 두가지 데이터셋을 관찰하였는데 전자는 100개의 class를 지니는 classification dataset이며 후자는 visual appearance로부터 age estimation을 하는 large-scale image dataset이다. 두 데이터는 서로 다른 label space를 갖는다: CIFAR-100은 target이 class index인 범주형 label space를 갖는 반면, IMDB-WIKI는 target이 age로 연속적인 label space를 갖는다. 논문에선 두 데이터가 같은 label range를 갖도록 IMDB-WIKI에서 age를 0~99로 제한하였으며 동일한 분포를 띄도록 subsampling하였다. 

    이렇게 만들어진 두 데이터를 가지고 각각 학습시켜보았을 때 CIFAR-100은 label 분포와 test error간의 pearson 상관계수가 -0.76을 지녔는데, 데이터가 적은 부분은 test error가 높고, 데이터가 많은 부분은 test error가 작은 양상을 보였다. 흥미로운 점은 IMDB-WIKI에서 발견할 수 있었다. IMDB에서는 error distribution이 더 이상 label 분포와 상관관계가 있지 않았으며(-0.47) error 분포가 더 smooth하게 나타났다. 이를 통해 범주형 데이터의 경우 error 분포가 label distribution에 반영이 되는 반면, 연속형 데이터의 경우에는 반영되지 않는 것을 알 수 있다. 

    이 예시가 흥미로운 이유 모든 불균형 learning method들은 경험적인 label 데이터(내가 학습시킨..) 분포 관점에서 불균형문제를 해결한다는 것이다. 이를 이용하면 범주형 데이터의 경우 잘 해결될 테지만, 연속형 데이터는 경험적인 분포가  imbalance를 정확히 반영하지 못하기 때문에 부정확할 것이다. (Empirical label distribution != Real label density distribution)

    위 예시는 연속형 데이터의 경우 경험적인 label distribution이 실제 label density 분포를 반영하지 못한다는 것을 보여준다. 이는 연속형 데이터은 인접 label간의 연속성 및 유사성을 갖고 있기 때문이다(연속형 데이터의 대표적인 특징!). 따라서 논문 저자들은 커널 밀도 추정을 활용하여 현재 경험적인 label 데이터 분포를 실제 데이터와 같게 smoothing하는 LDS 방법을 제안하였다.

    LDS는 경험적인 현재 데이터 분포에 symmetric kernel을 입혀 kernel-smoothed 버전을 추출해내며 주변 label들의 데이터 중복을 처리한다. 이때 symmetric한 kernel이란 원점에 대해 대칭이며 적분값이 1인 kernel을 말한다. Gaussian 혹은 Laplacian kernel이 이를 만족하는 대표적인 kernel이다. Symmetric kernel은 target space에서의 거리를 고려하여 target value y'와 다른 y간의 유사도를 보여준다. 따라서, LDS는 아래와 같이 effective label density distribution을 구한다.

    이때 p(y)는 training data에서 label y의 출현 빈도를, p ̃(y)은 label y'의 effective density를 의미한다.

    Fig 3은 LDS와 어떻게 label density distribution을 smoothing하는지 알려준다. 또한 위 그림을 보면 LDS로 구한 label density가 error 분포와의 상관계수가 높은 것(-0.83)을 알 수 있는데 이는 LDS가 실제 imblance를 잘 캡쳐했음을 보여준다.

    Effective label density를 구했다면, 이제 기존의 class imbalance problem에서의 테크닉들을 바로 DIR 문제에 적용할 수 있게 된다. 예를 들어 우리는 loss function을 1/ p ̃(y′)로 곱해주면서 re-weighting할 수 있게 된다.

     

    3.2 Feature Distribution Smoothing (FDS)

    위의 방법을 이용하여 저자들은 DIR문제를 해결하는데 있어서 label space에서의 continuity가 도움이 된다르는 것을 확인하였다. 저자들은 또한 target space에서의 연속성은 마찬가지로 이와 일대일대응하는 feature space에서의 연속성이 필요하다는 intuition을 얻었다. 다시 말하면, 만약 모델이 잘 작동하고 data가 균일하게 분포해 있다면, 서로 인접한 target들 간의 feature statistics는 서로 비슷한 양상을 보일 것이다. 

     

    다시 IMBD-WIKI 예제 문제로 돌아가보자. 우리는 이 데이터를 가지고 학습함으로써 인물 이미지 특징이 학습된 feature space(그림에서 z로 표현된)를 배울 수 있게 된다. 또한 해석을 위해 label space를 같은 간격의 bin으로 나눴다고 가정해보자. age estimation 문제에서, bin의 길이는 1이 될 것이다. (나이는 한살 간격으로 존재하니까...) 저자들은 feature들을 같은 bin내의 같은 target value를 지닌 것들끼리 그룹화하였다. 이후, 각각의 bin에 있는 데이터에 대해 feature statistic(i.e., mean and variance)를 구하였다.

    그다음 한 일은 feature statistic들간의 유사도를 시각화하는 것이였는데, 이를 위해 저자들은 b0이라 불리는 기준점(anchor bin)을 정하였으며 이 기준점에 대해 feature statistics를 구하였다. 다른 bin들에 대해서도 마찬가지로 statistic을 구한 이후, b0과 다른 bin들에 대해 feature statistics들간의 코사인 유사도를 구했으며 기준나이인 30살에 대한 결과를 아래와 같이 시각화하였다. 그리고 다른 data 밀도를 갖고 있는 구역을 효과적으로 보여주기 위해 서로 다른 색을 이용하여 구분지었는데, 데이터가 많은 부분은 many-shot, 중간부분은 medium-shot, 그리고 데이터가 거의 없는 부분은 few-shot이다.

    흥미로운 점은, 기준점(anchor bin) 근처에서의 feature statistic들은 서로 비슷하다는 것이다. 25살과 35살 사이의 모든 bin들의 feature mean, variance에 관한 코사인 유사도는 anchor age인 30살의 value들과 몇퍼센트 차이가 나지 않았다. 특히 이 부분은 many-shot 영역임을 확인할 수 있는데, 이로인해 충분한 데이터가 있다면, 연속형 target에 대해 인근 bin들은 비슷한 feature statistics를 갖는 것을 알 수 있다.

    하지만 [0,6]살 같은 매우 few-shot region에서도 비정상적으로 30살과 매우 높은 유사도를 지님을 확인하였다. 이는 data 불균형 때문에 발생한 문제로, 이 구간의 데이터에서는 특징을 잘 추출하지 못하고 가장 많은 수가 분포되어있는 30살 부분에 영향을 받은 것으로 보인다.

     

    이러한 관측을 토대로 저자들은 feature distribution smoothing (FDS)를 제안하였다. FDS는 feature space간에 distribution smoothing을 해주며 인근 target bin들간의 feature statistics를 transfer해준다. 이 과정은 적은 수의 타켓들과 같은 feature distribution들의 편향된 estimate을 교정해준다.

     

    FDS의 진행방법은 다음과 같다.

    1. 우선 각각의 bin에 대해 feature statistics를 구한다.
    2. z 내 feature 요소들 사이의 관계성을 반영하기 위해 분산을 공분산으로 대체한다.
    3. feature statistics들이 주어진 다음, 다시금 symmetric kernel k를 도입하여 target bin들의 feature mean, covariance 분포를 smoothing해준다.
    4. 각각의 input sample들의 feature representation을 교정하기 위해 표준 whitening과 re-coloring 작업을 진행한다.

    전체적인 FDS pipeline은 마지막 최종 feature map 이후에 feature calibration layer를 삽입함으로써 deep network에 부착한다. 또한, 학습 시 feature statistic에 대해 더 안정적이고 정확한 추정을 얻기 위해 매 epoch내에 모든 샘플에 대해 진행이 되면 momentum update 방식을 활용한다.

     

     

    댓글

Designed by Tistory.