ABSTRACT
Few-shot classification은 제한된 수의 labeled 예시만으로 학습 과정에서 보지 못한 새로운 클래스를 인식할 수 있는 분류기를 학습하는 것을 목표로 한다. 상당한 발전이 이루어졌음에도 불구하고, 네트워크 설계의 복잡성 증가, meta-learning 알고리즘의 다양성, 그리고 구현 세부사항의 차이로 인해 공정한 비교가 어려워졌다.
본 논문에서는 다음을 제시한다.
① 여러 대표적인 few-shot classification 알고리즘에 대한 일관된 비교 분석을 수행하며, 그 결과 깊은 backbone을 사용할 경우 도메인 차이가 제한된 데이터셋에서는 방법 간 성능 차이가 크게 줄어듦을 보인다.
② 기존 방법을 수정한 baseline 모델이 mini-ImageNet과 CUB 데이터셋 모두에서 최신 방법들과 비교해도 경쟁력 있는 성능을 달성함을 보인다.
③ few-shot classification 알고리즘의 cross-domain 일반화 능력을 평가하기 위한 새로운 실험 설정을 제안한다.
또한 실험 결과를 통해, feature backbone이 얕을 때는 intra-class variation을 줄이는 것이 중요한 요소이지만, backbone이 깊어질 경우 그 중요성은 상대적으로 감소함을 확인한다. 현실적인 cross-domain 평가 환경에서는, 표준적인 fine-tuning 방식을 사용하는 baseline 방법이 다른 최신 few-shot learning 알고리즘들과 비교해도 우수한 성능을 보임을 보여준다.
Introduction
딥러닝 모델은 이미지 분류와 같은 시각 인식 작업에서 최신 성능을 달성해왔다. 그러나 이러한 높은 성능은 다양한 시각적 변형을 포함한 풍부한 라벨 데이터로 네트워크를 학습하는 데 크게 의존한다. 인간이 라벨을 부여하는 비용과 일부 클래스의 데이터 부족은 현재의 비전 시스템이 새로운 시각 개념을 효율적으로 학습하는 데 큰 제약이 된다. 반면 인간의 시각 시스템은 극히 적은 수의 라벨된 예시만으로도 새로운 클래스를 인식할 수 있다. 따라서 각 새로운 클래스에 대해 제한된 수의 라벨 데이터만으로도 일반화할 수 있는 방법을 학습하는 것은 매우 중요한 연구 주제이다.
학습 과정에서 보지 못한 클래스에 대해 일반화하는 문제, 즉 few-shot classification은 많은 관심을 받아왔다. few-shot classification을 위한 유망한 접근 방식 중 하나는 meta-learning 패러다임으로, 다양한 작업들로부터 전이 가능한 지식을 추출하고 이를 활용하여 과적합을 방지하고 일반화 성능을 향상시키는 것이다. 예를 들어, 모델 초기화 기반 방법, metric learning 기반 방법, 그리고 hallucination 기반 방법이 있다. 또 다른 연구 흐름은 새로운 클래스에 대한 분류기의 가중치를 직접 예측하는 방식으로도 좋은 성능을 보이고 있다.
ⓐ Limitations
많은 few-shot classification 알고리즘이 기존 최고 성능을 개선했다고 보고하고 있지만, 공정한 비교와 실제 성능 향상을 정확히 측정하는 데에는 두 가지 주요 문제가 존재한다. 첫째, 여러 few-shot 학습 알고리즘 간 구현 세부사항의 차이로 인해 상대적인 성능 향상이 불명확해진다. 또한 baseline 방법의 성능이 과소평가되는 경우도 있다. 둘째, 현재의 평가 방식은 제한된 학습 예시로 새로운 클래스를 인식하는 데 초점을 맞추고 있지만, 이러한 새로운 클래스들이 동일한 데이터셋에서 샘플링된다. base 클래스와 novel 클래스 간 도메인 차이가 없기 때문에 이러한 평가 설정은 현실적이지 않다.
ⓑ Our work
본 논문에서는 few-shot classification 문제를 새로운 관점에서 이해하기 위해 상세한 실증적 연구를 제시한다. 첫째, 여러 대표적인 few-shot classification 방법들을 동일한 조건에서 비교하기 위해 일관된 비교 실험을 수행한다. 실험 결과, base 클래스와 novel 클래스 간 도메인 차이가 작은 환경에서는 더 깊은 backbone을 사용할수록 서로 다른 방법 간 성능 격차가 줄어드는 것을 확인하였다.
둘째, 기존의 linear classifier를 Gidaris & Komodakis (2018), Qi et al. (2018)에서 사용된 distance-based classifier로 대체함으로써, baseline 방법이 최신 meta-learning 알고리즘들과 비교해도 놀랍게도 경쟁력 있는 성능을 보임을 확인하였다. 셋째, base 클래스와 novel 클래스 간에 도메인 차이가 존재하는 보다 현실적인 평가 설정을 제안한다. 이 설정에서는 복잡한 few-shot learning 알고리즘들이 baseline보다 성능 향상을 제공하지 못함을 보였다. 또한, 일관된 평가 설정과 함께 소스 코드 및 모델 구현을 공개함으로써, 향후 연구 발전에 기여하고자 한다.
ⓒ Our contributions
① 공정한 비교를 위해 다양한 few-shot classification 알고리즘을 평가할 수 있는 통합된 실험 환경을 제공한다. 실험 결과, 기존 연구에서 주로 사용되는 얕은 backbone은 intra-class variation을 명시적으로 줄이는 방법에 유리한 결과를 낳는다. 반면, feature backbone의 모델 용량을 증가시키면 도메인 차이가 제한된 상황에서 방법 간 성능 격차가 감소한다.
② 거리 기반 분류기를 사용하는 baseline 방법이 mini-ImageNet과 CUB 데이터셋 모두에서 최신 meta-learning 방법들과 비교해도 경쟁력 있는 성능을 달성함을 보인다.
③ base 클래스와 novel 클래스가 서로 다른 도메인에서 샘플링되는 현실적인 평가 설정을 분석한다. 그 결과, 기존 few-shot classification 알고리즘들은 이러한 도메인 차이를 효과적으로 처리하지 못하며, baseline보다도 성능이 낮음을 확인하였다. 이는 few-shot learning에서 도메인 차이에 적응하는 능력을 학습하는 것이 중요함을 강조한다.
RELATED WORK
base 클래스에 대해 충분한 학습 데이터가 주어졌을 때, few-shot learning 알고리즘은 제한된 수의 라벨된 예시만으로 novel 클래스를 인식하도록 학습하는 것을 목표로 한다. 데이터 효율성 문제를 해결하기 위해 많은 연구가 진행되어 왔다. 이하에서는 few-shot learning 알고리즘을 세 가지 주요 범주로 나누어 설명한다: initialization 기반, metric learning 기반, 그리고 hallucination 기반 방법이다.
Initialization 기반 방법은 finetuning을 학습하는 것(learning to finetune)으로 few-shot 문제를 해결한다. 한 접근 방식은 모델의 좋은 초기값을 학습하여, novel 클래스에 대한 분류기를 적은 수의 라벨 데이터와 적은 gradient 업데이트만으로도 학습할 수 있도록 한다. 또 다른 연구 흐름은 optimizer 자체를 학습하는 것이다. 예를 들어, stochastic gradient descent를 대체하는 LSTM 기반 meta-learner나 외부 메모리를 활용한 weight 업데이트 메커니즘이 있다. 이러한 initialization 기반 방법들은 적은 데이터로 빠르게 적응할 수 있다는 장점이 있지만, 본 논문의 실험 결과에 따르면 base와 novel 클래스 간 도메인 차이를 처리하는 데에는 어려움이 있다.
Distance metric learning 기반 방법은 비교를 학습하는 것으로 few-shot classification 문제를 해결한다. 핵심 아이디어는 두 이미지 간 유사도를 잘 판단할 수 있다면, 라벨된 소수의 샘플을 이용해 새로운 입력 이미지를 분류할 수 있다는 것이다. 보다 정교한 비교 모델을 학습하기 위해, meta-learning 기반 방법들은 학습 과정에서 소수의 라벨 데이터에 대한 거리에 기반하여 예측을 수행한다. 사용되는 metric의 예로는 cosine similarity, 클래스 평균과의 Euclidean distance, CNN 기반 relation module, ridge regression, graph neural network 등이 있다. 본 논문에서는 세 가지 distance metric learning 방법의 성능을 비교한다. 실험 결과, meta-learning처럼 여러 task/episode로 학습하지 않더라도, 단순한 distance-based classifier를 사용하는 baseline 방법이 복잡한 알고리즘들과 비교해도 경쟁력 있는 성능을 보임을 확인하였다.
Meta-learning 방법 외에도, Gidaris & Komodakis (2018)와 Qi et al. (2018)은 본 논문의 Baseline++와 유사한 접근을 제안하였다. Gidaris & Komodakis (2018)은 attention 기반 메커니즘을 이용해 novel 클래스 분류기의 가중치를 생성하고, Qi et al. (2018)은 novel 클래스의 feature 자체를 가중치로 사용한다. Baseline++는 이러한 방법들을 단순화한 구조로 볼 수 있다. 그러나 본 논문의 핵심은 base 클래스 데이터를 이용해 intra-class variation을 줄이는 것만으로도 baseline이 경쟁력 있는 성능을 달성할 수 있음을 보이는 데 있다.
Hallucination 기반 방법은 데이터 부족 문제를 데이터 증강을 학습하는 것으로 해결한다. 이 방법들은 base 클래스 데이터를 이용해 generator를 학습하고, 이를 통해 novel 클래스의 새로운 데이터를 생성하여 데이터 증강을 수행한다. 한 종류의 generator는 base 클래스에서 나타나는 외형 변화를 novel 클래스에 전이한다. 또 다른 방법은 GAN을 사용하여 스타일을 전이한다. 다른 유형의 generator는 무엇을 전이할지 명시하지 않고, meta-learning 알고리즘에 직접 통합되어 분류 성능을 향상시킨다. 그러나 hallucination 기반 방법은 다른 few-shot 방법들과 결합되어 사용되는 경우가 많아 비교가 복잡해지므로, 본 논문에서는 비교 대상에서 제외하고 향후 연구 과제로 남긴다.
Domain adaptation 기법은 source 도메인과 target 도메인 간 차이를 줄이는 것을 목표로 한다, 또한 다른 도메인의 새로운 작업을 다루기도 한다. 일반적인 domain adaptation 문제는 target 도메인에 많은 데이터가 존재하는 반면, 본 연구에서는 새로운 도메인에 매우 적은 데이터만 존재한다는 점에서 차이가 있다. 최근 Dong & Xing (2018)은 테스트 단계에서 도메인과 분류 대상 클래스가 모두 변화하는 one-shot domain adaptation 문제를 다루었다. 유사하게, 본 논문은 기존 few-shot classification 알고리즘이 도메인 차이를 처리하는 데 한계가 있음을 보여준다.
Overview of few-shot classification algorithms
이 절에서는 먼저 baseline 모델과 그 변형 모델을 설명하고, 이어서 본 논문에서 실험에 사용한 대표적인 meta-learning 알고리즘들을 소개한다. 충분한 양의 base 클래스 라벨 데이터 와 소량의 novel 클래스 라벨 데이터 가 주어졌을 때, few-shot classification 알고리즘의 목표는 학습 과정에서 보지 못한 novel 클래스에 대해, 극히 적은 라벨 데이터만으로 분류기를 학습하는 것이다.

