연세대 인공지능학회 YAI

[논문 리뷰] GDumb A Simple Approach that Questions Our Progres 본문

Learning/Continual

[논문 리뷰] GDumb A Simple Approach that Questions Our Progres

_YAI_ 2022. 8. 27. 15:43

GDumb A Simple Approach that Questions Our Progres

* YAI 9기 조용기 님이 작성한 글입니다.


논문소개

GitHub - drimpossible/GDumb: Simplified code for our paper "GDumb: A Simple Approach that Questions Our Progress in Continual Learning". Easily extensible to various settings, datasets and architectures.

 

GitHub - drimpossible/GDumb: Simplified code for our paper "GDumb: A Simple Approach that Questions Our Progress in Continual Le

Simplified code for our paper "GDumb: A Simple Approach that Questions Our Progress in Continual Learning". Easily extensible to various settings, datasets and architectures. - GitHub - d...

github.com


Introduction

  • 자연지능 (natural intelligence)의 근본적 특징은 새로운 개념들을 연속적으로 학습하면서 이전의 개념들에 대한 정보를 업데이트하는 능력이며, 기계에 이러한 능력을 부여하는 것이 연속 학습 (continual learning, CL)의 동기이다.
    • 현재의 머신러닝 (machine learning, ML) 알고리즘들은 단일 과제 (task)가 주어지면 훌륭한 성능을 이뤄내지만, 새로운 작업 (또는 관련된 작업)을 학습하는 것은 치명적 망각 (catastrophic forgetting)이라는 현상에 취약하기 때문에 어렵다.
    • 최근 이러한 문제에 대한 많은 관심이 기울여졌으며 다양한 접근 방식이 발표되었으나, 이러한 방식들은 다양한 제약을 통해 CL 문제를 단순화시키고 이에 대한 알고리즘을 제안했다.
      • 때로 이 제약 조건이 너무 까다로워 연속학습의 개념 자체를 깨뜨리기도 하는데, 예를 들면 주어진 입력이 취할 수 있는 레이블을 선험적으로 아는 경우가 있다.
      • 또한 이러한 접근 방식은 유용하게 적용할 수 있는 시나리오에서 철저하게 테스트되지 않는다.
  • 본 논문은 이러한 관찰을 염두하여, 다음 내용이 연속학습 분야를 발전시키는데 무엇보다 중요하다고 제안한다.
    • 단순화 가정 (simplifying assumption)에서 주의할 점이 무엇인지 이해하고,
    • 이러한 단순화된 형태가 왜 실질적으로 유용하지 않은지를 이해하며,
    • 이러한 연속학습 형태에서 초점을 좀 더 일반적 (general)이고 실질적으로 유용한 형태로 옮기는 것
  • 이를 위해 먼저 본 논문은 분류를 위한 CL의 일반적인 공식을 세우고, 기존 CL 알고리즘의 인기 있는 변형들을 조사하여 이 변형들을 각각이 일반 공식에 부여하는 단순화 가정에 따라 분류한다.
    • 각각의 변형들이 레이블 공간의 성장 특성, 레이블 공간의 크기, 또는 사용 가능한 리소스에 대해 부여하는 제약에 대해 논의한다.
    • 이러한 제한된 설정들의 주요한 단점 중 하나는 이 제한에 맞게 조정된 알고리즘이 CL의 조금씩 다른 변형에 사용될 때 처참하게 실패하여, 이 알고리즘이 특정 상황에 매우 구체적이게 만드는 것이다.
    • 본 논문은 또한 연구자들 사이에서 CL에 가장 적절한 공식화 (formulation)에 대한 합의가 없다는 점을 강조한다.
      • 이는 다양한 실험 시나리오로 이어지며, 이 중 어느 것도 CL 문제의 일반적인 형태를 제대로 모방하지 못해 실제 세상에 적절하지 않는다.
  • 그 다음, 본 논문은 한 걸음 물러서서, 최근의 접근 방식에 비해 단순화 가정이 거의 없는 매우 간단한 알고리즘, GDumb (Greedy Sampler and Dumb Learner)을 설계한다.
    • 이름에서 알 수 있듯이 이 접근 방식의 두 가지 핵심 구성 요소는 greedy samplerdumb learner이다.
    • 메모리 예산이 주어지면 sampler는 클래스가 균형을 이루도록 하면서 데이터 스트림에서 샘플을 탐욕적으로 저장하며, 추론 시에는 learner (신경망)가 메모리에 저장된 모든 샘플을 사용하여 처음부터 훈련된다 (그래서 dumb learner이다).
    • 최근의 다양한 연구들이 고도로 조정된 알고리즘들을 제안한 다양한 시나리오에서 테스트했을 때, GDumb는 거의 모든 경우에서 SOTA의 결과를 큰 폭의 차이로 보여준다.
  • 놀라운 사실은, GDumb가 어려운 CL 문제들의 복잡성을 해결하도록 설계되지 않았더라도 최근에 제안된 알고리즘들의 성능을 각각의 자체 설정에서 능가한다는 점이다.
    • 이러한 사실에 따라 본 논문은 유명하고 널리 사용되는 가정 및 평가 메트릭에 대한 우려와, 그리고 최근에 제안된 다양한 연속학습 알고리즘의 효율성에 대한 질문을 제기한다.

