라벨이 부족할 때: 어떤 샘플에 라벨을 붙이나
라벨을 붙일 수 있는 예산이 정해져 있다면, 어떤 샘플부터 붙여야 하는가?
모든 데이터가 같은 값어치를 갖지는 않는다
데이터가 많을수록 좋다는 직관은 틀리지 않지만, 데이터에 정보가 있어야 한다는 전제가 붙는다. 같은 양의 데이터라도 정보량이 크게 다를 수 있고, 이 정보량이 모델 성능을 좌우한다.
| 데이터셋(가상의 예) | 샘플 수 | 정보량 | 예상되는 결과 |
|---|---|---|---|
| 같은 SNR(15 dB)의 레이다 RD 맵 | 10,000개 | 낮다(중복이 많다) | 학습 때 보지 못한 낮은 SNR에서 성능이 떨어지기 쉽다 |
| 여러 SNR(0–30 dB), 클러터, 표적의 RD 맵 | 1,000개 | 높다(분포를 잘 덮는다) | 여러 SNR 구간에 고르게 대응하기 쉽다 |
원칙은 데이터의 양보다 다양성이 먼저라는 것이다. 거의 같은 샘플을 많이 모으는 것보다 조건이 다양한 샘플을 모으는 것이 모델에게 더 많이 가르친다. 그래서 레이다 학습 데이터를 설계할 때는 다양성(diversity)을 먼저 확보하고, 그다음에 양을 늘린다.
Shannon 엔트로피: 불확실성의 척도
Shannon 엔트로피(entropy)는 확률 분포의 불확실성, 곧 정보량을 수치로 나타낸다. 분포가 고를수록(모든 경우가 똑같이 가능할수록) 엔트로피가 높고, 한 결과에 몰릴수록 낮다.
그림은 학습 세트의 샘플을 SNR 구간 다섯 개로 나눈 비율 에서 엔트로피를 계산한다. ▶를 누를 때마다 구간 하나의 가 막대로 그려지고, 마지막 단계에서 다섯 막대를 쌓은 합이 가 된다. 버튼으로 앞 표의 두 데이터셋을 바꾼다.
구간마다의 샘플 수는 앞 표의 두 가상 데이터셋에 맞춰 정한 값이다. 오른쪽의 점선은 다섯 구간이 고를 때의 최댓값 log₂ 5이다.
15 dB 근처에 몰린 10,000개는 bit이고, 여러 SNR에 고르게 퍼진 1,000개는 bit로 최댓값 bit에 거의 닿는다. 앞의 것은 샘플이 열 배 많아도 SNR 조건이 한 구간에 몰려 있다.
데이터 수를 늘려도 검증 성능이 멈춰 있다면 두 가능성을 본다. 하나는 모델 용량 부족으로, 더 큰 신경망이 필요하다. 다른 하나는 데이터 정보량 포화로, 지금의 데이터 분포에서 더 배울 것이 없다. 정보량이 포화되었다면 같은 종류의 데이터를 더 넣어도 성능이 오르지 않으므로, 더 많은 데이터보다 더 다양한 데이터가 필요하다. 기존 분포에 없던 SNR 조건, 클러터 환경, 표적 유형의 데이터를 더하는 실험을 검토한다. 라벨 오류나 최적화 문제도 함께 확인한다.
정보량이 높은 데이터를 골라 모은다는 생각에서 다음 절의 능동학습이 나온다. 이 방법은 모델이 가장 불확실해하는 샘플, 곧 모델에게 정보량이 높은 샘플에 라벨을 붙인다.
능동학습
레이다 시스템에서는 실측 실험, 전문가 판독, 법적 허가가 필요할 때가 많아 라벨이 비싸므로, 무작위로 모은 데이터 전부에 라벨을 붙이는 것은 비효율적이다. 능동학습은 "어떤 데이터에 라벨을 붙일 것인가"를 모델이 정하게 해, 가장 적은 라벨로 가장 높은 성능을 얻으려는 방법이다.
| 전략 | 고르는 기준 | 직관 | 레이다 예 |
|---|---|---|---|
| uncertainty sampling | 모델의 예측 확률이 0.5에 가장 가까운 샘플 | 모델이 가장 모르는 것부터 배운다 | 표적과 클러터의 경계 SNR 구간의 RD 맵 |
| diversity sampling | 지금의 라벨 데이터와 가장 다른 샘플 | 아직 덮지 못한 영역을 채운다 | 기존에 없던 클러터 환경과 표적 속도의 조합 |
| committee disagreement | 여러 모델(committee)의 예측이 가장 엇갈리는 샘플 | 모델들의 의견이 갈리는 샘플이 경계 사례이다 | 앙상블 모델들의 탐지 여부가 엇갈리는 RD 맵 |
| expected model change | 라벨을 붙였을 때 모델이 가장 많이 바뀌는 샘플 | 배움의 영향이 가장 큰 데이터 | 기울기 노름(gradient norm)이 가장 큰 샘플 |
능동학습은 순환이다. 처음의 적은 라벨 데이터로 모델을 학습하고, 질의 전략으로 정보량이 높은 샘플을 고르고, 전문가가 라벨을 붙이면 모델을 다시 학습한다. 성능 목표에 이르거나 라벨 예산을 다 쓰면 멈춘다.
특징을 피크 SNR 하나로 줄인 장난감 예에서, 이 순환의 한 바퀴는 질의, 라벨, 재학습의 세 단계이다. 모델은 라벨이 붙은 false alarm의 가장 큰 SNR과 표적의 가장 작은 SNR의 한가운데를 임계값으로 쓰는 가장 단순한 분류기이다. 질의는 uncertainty sampling으로, 임계값에 가장 가까운 라벨 없는 후보를 고른다.
후보 탐지 20개의 피크 SNR(1.0–28.5 dB)은 가상의 값이고, 12 dB보다 큰 후보가 실제 표적이다.
해 보기
- 1회차의 세 단계에서 고르는 후보와 임계값의 변화를 확인하라.
관찰
임계값 14.75 dB에 가장 가까운 14.2 dB 후보를 고르고, 표적 라벨을 받고, 임계값이 7.60 dB로 옮겨 간다.
- 4회차 재학습까지 마쳤을 때 임계값과 실제 경계의 차이를 확인하고, 질의한 후보가 어디에 있었는지 보라.
관찰
라벨 6개를 쓴 뒤 임계값은 12.30 dB이고 실제 경계 12 dB와 0.30 dB 차이이다. 질의한 넷은 모두 경계 근처의 후보였다.
실측 레이다 데이터를 모으는 비용은 매우 높다(현장 측정, 장비 운용, 전문가 시간). 반면 시뮬레이터는 데이터를 얼마든지 만들지만 sim-to-real gap이 있다(18장). 능동학습을 쓰면 이 차이를 가장 적은 실측 데이터로 메울 수 있다.
- 시뮬레이터로 대량 학습: 적은 비용으로 기본 모델을 학습한다.
- 실제 환경에 배치 → 불확실한 샘플 찾기: 모델이 불확실해하는 실측 신호를 모은다.
- 최소한의 실측 데이터에만 라벨: 전문가의 시간을 핵심 경계 사례에만 쓴다.
- 미세조정: 핵심 실측 데이터로 sim-to-real gap을 보정한다.
능동학습의 효과는 데이터 분포와 선택 전략에 따라 다르다. 같은 라벨 예산에서 무작위 선택과 비교해 성능과 검수 시간을 함께 확인한다.
상황에 맞는 방법 고르기
먼저 가진 데이터와 라벨 예산을 확인한다. 아래 방법은 목적에 따라 함께 쓸 수 있다.
| 방법 | 필요한 것 | 레이다 예 | 쓸 때 |
|---|---|---|---|
| 군집화 | 라벨 없는 특징 벡터와 거리 기준 | 클러터 유형별 군집 찾기 | 데이터의 구조를 먼저 알고 싶을 때 |
| 오토인코더 | 되살릴 신호, 이상 탐지에는 정상 기준 데이터 | 복원 오차로 이상 신호 탐지 | 압축하거나 정상 무늬를 배울 때 |
| 자기지도·대조 학습 | 라벨 없는 신호, 뜻을 지키는 변환, 후속 문제의 적은 라벨 | RD 맵 표현을 사전학습한 뒤 표적 분류 | 라벨 없는 데이터가 풍부하고 표현을 다시 쓸 때 |
| 능동학습 | 처음 라벨과 모델, 라벨 없는 후보, 추가 라벨 예산 | 불확실하거나 새로운 환경의 RD 맵을 먼저 검수 | 라벨을 더 붙일 샘플을 고를 수 있을 때 |
예를 들어 자기지도학습으로 표현을 배운 뒤 적은 라벨로 분류기를 학습하고, 능동학습으로 더 검수할 샘플을 고를 수 있다. 비교할 때는 앞에서 정한 데이터 분할과 평가 지표를 유지하고, 평가용 데이터는 사전학습이나 라벨 선택에 쓰지 않는다.
강의 노트