ⓐ baseline
우리의 baseline 모델은 네트워크의 pretraining과 finetuning으로 이루어진 표준적인 transfer learning 절차를 따른다.
Training stage에서 우리는 feature extractor 와 분류기 을 base 클래스 데이터 를 사용하여 표준 cross-entropy loss 를 최소화하도록 처음부터 학습한다.
Finetuning stage에서는 novel 클래스를 인식할 수 있도록 모델을 적응시킨다. 이를 위해 feature extractor 의 파라미터 는 freeze하고, 새로운 분류기 를 학습한다. 이때 novel 클래스의 소량의 라벨 데이터 support set 를 사용하여 동일한 loss 를 최소화한다.
ⓑ baseline++
baseline 모델에 더하여, 우리는 Baseline++라고 불리는 변형 모델을 제안하며, 이는 학습 과정에서 feature 간의 intra-class variation을 명시적으로 줄이도록 설계되었다. feature의 intra-class variation을 줄이는 것의 중요성은 deep metric learning과 few-shot classification에서 강조되어 왔다.
Baseline++의 학습 과정은 classifier 구조를 제외하면 기존 Baseline과 동일하다. 학습 단계에서는 여전히 분류기의 가중치 행렬 를 사용하고, finetuning 단계에서는 을 사용한다. 그러나 classifier 구조는 Baseline에서 사용한 선형 분류기와 다르다.
가중치 행렬 를 예로 들면, 이는 로 표현할 수 있으며, 각 클래스는 d 차원의 weight vector를 가진다. 학습 단계에서 입력 feature 에 대해, 각 weight vector 와의 cosine similarity를 계산하여 모든 클래스에 대한 유사도 점수 를 얻는다.
이후 이러한 유사도 점수를 softmax 함수로 정규화하여 각 클래스의 예측 확률을 얻는다. 즉, 이 분류기는 입력 feature와 각 클래스의 weight vector 간의 cosine distance를 기반으로 예측을 수행한다. 이러한 distance-based classifier를 사용하면 intra-class variation이 명시적으로 줄어들게 된다. 직관적으로, 학습된 weight vector 는 각 클래스의 prototype처럼 해석될 수 있으며, 분류는 입력 feature가 이 prototype들과 얼마나 가까운지를 기준으로 이루어진다. softmax 함수는 weight vector가 0으로 수렴하는 것을 방지한다.
마지막으로, Baseline++의 네트워크 구조 자체는 본 논문의 기여가 아니다. distance-based classification 개념은 기존 연구에서 널리 다루어졌으며, 최근 few-shot classification에서도 다시 주목받고 있다.
Experimental Results
ⓐ Experimental setup
Datasets and scenarios
우리는 few-shot classification 문제를 세 가지 시나리오에서 다룬다: generic object recognition, fine-grained image classification, cross-domain adaptation
객체 인식에서는 few-shot 평가에 널리 사용되는 mini-ImageNet 데이터셋을 사용한다. mini-ImageNet은 ImageNet의 100개 클래스 subset으로 구성되며, 각 클래스마다 600장의 이미지를 포함한다. 이 데이터셋은 Vinyals et al. (2016)에 의해 처음 제안되었고, 이후 Ravi & Larochelle (2017)이 제시한 설정이 주로 사용된다.
fine-grained 분류에서는 CUB-200-2011 데이터셋을 사용한다. CUB 데이터셋은 총 200개의 클래스와 11,788장의 이미지를 포함한다. Hilliard et al. (2018)의 평가 프로토콜을 따라, 100 base, 50 validation, 50 novel 클래스로 분할한다.
cross-domain 시나리오에서는 mini-ImageNet을 base 클래스로 사용하고, CUB의 validation 및 novel 클래스를 사용한다. 이러한 cross-domain 설정은 도메인 차이가 few-shot 성능에 미치는 영향을 분석하기 위함이다.
Implementation details
Baseline과 Baseline++ 방법의 training 단계에서는 batch size 16으로 400 epoch 동안 학습한다. meta-learning 방법의 meta-training 단계에서는 1-shot의 경우 60,000 episode, 5-shot의 경우 40,000 episode 동안 학습한다. validation set을 사용하여 최적의 성능을 보이는 시점을 선택한다.
각 episode에서는 N개의 클래스를 샘플링하여 N-way 분류 문제를 구성한다. 각 클래스마다 k개의 라벨 데이터를 support set으로, 16개의 데이터를 query set으로 선택하여 k-shot task를 구성한다.
fine-tuning 또는 meta-testing 단계에서는 모든 방법에 대해 600번의 실험 평균을 사용한다. 각 실험에서는 novel 클래스에서 5개의 클래스를 무작위로 선택하고, 각 클래스에서 k개의 support 샘플과 16개의 query 샘플을 선택한다. Baseline과 Baseline++은 전체 support set을 사용하여 batch size 4로 100 iteration 동안 새로운 classifier를 학습한다.
모든 방법은 처음부터 학습하며, Adam optimizer와 초기 learning rate 10^−3을 사용한다. training 및 meta-training 단계 모두에서 random crop, 좌우 반전, color jitter 등의 데이터 증강을 적용한다. 또한 각 방법에 대해 일부 구현 세부사항을 조정하였다. Baseline++에서는 cosine similarity 값의 범위 [-1,1]를 softmax에 적합하게 조정하기 위해 클래스별 learnable scalar를 곱한다. MatchingNet에서는 FCE classification layer를 사용하며 fine-tuning은 수행하지 않고, cosine similarity에 상수 스케일을 곱한다. RelationNet에서는 학습 속도를 높이기 위해 L2 norm 대신 softmax를 사용한다. MAML에서는 메모리 효율성을 위해 1차 근사를 사용한다.
ⓑ Evaluation using the standard setting
이제 few-shot classification에서 가장 일반적인 설정인 1-shot 및 5-shot 분류에 대한 실험을 수행한다. 즉, 각 novel 클래스마다 1개 또는 5개의 라벨된 샘플만 제공되는 상황이다. 우리는 입력 크기 84×84를 사용하는 4-layer convolution backbone(Conv-4)을 사용하며, fine-tuning 또는 meta-testing 단계에서는 novel 클래스에 대해서만 5-way 분류를 수행한다.
구현의 정확성을 검증하기 위해, 먼저 mini-ImageNet 데이터셋에서 기존 논문에 보고된 결과와 우리의 결과를 Table 1에서 비교한다. 여기서 ProtoNet#은 모든 meta-learning 방법에서 meta-training과 meta-testing 단계 모두 5-way 분류를 사용했기 때문에 별도로 표기하였다. 반면, ProtoNet의 공식 결과는 meta-training에서는 1-shot의 경우 30-way, 5-shot의 경우 20-way를 사용하고 meta-testing에서는 5-way를 사용한다. 우리는 비교의 완전성을 위해 해당 결과도 함께 보고한다.
우리의 meta-learning 방법 재구현 결과는 기존 보고된 성능보다 2% 이상 낮지 않다. 이러한 작은 차이는 모든 방법을 공정하게 비교하기 위해 동일한 optimizer를 사용하는 등 일부 구현 세부사항을 수정한 데에서 기인한다.
또한, 기존 방법의 성능을 개선한 경우도 있다. 예를 들어, 기존 Baseline 방법은 학습 단계에서 데이터 증강을 사용하지 않아 과적합이 발생했으며, 우리의 결과에서는 5-shot 설정에서 Baseline 성능이 크게 향상되었다. 비록 Baseline∗(데이터 증강 없음)는 1-shot에서 기존 결과보다 낮지만, 데이터 증강을 적용한 Baseline은 이를 개선하며, Baseline∗ 재현이 정확했다면 더 높은 성능도 가능했을 것이다. 어떤 경우든 Baseline의 성능은 심각하게 과소평가되어 왔다.
또한 MatchingNet의 경우, softmax 입력 값의 범위를 적절히 조정하여 성능을 개선하였다. 한편 ProtoNet#은 ProtoNet보다 성능이 낮은데, 이는 원 논문에서도 meta-training에서 더 어려운 설정을 사용할수록 성능이 향상된다고 언급된 바 있다. 본 논문에서는 다른 방법들과의 공정한 비교를 위해 이후 실험에서는 일관되게 5-way 설정을 사용한다. 이 문제는 더 깊은 backbone을 사용하면 해결될 수 있다.
CUB 데이터셋 결과도 함께 제시하며, Baseline++와 다른 방법들을 비교한다. 그 결과 Baseline++는 Baseline보다 큰 폭으로 성능이 향상되며, 다른 meta-learning 방법들과 비교해도 경쟁력 있는 성능을 보인다. 이는 intra-class variation을 줄이는 것이 현재 few-shot classification 문제에서 중요한 요소임을 보여준다.
그러나 현재 설정에서는 4-layer backbone만 사용하고 있으며, 더 깊은 backbone은 자연스럽게 intra-class variation을 줄일 수 있다. 따라서 다음 섹션에서는 backbone 깊이가 미치는 영향을 추가로 분석한다.