Problem Formulation, Assumptions, and Trends

  • CL 문제에 대한 일반적이며 실질적으로 유용한 관점을 세우기 위해 다음의 예제로 설명을 시작한다.
    • 로봇은 과거에 학습한 알려진 객체를 식별하고, 알 수 없는 객체에 대해 oracle에 레이블을 제공하도록 요청하여 학습하며, 동시에 알려진 객체의 새로운 인스턴스가 과제에 유용한 추가 단서를 제공하는 경우 알려진 객체에 대한 정보를 업데이트한다.
    • 간단히 말해서, 로봇은 세상에 대한 부분적인 정보로 시작하며 세상의 새로운 부분을 탐색하면서 지식 (knowledge)을 계속해서 향상시킨다.
  • “로봇이 거실을 걸으면서 마주치는 모든 객체를 식별해야 하는 과제를 해결해야 한다.”
  • 이 예제에서 영감을 받아 분류에서의 연속학습에 대한 현실적인 공식화는 learner가 훈련 샘플/데이터 스트림에 접근할 수 있어야 하며, 여기에서 각 샘플은 2-튜플 $(\mathbf x_t,\mathbf y_t)$로 구성된다 (여기서 $t$는 타임스탬프 또는 샘플의 인덱스를 의미한다).
    • 시간 $t$까지 확인할 수 있는 레이블들의 집합을 $\mathcal Y_t=\cup_{i=1}^t \mathbf y_i$이라고 하면, $\cal Y_{t-1} \sube Y_t$은 자명하다.
      • 이 공식화는 스트림이 새 클래스 또는 이전 클래스들에 속하는 샘플을 제공할 수 있음을 의미한다.
    • 이러한 설정 아래, 분류 연속학습의 목표는 임의의 $t$에서 샘플 $\bf x$에서의 레이블 $\mathbf y \in \cal Y_t \cup \mathbf{\bar y}$로의 정확한 매핑 $f_{\theta_t}:\bf x \rightarrow y$를 세우는 것이다 (이 때 $\bf\bar{y}$는 샘플이 학습된 클래스들에 속하지 않음을 의미한다).
      • 이 추가 레이블 $\bf \bar y$는 훈련 동안 세상에 대한 지식이 완전하지 않으며 테스트 샘플이 훈련 분포 바깥에서 샘플링되었을 수 있다는 점을 가정한다 (이러한 점은 CL 인스턴스를 잘 알려진 오픈 세트 분류 문제 (TPAMI)에 매우 잘 연결한다).
      • CL에서 learner는 oracle (e.g., 능동학습 (active learning))의 도움으로 $\bf\bar y$로 추론된 샘플의 의미를 학습하여 세상에 대한 지식을 향상시킬 수 있다. 참고

Simplifying Assumptions in Continual Learning

  • 앞서 다룬 공식은 레이블 공간의 성장 특성, 테스트 샘플의 특성, 그리고 출력 공간 $|\lim_{t\rightarrow\infty}\cal Y_t|$의 크기 전반에 대해 어떠한 제약도 가하지 않는다는 점에서 일반적이다.
    • 신뢰할 수 있는 매핑 $f_{\theta_t}(.)$를 얻기 위해 선택할 수 있는 리소스 (계산 및 저장 공간)에 제한을 두지 않지만, 출력 공간의 특성과 크기에 대한 정보가 부족할 경우 문제가 극도로 어려워진다.
    • 이러한 사실은 연속학습 분야의 거의 모든 연구가 추가적인 단순화 제약/가정을 부여하도록 강제한다.
      • 이러한 가정은 매우 다양하여 하나의 CL 알고리즘을 다른 알고리즘과 비교하기 어려울 정도이며, 이는 가정의 약간의 변형으로도 문제의 복잡성을 극적으로 바꿀 수 있기 때문이다.
    • 따라서 더 나은 이해를 위해 아래에서 모든 인기 있는 가정을 논의하고, 그 가정의 단점을 강조하며, 다양한 CL 알고리즘을 각각의 단순화 가정에 따라 분류한다.
      • 공통적인 하나의 가정은 테스트 샘플이 항상 훈련 분포에 속한다는 것이다.

