딜레마:
모델이 데이터를 선택할 때 uncertainty(불확실성)을 최소화해야 할지, diversity(상이) 또는 density(밀도)를 최대화해야 할지
모델이 예측을 가장 불확실하게 하는 데이터 포인트를 선택한다. 모델이 어떤 데이터 포인트에 대해 라벨을 예측할 때 불확실성이 높은 경우, 해당 데이터 포인트가 선택된다. 이 방법은 모델의 불확실성을 줄이고 더 정확한 예측을 목표로 한다.
e.g. 분류 모델에서 클래스 확률이 비슷한 두 클래스 간의 경계에 가까운 데이터를 선택할 수 있다.
| Data point | d1(신뢰도) | d2(신뢰도) |
|---|---|---|
| 라벨 A | 0.9 | 0.2 |
| 라벨 B | 0.09 | 0.5 |
| 라벨 C | 0.01 | 0.3 |
Traditional uncertainty-based sampling
Least Top Confidence
모델이 어떤 클래스에 대해 덜 확신하는지를 나타낸다.
Choose the instance with the least top confidence
e.g. d1에서 가장 큰 신뢰도는 0.9이고, d2에서 가장 큰 신뢰도는 0.5이다. 그리고 그 중 가장 작은 신뢰도는 0.5이므로 학습자는 d2의 라벨을 알고싶어한다.
$argmin_{x}max_{y}(\hat{P}(y|x))$
Most bottom confidence
모델이 어떤 클래스에 대해 매우 불확실하게 판단하는 경우를 나타낸다.
e.g. d1에서 가장 낮은 신뢰도는 0.01이고 d2에서 가장 낮은 신뢰도는 0.2이다. 그 중 더 낮은 신뢰도는 0.01이므로 학습자는 d1의 라벨을 알고싶어한다.
Margin confidence
모델이 두 클래스 간의 구별력을 얼마나 강하게 가지는지를 나타낸다.
Choose the instance with the least difference between top1-confidence and top2-confidence
e.g. d1에서는 0.9-0.09=0.81, d2에서는 0.5-0.3=0.2이므로 학습자는 신뢰도의 차이가 가장 작은 d2의 라벨을 알고싶어한다.
Maximum entropy
엔트로피가 가장 큰 예제를 쿼리하는 방식이다.
$H(x)=-\sum_{i=1}^nP(x_i)logP(x_i)$
e.g. d1에서는 $argmax=-[0.9.log(0.9) + 0.09log(0.09) + 0.01log(0.01)] = 0.4008$이고, d2에서는 $argmax=-[0.2log(0.2)+0.5log(0.5)+0.3log(0.3)]=0.64314$이다. 따라서 학습자는 d2의 라벨을 알고싶어한다.
Problem of uncertainly-based sampling
Uncertainty만을 사용하면 모델이 결정 경계 주변의 데이터에만 초점을 맞출 수 있고, 유사한 데이터만을 선택하는 경향이 있어서 모델의 다양성이 부족할 수 있다. → Diversity-based를 이용하여 uncertainty와 diversity의 균형을 맞출 수 있다.
샘플링 하에서 이상치를 선택해야 하므로 이상치에 의해 영향을 심각하게 받을 수 있다. → 이상치를 제외하기 위해 Density-based를 이용하면 된다.
diversity(or density)
데이터 풀에서 모델에게 가장 새로운 정보를 제공하는 데이터 포인트를 선택한다. 이 방법은 데이터 포인트 간의 다양성을 높이고 모델이 전체 데이터 공간을 더 잘 이해하도록 돕는다.
e.g. 데이터 공간에서 밀도가 낮거나 새로운 영역을 포함하는 데이터를 선택할 수 있다.
Core-set approach [Sener+,ICLR18]