ⓒ effect of increasing the network depth
이 절에서는 모든 방법에서 intra-class variation을 줄이기 위해 feature backbone의 깊이를 변화시킨다. Conv-4에서 시작하여 Conv-6, ResNet-10, 18, 34로 점진적으로 backbone을 깊게 만든다. Conv-6는 Conv-4에 두 개의 convolution 블록을 추가하되 pooling은 하지 않는다. ResNet-18과 34는 He et al. (2016)에서 제안된 구조를 따르며 입력 크기는 224×224이다. ResNet-10은 ResNet-18을 단순화한 버전으로, 각 레이어에 하나의 residual block만 사용한다. 이러한 실험은 서로 다른 backbone을 사용하는 연구들 간 공정한 비교에도 도움이 된다.
CUB 데이터셋의 결과는 보다 명확한 경향을 보여준다. backbone이 깊어질수록 서로 다른 방법 간 성능 격차가 급격히 줄어든다. 또한 ProtoNet이 backbone이 깊어질수록 빠르게 성능이 향상되는 것도 관찰된다. Conv-4에서는 5-way 설정이 ProtoNet 성능을 저하시켰지만, 더 깊은 backbone에서는 잘 작동한다. 따라서 이러한 결과는 CUB 데이터셋에서는 backbone을 깊게 만들어 intra-class variation을 줄이면 방법 간 성능 차이가 감소함을 보여준다.