출처: https://github.com/drimpossible/drimpossible.github.io/blob/master/documents/gdumb_slides.pdf

 

 

Disjoint task formulation

  • 이 공식화는 특정 기간 동안 데이터 스트림이 과제에 특정한 샘플을 사전 정의된 과제 순서로 제공한다는 가정을 세우는 최근 연구에서 대부분 사용되며, 목표는 한 번에 하나의 과제를 순차적으로 학습함으로 매핑을 학습하는 것이다.
    • $\cal Y=\lim_{t\rightarrow\infty} Y_t$를 스트림이 샘플이 소진될 때까지 표시할 수 있는 레이블 세트라고 가정한다.
      • 일반적인 CL 공식에서 $\cal Y$의 크기는 알 수 없으며, 샘플은 임의 순서로 표시될 수 있다.
    • 레이블 공간 $\cal Y$는 (무작위 또는 알려진 분할의) 서로 다른 서로소 부분집합들로 나뉘며, 여기서 각 레이블 부분집합 $\cal Y_i$는 과제를 나타내고 이 집합 간 급격한 전환을 과제 경계 (task boundary)라고 부른다.
      • $m$개의 분할이 있다고 가정하면 (일반적으로 분할은 거의 동일한 수의 클래스로 균형을 유지한다),
        $\cal Y= \cup_i^m Y_i$이고 $\cal Y_i\cap Y_j=\empty,\ \forall i\ne j$이다.
    • 쉽고 널리 사용되는 예는 MNIST의 10가지 숫자를 5가지의 서로소인 과제로 나누는 것이며, 이 때 각 과제는 연속되는 두 숫자의 샘플로 이루어지고 스트림은 사전 정의된 순서로 각 과제에 대한 샘플을 제공하도록 제어된다 (${0,1},\dots,{8,9}$).
    • 원래는 알 수 없는 레이블 공간의 성장 특성이 여기서 제한되고 알려져기 때문에, 이 공식화는 일반 CL 문제를 크게 단순화한다.
      • 이는 learner에 매우 강력한 사전 정보를 제공하고, 공간 예산과 학습할 함수 패밀리 $f_\theta(.)$를 결정에 도움을 준다.

Task-incremental v/s Class-incremental

  • 훈련과 추론을 더 쉽게 하기 위해 CL 공식화의 인기 있는 선택은 task-incremental CL (TI-CL)이며, 여기서 disjoint task 가정과 함께 과제 정보 (또는 ID) 또한 훈련 및 추론 중에 oracle에 의해 전달된다.
    • 따라서, 기존의 2-튜플 대신 3-튜플 $\bf (x,y,\alpha)$이 주어지며 여기서 $\alpha\in\mathbb N$은 과제 식별자 (id)를 의미한다.
    • 이러한 공식화는 또한 multi-head라고 불리며, 연속학습 문제를 극도로 단순화한 형태이다.
      • 예를 들어, 앞의 MNIST 예제에서 추론시 입력이 $(\mathbf x,\alpha=3)$이라면, 이는 샘플이 클래스 4 또는 5 중에 속함을 의미한다.
      • 레이블의 이러한 부분집합을 사전에 알면 훈련 및 추론 중 레이블 공간이 크게 줄어들고, 이는 실제 시나리오에서는 상대적으로 비현실적이다.
  • 반면, single-head라고도 불리는 class-incremental CL (CI-CL) 형태에서는 과제 id와 같은 정보를 가지고 있지 않다.

Online CL v/s Offline CL

  • Disjoint task formulation은 레이블 공간의 성장 특성과 크기에 제약을 두었으나 learner 자체에는 제약을 가하지 않는다.
    • 따라서, 학습 패러다임은 공간 예산에 따라 스트림에서 오는 과제별 샘플을 저장하고 이를 매개변수 업데이트에 사용할 수 있다.
    • 이러한 설정 아래, 온라인 CL 공식화에서 learner는 샘플이 오는 대로 저장할 수 있지만, 매개변수를 업데이트하는데 샘플을 두 번 이상 사용할 수 없다.
      • 따라서 learner는 학습 프로세스의 반복에서 동일한 샘플을 (메모리에 있지 않는 한) 여러 번 사용할 수 없다.
    • 이에 반해, 오프라인 CL은 특정 과제에 (이전 과제가 아닌) 해당하는 전체 데이터셋에 대한 제한 없는 접근을 허용하며, 이 데이터셋을 사용하여 데이터를 여러 번 전달하면서 샘플을 계속 확인해 매핑을 학습할 수 있다.

