학습 전략: 분할, 불균형, 라벨 예산
데이터셋을 이해한 다음에는 학습을 어떻게 설계하는가?
공개 데이터셋을 이해했다고 믿을 만한 학습 결과가 곧바로 나오지는 않는다. 모델링 단계에서는 무엇을 일부러 분리해 두었는지, 어떤 클래스가 소수로 밀려 있는지, 라벨 예산을 어디에 먼저 쓸지를 함께 정해야 한다. 그래서 학습 전략은 optimizer를 고르기 전에, 데이터셋이 정한 실험 기준을 이해하는 데서 출발한다.
분할과 평가 규약이 먼저다
학습/검증/테스트 분할은 형식이 아니라 문제의 정의이다. MSTAR에서는 17°와 15°의 운용 조건 변화를 지켜야 하고, Soli에서는 사용자와 세션을 분리하지 않으면 benchmark의 뜻이 약해진다. RadarScenes나 Sentinel-1에서도 무작위 분할만 쓰면 같은 주행 경로, 같은 관측 지점, 같은 시간대의 무늬가 학습과 테스트에 함께 남아 지나치게 낙관적인 결과가 나온다. 그래서 학습 전략은 어떤 모델을 쓸지보다 무엇을 일반화 대상으로 둘지를 먼저 정한다.
| 데이터셋, 상황 | 일부러 분리해야 하는 것 | 왜 중요한가 | 학습 전략에 주는 신호 |
|---|---|---|---|
| MSTAR | 부각 | 같은 클래스라도 산란 무늬가 달라져, 무작위 분할보다 훨씬 어려운 일반화 문제가 된다. | 도메인 시프트(domain shift)를 버티는 표현 학습과 클래스별 해석이 필요하다. |
| Soli | 사용자 / 세션 | 같은 손동작이라도 사용자와 세션이 바뀌면 시간 무늬가 달라진다. | accuracy만 보지 말고 다른 사용자에 대한 강건성을 확인한다. |
| RadarScenes | 시퀀스 / 경로 / 센서 상황 | 이웃 프레임이 양쪽에 남으면 학습/테스트 누수가 쉽게 생긴다. | 장면 단위 분할과 시간 연속성을 고려한 학습·평가가 필요하다. |
| Sentinel-1 GRD | 지역 / 계절 / 수집 조건 | 같은 지역, 같은 시기의 무늬만 배우면 product 일반화가 과대평가된다. | 관측 지점의 변화와 재방문 간격을 반영한 평가 설계가 먼저다. |
무작위 분할이 언제나 공정한 기준선은 아니다. 레이다 데이터에는 이웃 프레임, 겹치는 주행 경로, 겹치는 피험자와 세션, 겹치는 각도가 남기 쉽다. 분할을 먼저 지키지 않으면 뒤의 학습 전략 비교가 모두 흔들린다.
긴 꼬리와 클래스 불균형은 샘플링(표본화)만의 문제가 아니다
앞 절의 RadarScenes 클래스 분포처럼 공개 데이터셋은 흔한 클래스와 드문 클래스의 격차가 큰 일이 많다. 이때 전체 accuracy나 micro 평균 지표만 보면 빈도 높은 클래스의 성능이 전체를 덮는다. 그래서 클래스 불균형을 다룰 때는 oversampling뿐 아니라 어떤 지표를 보고 어떤 라벨 체계를 유지할지도 함께 정해야 한다. 선택지로는 클래스 균형 손실(class-balanced loss), 균형 샘플링, 클래스별 recall, balanced accuracy가 있다. 어느 것을 쓰든 드문 클래스의 성능을 따로 보는 평가 기준을 먼저 세운다.
| 문제 상황 | 겉으로 보이는 현상 | 먼저 고려할 수단 | 남길 질문 |
|---|---|---|---|
| 많은 클래스가 대부분을 차지한다 | accuracy는 높은데 드문 클래스의 recall이 거의 보이지 않는다. | 클래스 균형 샘플링, 가중치 조정, 클래스별 지표 | 무엇을 성공으로 셀 것인가? |
| 라벨 체계가 너무 잘게 나뉘어 있다 | 비슷한 클래스 사이의 혼동이 계속 커진다. | 더 굵은 분류 체계, 계층을 고려한 평가 | 이 라벨의 세분성이 실제 문제에 필요한가? |
| 드문 사건이 안전에 중요하다 | 평균 지표는 괜찮아 보여도 중요한 실패가 숨는다. | 클래스별 recall, 비용을 고려한 평가, 오류 감사 | 드문 클래스의 실패를 따로 읽고 있는가? |
라벨 예산이 작을 때는 pseudo-labeling보다 운영 원칙이 먼저다
라벨이 부족할 때 먼저 떠오르는 방법은 pseudo-labeling이나 준지도학습(semi-supervised learning)이다. 그러나 레이다에서는 기하 불일치, 약한 SNR, 센서 간 주석 잡음 때문에 신뢰도 임계값 하나로는 품질을 보장할 수 없다. 그래서 무엇을 자동으로 채우고, 무엇을 사람이 검수하며, 어떤 비율을 감사(audit)할지를 먼저 정한다. 이렇게 보면 pseudo-labeling은 자동화 기술보다 품질 관리 원칙에 가깝다.
| 라벨 예산 문제 | 바로 떠오르는 방법 | 먼저 정할 것 | 더 볼 곳 |
|---|---|---|---|
| dense 라벨이 너무 비싸다 | 약한 라벨 / coarse 라벨 / pseudo-label | 어디까지 자동으로 만들고 어디서 사람의 감사를 넣을지 | 자기지도학습으로 라벨 없이 표현 배우기 |
| 라벨 없는 풀은 큰데 라벨 붙은 씨앗이 작다 | 준지도학습 | 신뢰도, 시간·기하의 상식 검사, 오류 증폭 방지 | 군집화와 오토인코더로 라벨 없는 데이터의 구조 보기 |
| 어떤 샘플부터 라벨을 붙일지 모른다 | 능동학습(active learning) | 라벨 예산을 어디에 먼저 쓸지의 직관 | 정보량과 질의 전략으로 라벨 순서 정하기 |
비지도학습, 자기지도학습, 능동학습의 자세한 내용은 「라벨이 부족할 때」의 두 절에 있다.
강의 노트