반면 mini-ImageNet의 결과는 훨씬 더 복잡하다. 5-shot 설정에서 Baseline과 Baseline++는 깊은 backbone에서 좋은 성능을 보이지만, 일부 meta-learning 방법은 상대적으로 성능이 저하된다. 따라서 few-shot classification에서는 intra-class variation뿐만 아니라 데이터셋 자체도 중요한 요소임을 알 수 있다. CUB와 mini-ImageNet의 차이 중 하나는 base와 novel 클래스 간 도메인 차이이며, mini-ImageNet은 word-net 계층에서 더 큰 다양성을 가진다. 이러한 효과를 더 잘 이해하기 위해, 다음 절에서는 도메인 차이가 few-shot 성능에 미치는 영향을 분석한다.
ⓓ effect of domain differences between base and novel classses
도메인 차이 문제를 더 깊이 분석하기 위해, 우리는 이러한 domain shift를 포함하는 실험 시나리오를 설계하였다. fine-grained 분류와 일반 객체 인식 시나리오에 더해, 새로운 cross-domain 시나리오인 mini-ImageNet → CUB를 제안한다. 이는 일반적인 객체 클래스의 이미지는 비교적 쉽게 수집할 수 있지만, fine-grained 클래스의 이미지는 수집하기 어렵다는 점에서 현실적인 시나리오라고 볼 수 있다.