Memory based CL

  • 앞서 언급했듯이, 연속학습에서는 현재 과제와 관련한 샘플 전체 또는 부분집합에만 접근할 수 있다.
    • 이러한 제한은 이전 과제 샘플이 없으면 치명적 망각으로 인해 현재 과제와 이전 과제들의 샘플들을 구별하는 방법을 배우기 어렵기 때문에, 특히 CI-CL 설정에서 모델이 제대로 수행하기가 매우 어렵게 만든다.
      • TI-CL에서는 주어진 과제 ID가 과제 경계의 지표로 작동하기 떄문에 망각이 거의 관찰되지 않으며, 따라서 모델은 과제 사이 레이블을 구별하도록 학습할 필요가 없다.
  • 망각을 줄이기 위한 일반적인 관행은 상호 보완 학습 시스템 (complementary learning system, CLS) 이론에서 영감을 받아 각 과제에서 샘플의 부분집합을 저장하고 현재 과제를 훈련할 때 이를 사용한다.
    • 이 설정에는 두 가지 구성 요소, learner*와 *memorizer (또는 sampler)가 있다.
      • Learner는 현재 과제 이상으로 일반화하는 표현을 얻는 것을 목표로 한다.
      • Memorizer는 이전 과제로부터 일련의 episodic-like memory를 기억한다.
    • 최근 접근 방식에서는 learner가 신경망으로, memorizer는 이전 샘플들을 저장하는 메모리 슬롯으로 모델링된다.

Recent Trends in Continual Learning

  • 일반적으로, 연속학습의 접근 방식은 치명적 망각을 해결하는 방식에 따라 다음과 같이 분류된다.
    1. Regularization-based
    2. Replay (or memory)-based
    3. Distillation-based
    4. Parameter-isolation based
  • 이 방식들은 인코딩하는 가정의 단순화에 있어 다양하며, 본 논문에서는 이러한 가정들을 추적하는 것이 각 가정에 대한 공정한 비교와 한계를 이해하는 데 매우 중요하다고 주장한다.
    • 이 알고리즘들은 위에서 논의한 단순화 가정을 조합하여 사용하므로, 이 단순화 가정에 따라 분류하여 최근의 접근 방식에 대한 조감도를 확인한다 (Table 1).
      • 예를 들어 RWalk는 오프라인이며, class-incremental이고, 뚜렷한 과제 경계를 가지는 CL 접근 방식이며, 알고리즘적으로는 정규화 기반이며 메모리를 사용한다.
      • 이러한 접근 방식들은 다른 설정에서 작동하도록 수정될 수 있지만 (RWalk를 메모리 없이 사용하거나 task-incremental 오프라인 형태로 사용할 수 있다), 본 논문에서는 원래 설계된 공식에 중점을 둔다.
    • 이제 이러한 접근 방식들이 만드는 단순화 과정에 관련한 몇 가지 문제에 대해 논의한다.

