Towards Open World Recognition
https://arxiv.org/pdf/1412.5687
0. Abstract
real world에서 recognition은 조절되어있는 실험실 환경에서 나타나지 않는 challenge들을 가진다. dataset은 dynamic하고 novel category는 계속해서 탐지되고 추가되야 한다. 이러한 문제들을 다루기 위해 저자들은 Open World recognition을 제안하고 정의한다. open world recognition system을 평가하기 위한 protocol과 객체의 카테고리를 점차 추가하고 모델을 효율적으로 진화시키는 NNO(Nearest Non-Outlier) 알고리즘을 제시한다.
1. Introduction
open world recognition은 추가적인 객체 카테고리를 계속해서 업데이트하고 보지못한 카테고리에 대해 robust하다. 본 논문은 open world recognition의 문제에 대한 단계를 제시하고 공식화한다. open set recognition은 one vs all 학습을 진행한다. 따라서 open set은 incremental learning을 하지 않고 많은 수의 카테고리를 다루지도 않는다. 반면 open world는 incremental learning을 하기 때문에 2가지의 다른 절차가 필요하다. 계속해서 novel class를 탐지하면서 탐지한 novel input을 업데이트 해야 한다.
첫번째 contribution은 open set recognition의 개념에서 확장된 open world recognition 문제를 정의한다. 두번째 contribution은 지속적으로 새로운 객체 카테고리를 학습할 수 있는 recognition system을 정의한다. 세번째 contribution은 선형변환된 feature space의 거리에서 감소하는 함수의 thresholding sum은 작은 open space risk를 가질 수 있다는 것이다. 마지막으로, open world recognition의 평가 protocol을 제시한다.
2. Related work
Incremental Learning
SVM이 두각을 나타내면서 많은 incremental extension이 제안되었다. update 과정은 매우 expensive하고 많은 수의 support vector에 의존한다. 이를 극복하기 위해 빠르고 inexpensive한 update processd와 다중클래스로 확장된 분류기들이 제안되었다.
Scalable Learning
확장성을 다루기 다양한 연구들이 제안되고 있는데, 이들은 확장성을 가지지만 incremental하지는 않다.
Open Set Learning
저자들은 open set의 NCM(Nearest Class Mean) 분류기를 사용하는 방식을 확장하였다. NCM은 입력벡터 x에 대해 유클리드 거리를 활용하여 가장 가까운 중심점(centroid)를 찾는다. (d는 유클리드 거리, μ는 중심점)
NCM을 활용하여 클래스 조건확률을 아래의 식과 같이 softmax 형태로 계산한다.
3. Open World Recognition
Kt는 t시간 안에 known class 라벨들의 세트이고 zero label은 unknwon class로써 일시적으로 라벨링한 것이다. 따라서 f(x)가 0보다크면 recognition한 것이고 0보다 작거나 같으면 reconition하지 못한 것이다.
objective function은 open space risk와 empirical error의 균형을 맞춰야 한다. (open space risk가 너무 낮으면 모델이 너무 보수적이어서 새로운 데이터의 대부분을 unknown으로 분류하고 empirical error가 너무 낮으면 훈련데이터에 너무 잘맞아서 opverfitting될 수 있다.)
open space는 known 데이터와 충분히 먼 거리의 공간을 말한다. 여기서 So는 known과 open space를 포함하는 공간이고 Br는 훈련데이터를 중심으로 한 반지름 r의 구를 말한다.
open space risk Ro는 open space에서 잘못된 예측을 할 위험의 정도로, 전체 공간에서 positive label에 대해 open space에서 positive label 비율을 뜻한다. (unknwon class인데 positive로 잘못 예측한 비율로 이해하였다.)
empirical risk RE와 open space riskRO를 최소화 해야 한다.
open world recognition을 정의하는 5가지 구성요소(F, ϕ, v, L, I)가 있다.
f(x) : recognition function
ϕ(x) : 클래스별 측정가능한 recognition function f(x)의 vector function
v(ϕ) : novelty detector로 0은 unknonw, 1은 known으로 구분
L : labeling process로 unknown 데이터를 새로운 클래스로 라벨링 Dt(yi, xi) 한다.
I : Dt 데이터를 학습해 클래스별 함수 fi+1(x), ..., fi+m(x)을 추가한다.
Eq6, 7은 novelty detection 과정으로 y는 f(x) 값 중 가장 높은 f(x)값을 가지는 클래스이며, Eq 6에는 v(ϕ)=0이어야 unknown 클래스라고 되어 있지만 임계값 τ를 넘지 못해도 unknonw으로 취급한다.
4. Opening existing algorithms
1 vs rest RBF SVMs는 incremental update, scalability를 필요로 하는 Open world recognition에 적합하지 않다. 이를 해결하기 위해 NCM 기반의 NNO 알고리즘을 제안한다.
Abating 함수는 학습 데이터로부터 멀어지면 값이 감소한다. 따라서 적절한 임계값 설정을 통해 open space risk를 관리할 수 있다. 논문에서 제시한 Compact Abating Probability(CAP)은 충분하지만 필수적이지 않다. CAP모델을 활용한다면 open space risk를 0으로 유지할 수 있다.
4.1. Nearest Non-Outlier(NNO)
모든 class를 known으로 가정하는 probability normalization을 사용하려 했으나 unknown class를 포함하는 open world recognition에는 적합하지 않다. 특히 total probability, Bayes' Law는 적용에 한계가 있다. 또한, class가 추가될 때마다 normalization factor, probability가 변하기 때문에 propbability해석에 제한이 있다. 이러한 문제를 해결하기 위해 Nearest Non-Outlier(NNO)알고리즘을 제안한다.
NNO는 각 class에 대해 f(x)를 측정하고 f(x)=0인 경우 해당 class가 아닌 것으로 판단된다. 최종적으로 모든 class가 reject(f(x)=0)이라면 unknown/novel로 라벨링된다. novel class가 모이면 인간이 라벨링한 데이터를 new class로 incremental 학습을 한다.
5. Experiments
ImageNet Large Scale Visual Recognition Competition 2010 dataset을 사용했으며, 이는 1K category, 1.2M의 image로 구성되어 있다.
5.1. Open World Evaluation Protocol
closed set evaluation은 모든 known class로 테스트하기 때문에 적합하지 않다. open set evaluation은 known, unknown category모두를 포함하고 있다. 하지만 Scheirer et al.이 제안한 방식은 새로운 클래스가 지속적으로 추가되는 open world recognition에 적합하지 않다. 또한 Ristin et al.이 제안한 incremental closed set은 지속적으로 새로운 카테고리가 추가된다. 따라서 이 두 방식을 결합하여 지속적인 클래스 추가와 unknown class recognition을 모두 할 수 있는 평가 프로토콜을 제안한다.
Training Phase
initial metric learning과 growth/incremental learning 2단계로 나뉜다. metric learning은 고정된 카테고리 안에서 거리 기반 분류기를 위한 파라미터를 학습한다. 그 후 incremental learning에서 새로운 클래스가 one by one으로 추가된다.
CAP모델에 기반해 unknown과 known 클래스 구분을 위한 최적의 임계값 τ을 학습한다. 이는 F1-score를 최적화하는 방식으로 여러 fold에[ 걸쳐 계산한 후 평균으로 얻게 된다.
Testing Phase
open world evaluation에 맞게 ImageNet을 known 500, unknwon 500으로 나눈다. 각 단계마다 known, unknown 일부를 평가한다.
Multi class Classification Error(ϵK)는 known class 내에서 분류 오류, Open world error는 unknown class를 잘 분류하지 못하는 오류로 open world recognition에서는 이 2가지 오류를 측정한다.
5. Experiments
6. Discussion