학습과 평가 지표
모델은 어떤 순환으로 학습하고, 학습한 모델의 성능은 어떤 수로 보고하는가?
지도학습의 순환
지도학습(supervised learning)은 입력 와 정답 라벨 의 쌍으로 된 학습 데이터로 를 만족하는 파라미터 를 찾는 과정이다. 입력이 모델을 지나 예측이 되고, 손실 함수가 정답과의 차이를 계산하고, 역전파로 구한 기울기로 가중치를 갱신하는 순환을 되풀이한다. 신경망 기초 절의 3-4-2 신경망 그림이 샘플 하나로 이 순환을 한 바퀴 돈다.
분류와 회귀의 손실 함수
손실 함수는 예측이 정답에서 얼마나 벗어났는지를 수 하나로 잰다. 분류와 회귀는 출력의 형태가 달라서 쓰는 손실도 다르다.
다중 클래스 분류에서는 출력층에 softmax를 적용해 각 클래스의 확률을 구한다. cross-entropy 손실은 정답 분포와 예측 분포의 차이를 잰다.
이진 분류(탐지/비탐지)에서는 binary cross-entropy(BCE)를 쓴다.
연속값 예측(거리, 각도, 위상 계수)에는 평균제곱오차(MSE)가 기본이다. 이상값(outlier)에 민감한 문제에는 Huber loss가 더 강건하다.
클래스 불균형과 focal loss
레이다 탐지에서는 RD 맵의 전체 픽셀 가운데 표적 픽셀이 0.1 % 미만인 심한 클래스 불균형이 생긴다. 보통의 BCE 손실에서는 배경(0) 픽셀의 기여가 압도적으로 커서, 모델이 모든 픽셀을 0으로 예측하는 all-zero collapse에 빠진다.
focal loss는 쉽게 맞히는 배경 샘플의 기여를 줄여, 학습이 어려운 표적 샘플에 집중하게 한다.
이면 가 쉬운 샘플()의 가중치를 0에 가깝게 만든다. 가 흔하고, 는 클래스 빈도에 맞춰 조정한다. 원래의 RetinaNet은 양성에 를 썼지만, 레이다 탐지처럼 표적 픽셀이 극히 드물 때는 양성을 강조하는 가 알맞다.
픽셀 단위 분할(segmentation)에서는 표적 영역의 겹침(overlap)을 직접 최적화하는 Dice loss를 쓰며, 이 손실은 클래스 불균형에 자연히 강건하다.
실제로는 DiceBCE(Dice와 BCE의 합)나 FocalDice(focal과 Dice의 합)를 자주 쓴다. 다만 정답이 모두 0이면 분모 이 되어 값이 정의되지 않으므로, 작은 을 더해 수치 안정성을 지킨다.
최적화: Adam과 학습률
Adam(adaptive moment estimation)은 파라미터마다 학습률을 따로 조정하며, 이를 위해 1차 모멘트(기울기의 평균)와 2차 모멘트(기울기 제곱의 평균)를 함께 추적한다.
기본값 , , 이 대부분의 문제에서 잘 동작한다. weight decay를 정확히 적용하려면 AdamW를 쓴다.
과적합과 그 방지
학습 손실은 계속 줄어드는데 검증 손실이 어느 epoch부터 다시 오르면, 모델이 학습 세트에 지나치게 맞춘 과적합(overfitting)이다. 두 손실이 모두 높은 값에 머물면 과소적합(underfitting)이다. 두 꼴의 학습 곡선은 24장의 학습 곡선 그림에서 정상 수렴과 나란히 비교한다.
과적합을 막는 주요 방법은 다음과 같다.
- dropout: 학습할 때 뉴런을 무작위로 끈다. 탐지 문제에서는 0.1~0.2의 낮은 비율이 알맞다.
- weight decay(L2 정규화): 파라미터 크기에 비례하는 벌점을 준다. ~ 범위가 흔하다.
- early stopping: 검증 손실이 patience 에폭 넘게 나아지지 않으면 학습을 멈춘다. 24장 그림의 과적합 곡선에서는 검증 손실이 가장 낮은 epoch이 이 기준이다.
- 데이터 증강(augmentation): 시뮬레이터 파라미터를 무작위로 바꿔 다양성을 얻는다.
- batch normalization(BN): 미니배치마다 출력을 정규화해 학습을 안정시킨다. dropout과 함께 쓰면 효과가 충돌할 수 있으므로 주의한다.
평가 지표
모델을 학습했으면 얼마나 잘 하는지를 수치로 보고해야 한다. 손실 함수는 학습에 쓰고, 보고에는 사람이 해석하기 쉬운 지표를 쓴다. 분류 문제의 지표는 다음과 같다.
| 지표 | 식 | 뜻 |
|---|---|---|
| accuracy | 전체 정확도. 클래스 불균형에 약하다 | |
| precision | "탐지했다고 한 것 가운데 진짜의 비율". false alarm(FP)에 민감하다 | |
| recall() | "진짜 표적 가운데 탐지한 비율". 놓친 표적(FN)에 민감하다 | |
| F1 score | precision과 recall의 조화 평균 | |
| ROC-AUC | ROC 곡선 아래 면적 | 임계값과 무관한 전체 탐지 성능. 1.0이면 완벽하다 |
혼동 행렬(confusion matrix)이 이 모든 지표의 바탕이다.
| 예측: 표적 | 예측: 비표적 | |
|---|---|---|
| 실제: 표적 | TP(true positive) | FN(미탐지) |
| 실제: 비표적 | FP(false alarm) | TN(true negative) |
레이다 탐지에서는 특히 고정한 false alarm 확률 에서의 탐지 확률 로 성능을 말한다(13장). 예를 들어 "에서 "는 1000번에 1번 false alarm을 허용하면서 표적의 85 %를 탐지한다는 뜻이다.
회귀 문제의 지표는 다음과 같다.
| 지표 | 식 | 뜻 |
|---|---|---|
| MAE | 평균 절대 오차. 이상치에 강건하다 | |
| RMSE | 제곱 평균의 제곱근 오차. 큰 오차에 민감하다 | |
| NMSE | (dB) | 정규화 MSE. 신호 복원 품질 평가에 쓴다 |
| PSNR | dB 단위의 재구성 품질. SAR despeckling(23장)의 핵심 지표 |
강의 노트