Table 1. Here we categorize various recently proposed CL approaches depending on the underlying simplifying assumptions they impose.

  • CL에 대한 대부분의 모델, 메트릭, 분류기, 그리고 sampler는 설계에서 본질적으로 서로소인 과제 (또는 뚜렷한 과제 경계)를 가정하므로, 이 공식에서 약간의 변형이 가해져도 일반화에 실패한다.
    • 마찬가지로, 망각 및 비타협성 (intransigence)과 같은 인기 있는 메트릭은 정의에 인코딩된 특정한 공식으로 설계되었으며 이는 경계를 모호하게 하는 등의 간단한 수정만으로도 깨진다 (샘플 기반 대신 클래스 기반으로 하면, 망각은 흐릿한 경계로 인하여 클래스 혼합으로 정의된다).
      • 비타협성 (intransigence): 새로운 과제를 학습하도록 지식을 업데이트할 수 없는 문제. 출처
    • TI-CL v/s CI-CL에서 극단적인 경우가 있는데, CI-CL (single-head)은 $|\lim_{t\rightarrow\infty}\cal Y_t|$의 크기에 제한이 없어 확장 문제에 직면하며, TI-CL (multi-head)은 oracle 레이블이 있는 클래스 간에 고정적이고 일관적인 2단계 계층을 부여한다.
      • 이 공식화는 dynamic context를 허용하지 않으므로 비현실적이다.
  • 마지막으로, 오프라인 CL v/s 온라인 CL은 일반적으로 훈련 프로세스 중에 알고리즘이 (메모리에 없는) 샘플을 반복적으로 확인할 수 있는지 여부에 따라 정의된다.
    • 의도는 CL 알고리즘을 샘플을 재확인할 필요 없이 한두 번의 확인으로 학습할 정도로 충분히 빠르게 만드는 것이다.
    • 데이터 스트림이 샘플을 매우 빠르게 준다고 가정하면, learner가 이에 매우 빠르게 적응해야 하므로 이러한 구분은 의미가 있다.
      • 따라서 알고리즘은 공간 (저장할 샘플 수)과 시간 (훈련 복잡도) 예산의 적절한 트레이드오프를 제공해야 한다.
    • 그러나 적절한 정의와 평가 체계가 없기 때문에, 한 쪽에서는 매우 잘 수행하나 다른 쪽에서는 매우 저조한 성능을 보이는 알고리즘들이 있다.
      • 예를 들어, 유명한 온라인 CL 알고리즘인 GEM은 샘플을 오직 한 번 사용하지만, 매개변수 업데이트를 위해 2차 계획법을 최적화하므로 시간이 많이 소요된다.
    • 따라서, 다양한 CL 알고리즘이 공간/시간 복잡도 사이 균형을 얼마나 잘 유지하는지에 대한 적절한 메트릭이나 절차가 없으면, 이 알고리즘들을 단순히 온라인 vs 오프라인으로 분류하는 것이 잘못된 결론을 초래하도록 할 수 있다.

Greedy Sampler and Dumb Learner (GDumb)

  • 이 Section에서는 위에서 논의한, 레이블 공간의 성장 특성, 과제 경계, 온라인 vs 오프라인, 그리고 데이터 스트림이 제공하는 샘플 순서에 대한 제약이 없는 없는 간단한 접근 방식을 설명한다.
    • 이러한 제약이 없으므로, 이 접근 방식은 Table 1에서 다룬 모든 CL 공식화에 손쉽게 적용할 수 있다.
      • 유일한 요구 사항은 일부 episodic memory를 저장하도록 허용하는 것이다.
    • 본 논문에서는 이 접근 방식이 일반적인 CL 문제를 해결하지는 않는다고 강조한다.
      • 오히려 이 간단한 접근 방식이 당면한 CL 문제들의 특정한 것들을 인코딩하지 않음에도 앞서 논의된 모든 공식화를 다룬 접근 방식들에 비해 놀라울 정도로 효과적이며, 최근의 공식 및 알고리즘에 대한 중요한 단점을 실험적으로 보여준다.