우리는 ResNet-18 feature backbone을 사용하여 실험을 수행하였다. 이 시나리오에서는 Baseline 방법이 모든 meta-learning 방법보다 더 높은 성능을 보였다. meta-learning 방법은 meta-training 단계에서 support set을 통해 학습하는 방법을 학습하지만, base support set이 모두 동일한 데이터셋에서 나오기 때문에 너무 다른 novel 클래스에는 잘 적응하지 못한다.
반면 Baseline은 주어진 소수의 novel 클래스 데이터를 기반으로 새로운 classifier를 단순히 교체하고 학습하기 때문에, 새로운 클래스에 빠르게 적응할 수 있으며 source와 target 도메인 간의 차이에 덜 영향을 받는다.
또한 Baseline은 Baseline++보다도 더 좋은 성능을 보였는데, 이는 intra-class variation을 추가적으로 줄이는 것이 오히려 적응 능력을 저해했을 가능성이 있다. 도메인 차이가 커질수록 Baseline의 성능이 상대적으로 더 높아지는 것을 확인할 수 있다. 즉, 도메인 차이가 커질수록 소수의 novel 클래스 데이터에 기반한 적응 능력이 더욱 중요해진다.

ⓔ effect of further adaptation
meta-learning 방법을 Baseline처럼 더 잘 적응시키기 위해, 직관적인 방법은 feature를 고정하고 새로운 softmax classifier를 학습하는 것이다. 우리는 이 간단한 적응 방법을 MatchingNet과 ProtoNet에 적용하였다. MAML의 경우 initialization 기반 방법이기 때문에 feature를 고정하는 것이 적절하지 않다. 대신 support set을 통해 몇 번의 gradient 업데이트만 수행하는 구조이므로, 새로운 분류기를 학습하는 수준까지 추가로 업데이트하여 더 적응하도록 한다.
RelationNet의 경우 feature가 벡터가 아닌 convolution map 형태이기 때문에 softmax classifier로 교체할 수 없다. 대신 novel 클래스의 적은 데이터를 3개의 support와 2개의 query로 나누어 relation module을 100 epoch 동안 fine-tuning한다.