Fig. 1.  Our approach (GDumb): The sampler greedily stores samples while balancing the classes. When asked, the learner trains a network from scratch on memory $\mathcal D_t$ provided by the sampler. If a mask m is given at inference, GDumb classifies on the subset of labels provided by the mask. Depending on the mask, GDumb's inference can vary between two extremes: CI (class-incremental) and TI (task-incremental) formulations.

  • Figure 1에서 볼 수 있듯이, 본 논문의 접근 방식은 두 가지 주 구성 요소, greedy balancing samplerlearner로 구성된다.
    • 주어진 메모리 예산 ($k$개 샘플)에서, sampler는 클래스 분포의 균형을 점근적으로 맟추는 제약 아래, 데이터 스트림에서 탐욕적으로 샘플들 (최대 $k$개)을 저장한다 (Algorithm 1).
    • 새 클래스를 만날 때마다 sampler는 단순히 그 클래스에 대한 새 bucket을 만들고 이전 bucket, 특히 샘플 수가 최대인 bucket에서부터 샘플을 제거하기 시작한다 (이러한 맥락에서 이 sampler는 탐욕적이다).
      • 각 샘플의 중요성이 동등하다고 가정하므로 모든 tie는 무작위로 끊어지며 샘플도 무작위로 끊어진다.
    • 이 sampler는 과제 경계 또는 각 클래스의 샘플 수 정보에 의존하지 않는다.
  • 임의의 순간에 메모리에서 sampler에 의해 탐욕적으로 저장된 샘플 세트를 $\cal D_t$ (샘플 개수가 $\leq k$인 데이터셋)라고 하자.
    • 이러면 본 논문의 심층 신경망인 learner의 목적은 $\bf (x,y)\in \cal D_t$에 대한 매핑 $f_{\theta_t}:\bf x\rightarrow y$를 학습하는 것이다.
      • Sampler가 저장한 작은 데이터셋을 사용하여, learner는 시간 $t$까지 보았던 모든 레이블을 분류하도록 학습한다.
    • $\cal Y_t$가 $\cal D_t$의 레이블 세트라고 하면, 추론에서 샘플 $\bf x$가 주어질 경우 예측은 다음과 같이 이루어진다.
      • $\bf p$는 $\cal Y_t$의 모든 클래스에 대한 소프트맥스 확률이다.
      • $\mathbf m\in{0,1}^{|\cal Y_t|}$은 사용자 정의 마스크이다. 즉 추론 시 임의의 레이블 조합에 마스킹할 수 있다.
      • $\odot$은 아다마르 곱 (Hadamard Product)으로, 같은 크기의 두 행렬의 각 성분을 곱하는 연산이다.
    • $$
      \begin{equation}
      \bf y= \argmax p \odot m
      \end{equation}
      $$
    • 추론은 $\bf m$이 모두 1로 구성될 경우 single-head (CI)와 동일하며, 특정 과제에서 클래스 부분집합에 따라 마스킹이 이루어진다면 multi-head (TI)와 동일하다.
    • 본 논문의 sampler가 데이터 스트림의 샘플 흐름에 제한을 두지 않으며 learner가 어떠한 과제 경계를 요구하지 않으므로, 논문의 전반적인 접근 방식은 일반적인 연속학습 문제에 최소한의 제한만을 가한다.
    • 또한 Section 2의 일반 공식에서 다룬 클래스 $\bf \bar{y}$를 사용하지 않고 향후 연구를 위해 남겨놓는다는 점을 강조하고 있다.
    • 본 논문의 목적은 가능한 최소한의 가정으로 최근의 모든 CL 공식화를 캡슐화하여, 이들의 공정한 비교를 가능케 하는 것이다.

Experiments

 

  • 이 Section에서는 최근에 제안된 몇 가지 CL 공식화에서, GDumb를 기존의 다양한 알고리즘과 비교한다.
    • Table 1에서 확인할 수 있듯이, 대략 다섯가지 공식화 ${A,B,\dots, E}$가 있다.
    • 이 공식화에서도 사용하는 리소스에 따라 하위 범주가 있으므로, 공정한 비교를 위해 Table 2에서 더 자세히 열거한다.
      • 예를 들어 B1과 B2는 모두 같은 공식화 B에 속하지만 아키텍처, 데이터셋, 그리고 메모리 크기 측면에서 다르다.
    • 따라서 본 논문에서는 총 10가지 다른 공식화를 선택하며, 대부분 여러 아키텍처와 데이터셋을 가지고 있다.
     

Table 2.  Various CL formulations we considered in this work to evaluate GDumb. These formulations differ in terms of simplifying assumptions (refer Table 1) and also in terms of resources used. We ensure that selected benchmarks are diverse, covering all popular categorizations. Note, in B3 and D, memory is not constant- it increases over tasks uniformly by (+size) for xtasks times.

 

 

Implementation details

  • GDumb는 모든 CL 공식화에서 하이퍼파라미터 조정 없이 동일한 고정된 훈련 설정을 사용한다.
    • 이는 GDumb가 단순화 가정을 부여하지 않기 때문에 가능하다.
  • 모든 결과는 홀드-아웃 테스트 세트에서 정확도를 측정한다.
  • 모든 공식화에서 GDumb는 SGD 최적화기, 고정 배치 크기 16, 학습률 $[0.05, 0.0005]$, $T_0=1,T_{mult}=2$의 SGDR 스케줄, 그리고 1 에폭의 warm start를 사용한다.
  • SGDR의 1 사이클을 patience로 early stopping을 적용하며, 표준 데이터 증강또한 사용한다.
    • MNIST를 제외한 모든 데이터셋에 $p=0.5, \alpha=1.0$의 cutmix를 사용한다.
  • Intel i7 4790, 32GB RAM, 그리고 GTX 1070 GPU 1대를 사용한다.
  • 모든 결과는 각각 다른 클래스-작업 할당이 있는 3번의 무작위 seed에 대한 평균으로 구한다.
  • B2와 B3의 공식화에서는 iCARL과 PODNet에서 지정된 클래스 순서를 따른다.

Results and Discussions

 

Class Incremental Online CL with Disjoint Tasks (Form. A)

Table 3.  (CI-Online-Disjoint) Performance on formulation A1.

  • 첫 하위 범주 A1은 MIR의 Split-MNIST 및 Split-CIFAR10과 정확히 동일한 설정을 따르며 결과는 Table 3에서 확인할 수 있다.
    • 모든 $k$ 값 선택에 대해 MNIST와 CIFAR10에서 GDumb가 다른 모든 접근 방식보다 훨씬 좋은 SOTA의 성능을 보여준다.
    • 다른 최근의 접근 방식에서도 비슷하거나 훨씬 더 나쁜 개선사항이 발견되었으며, 이는 이 방식들이 메모리 샘플들을 효율적으로 사용하지 않을 수 있음을 시사한다.

Table 4.  (CI-Online-Disjoint) Performance on formulations A2 (left) and A3 (right).

  • 다른 하위 범주 A2 (GMED)와 A3 (ARM)에서 설명한 Split-MNIST와 Split-CIFAR10에 대해 본 논문의 접근 방식을 비교한다.
    • Table 4에서 결과를 확인할 수 있으며, 여기서 GDumb가 동시에 나온 HAL, QMED, ARM과 추가적으로 최근 연구 GSS, MIR, ADI를 전반적인 데이터셋에 대해 능가하고 있음을 보여준다.
    • ARM과의 결과는 다음을 암시한다.
      1. GDumb가 다른 replay 기반 접근 방식보다 성능이 일관적으로 뛰어나다.
      2. experience replay 방법이 generative replay 방법보다 훨씬 적은 메모리 풋프린트로 더 나은 성능을 얻어낸다.

 

Class Incremental Offline CL with Disjoint Tasks (Form. B)

Table 5.  (CI-Offline-Disjoint) Performance on B1, B2, and B3.

  • 여기에서는 오프라인 CI-CL 공식화이며 먼저 하위 범주 B1에서 인기 있는 12가지 방법과 본 논문의 접근 방식을 비교한다.
    • Table 5 (왼쪽)에서 결과를 확인할 수 있으며, 본 논문의 접근 방식이 MNIST에서 GEM, RtF, DGR과 같은 memory 기반 방법의 성능을 능가한다.
    • 온라인 방식에서의 매우 간단한 접근 방식을 사용함에도, 본 논문의 접근 방식은 최고의 오프라인 CL 방법인 iTAML과 동일한 정확도를 달성한다.
  • 그 다음 하위 범주 B2 (iCARL)와 B3 (최근 연구인 PODNet)에 대해 논의하며, Table 5 (가운데, 오른쪽)에서 확인할 수 있다.
    • 두 범주의 주요한 차이점은 작업당 클래스 수에 있으며, 이 사소한 차이는 문제의 복잡성을 크게 변화시킨다.
      • B2의 경우 CIFAR100은 20개의 과제로 나뉘는 반면 B3은 50 클래스로 훈련된 신경망으로 시작하여 과제당 하나의 클래스를 점진적으로 학습한다 (새로운 과제 50개으로 이어진다).
    • 흥미로운 점은 GDumb가 B2에서 BiC 및 iCARL보다 거의 20% 나쁜 성능을 보이는 반면, B3에서는 10-15% 이상의 성능을 발휘한다는 것이다.
      • 이러한 급격한 변화는 적은 과제와 이에 따라 과제당 더 많은 수의 클래스를 갖는 것이 scaling/bias correction 타입의 접근 방식에 추가적인 이점을 제공할 수 있음을 시사한다.

 

Task Incremental Offline CL with Disjoint Tasks (Form. C)

 