추가적인 적응을 수행했을 때 MatchingNet과 MAML의 성능이 크게 향상됨을 확인할 수 있으며, 특히 mini-ImageNet → CUB와 같은 cross-domain 시나리오에서 그 효과가 두드러진다. 이는 기존에 Baseline보다 성능이 낮았던 이유가 adaptation이 부족했기 때문임을 보여준다.
그러나 meta-testing 단계에서 이러한 변경을 가하면 meta-training과의 불일치 문제가 발생할 수 있다. ProtoNet의 경우 도메인 차이가 작은 상황에서는 오히려 성능이 저하되는 결과를 보인다. 따라서 meta-training 단계에서 어떻게 효과적으로 적응을 학습할 것인가가 중요한 연구 방향이라고 판단된다.
요약하면, 실제 환경에서는 도메인 차이가 존재하는 경우가 많기 때문에, meta-training 단계에서 learning to adapt이 향후 few-shot meta-learning 연구에서 중요한 방향이 될 것이다.
Conclusions
본 논문에서는 few-shot classification에서 기존 표준 평가 설정의 한계를 분석하였다. 동일한 조건에서 다양한 방법을 비교한 결과, Baseline++ 모델은 표준 환경에서 최신 방법들과 경쟁력 있는 성능을 보였으며, Baseline 모델 또한 더 깊은 feature backbone을 사용할 경우 CUB와 mini-ImageNet 데이터셋 모두에서 최신 meta-learning 알고리즘들과 유사한 성능을 달성하였다.
특히 놀라운 점은, base 클래스와 novel 클래스 간 도메인 차이가 존재하는 보다 현실적인 환경에서는 Baseline이 모든 meta-learning 알고리즘보다 더 우수한 성능을 보였다는 것이다.
또한, 본 논문은 소스 코드와 일관된 평가 설정을 공개함으로써, 연구 커뮤니티가 공정한 비교를 바탕으로 few-shot learning에서 도메인 차이 문제를 해결하는 방향으로 발전할 수 있도록 기여하고자 한다.