Table 6. (TI-Offline-Disjoint) Performance on C1 (left) and C2 (middle). (TI-Online-Disjoint) Performance on D (right).

  • 여기에서는 task incremental 공식화에서 GDumb의 성능을 비교한다.
    • GDumb는 task vs class incremental 또는 online vs offline과 같은 제한을 두지 않는다.
    • 그러나 TI-CL 공식화를 모방하기 위해 테스트에서 소프트맥스 확률에 마스킹 (과제 레이블의 부분집합)을 사용한다.
  • Table 6 (왼쪽)은 Split-MNIST에서 매우 널리 사용되며 가장 인기 있는 오프라인 TI-CL (multi-head) 공식화 범주 C1의 결과를 보여주고 있다.
  • Table 6 (가운데)에서는 Split-TinyImagenet에서 오프라인 TI-CL 공식화 범주 C2의 결과를 확인할 수 있으며, 여기에서는 DenseNet-100-BC라는 다른 아키텍처를 사용했다.
    • $k=9000$의 경우 GEM과 iCARL을 포함한 모든 접근 방식을 능가하며, $k=4500$으로 줄면 iCARL보다는 3% 정도 낮은 성능을 보인다.
    • 다른 아키텍처를 사용했기 때문에, 본 논문에서는 GDumb가 각 논문의 신경망으로 훈련되었다면 유사한 성능 향상을 보일 것이라고 주장하지는 않는다.
    • 하지만 비교한 접근 방식들이 TI-CL 방식인 것에 비해, GDumb는 훨씬 더 어려운 CI-CL 방식으로 훈련되므로 이러한 결과는 여전히 고무적이다.

 

Task Incremental Online CL with Disjoint Tasks (Form. D)

  • Table 6 (오른쪽)에서는 GDumb를 적은 메모리의 (메모리 샘플에 전적으로 의존하는 GDumb에 유리한 설정이 아님) 12가지 TI-CL 온라인 접근 방식과 비교하고 있다.
    • GDumb는 CI-CL 방식으로 훈련됨에도 8개 접근 방식을 능가하고 있다.

 

Class Incremental Online CL with Joint Tasks (Form. E)

Table 7.  (CI-Online-Joint) Performance on E (left). Note, this is particularly challenging as the tasks here are non-disjoint (blurry task boundary) with class-imbalance. On the (right), we benchmark resource consumption in terms of training time and memory usage. Memory cost is provided in terms of the total parameters P, the size of the minibatch B, the total size of the network hidden state H (assuming all methods use the same architecture), the size of the episodic memory M per task. GDumb, at the very least, is 7.5x times faster than the existing efficient CL formulations.

  • 여기에서는 과제 경계가 흐릿한, 불균형 데이터 스트림의 영향을 측정하며, 결과는 Table 7 (왼쪽)에서 확인할 수 있다.
    • GDumb는 벤치마크에 맞게 조정된 다른 복잡한 경쟁 모델보다 뛰어난 성능을 보여주며, 이는 GDumb가 거의 모든 단순화 가정을 제거했음에도 잘 작동하고 있음을 보여준다.

Resources Needed

  • 본 논문의 접근 방식이 온라인 연속학습 성능을 위한 메모리 및 컴퓨팅 사용 제약의 대략적인 범위에 있다는 것은 중요하다.
    • Table 7 (오른쪽)에서 V100 GPU를 사용한 공식화 E의 효율적인 CL 알고리즘과 비교하여 리소스 소비를 벤치마킹한다.
    • 본 논문의 방법은 더 느린 GTX 1070 GPU에서 60초 (4790 i7 CPU까지 하면 350초)만 필요하므로, 최근의 다양한 알고리즘보다 몇 배나 효율적임을 알 수 있다.
      • 샘플링 시간은 무시할 만하며, 테스트 시간은 포함하지 않는다.

Potential Future Extensions

Active Sampling

  • 시간 $t$에서 샘플 $(\mathbf x_t,\mathbf y_t)$과 함께 (active learner를 통해) 중요도 (importance) $v_t\in \text R^+$이 주어지면, 크기 $k$의 저장소에서 주어진 클래스의 가장 중요한 샘플들을 저장하도록 ($\sum_{i=1}^{\cal |D_c|} v_i$를 최대화하는) 목적 함수를 설계함으로써 sampler를 확장할 수 있다.
    • 이렇게 하면 알고리즘이 덜 중요한 샘플을 거를 수 있지만, 샘플의 중요성을 정량화하는 방법을 어떻게 학습시키는지는 명확하지 않다.

Dynamic Probabilistic Masking

  • GDumb의 마스킹을 CI-CL과 TI-CL을 넘어서, 비디오/장면 유형 전반에 걸쳐 동적 과제 hierarchy로 확장할 수 있다.
    • GDumb는 추론 시에만 (주어진 context에서) 마스크를 적용하기 때문에, context에 동적으로 적응할 수 있다.
    • 비슷하게, GDumb를 결정론적 oracle ($m_i\in {0,1}$)에서 확률론적 oracle ($m_i\in[0,1]$)로 확장시킬 수 있다.
      • 이는 cost-sensitive classification이나 class-imbalance와 같은 다양한 확장을 다룰 수 있는 유연성을 제공한다.
Comments