1. 개요[편집]
| 초점 손실 Focal Loss | |
|---|---|
| 제안 | Lin, Goyal, Girshick, He, Dollár (ICCV 2017) — RetinaNet |
| 정의 | FL = −αt (1−pt)γ log pt |
| 관례값 | γ = 2, α = 0.25 |
| 푸는 문제 | 1단계 검출기의 극단적 전경-배경 불균형 (1 : 103~105) |
| 작동 방식 | 표본을 버리는 대신 쉬운 표본의 기울기를 감쇠 |
| 필수 동반 장치 | 마지막 분류층 편향을 π=0.01 로 초기화 |
| 이론적 흠 | 적정 채점 규칙이 아니다 — 출력이 사후확률이 아님 |
초점 손실은 교차엔트로피에 라는 변조 인자를 곱해, 이미 잘 맞히는 쉬운 표본의 손실 기여를 눌러 버리는 분류 손실 함수다. 린(Lin) 등이 2017년 RetinaNet 논문에서 1단계 물체 검출기의 고질적 클래스 불균형을 풀기 위해 제안했다. 이진 분류에서 정답 클래스에 부여된 확률을
로 두면 교차엔트로피는 이고, 초점 손실은
이다. 이면 그냥 (가중) 교차엔트로피로 돌아온다. 코드 한 줄짜리 수정인데 논문은 그해 ICCV 최우수 논문상을 받았고, 이후 검출·분할·의료영상처럼 양성 표본이 희귀한 거의 모든 문제에서 기본 선택지가 됐다.
2. 왜 필요한가 — 쉬운 음성이 손실을 독식한다[편집]
2단계 검출기는 영역 제안 단계에서 후보를 수천 개로 줄이고 표본 추출 비율까지 조절하니 불균형이 관리된다. 반면 RetinaNet 같은 밀집 1단계 검출기는 이미지 한 장에서 격자 전체에 앵커를 뿌려 후보를 ~ 개 만들고, 그중 실제 물체와 겹치는 것은 많아야 수십 개다. 나머지는 전부 “여긴 배경”이고, 대부분은 너무 쉬워서 모형이 를 준다.
문제는 개별 손실이 작아도 개수가 압도적이라는 것이다. 이라도 개를 더하면 100이 되고, 진짜 어려운 표본 수십 개가 기여하는 값을 가볍게 넘는다. 기울기의 방향이 “배경을 더 확실하게 배경이라고 말하기”로 정렬되고, 학습은 아무 일도 일어나지 않는 상태로 수렴한다. 클래스 가중치 만 조절해서는 이 문제가 안 풀린다 — 는 양성/음성의 비중은 바꾸지만 쉬운 표본과 어려운 표본을 구분하지 못하기 때문이다.
초점 손실의 핵심은 가중치 축을 하나 더 만든 것이다. 에서
- 인 표본: → 손실이 100배 줄어든다.
- 인 표본: 약 1000배 줄어든다.
- 인 표본: 배로만 줄어든다 — 상대적으로는 4배 더 중요해진 셈.
즉 절대적으로는 모두 줄어들지만 상대적 비중이 어려운 표본 쪽으로 이동한다. 손실의 총합에서 쉬운 음성의 지분이 무너지고, 학습 신호가 결정경계 근처에 집중된다.
3. 기울기로 보면 더 분명하다[편집]
로짓 , 라벨 , 로 두면 원논문 부록의 도함수는
이다. 을 넣으면 로 교차엔트로피의 익숙한 잔차 꼴이 나온다. 에서 앞의 가 잘 맞힌 표본의 기울기를 눌러 버리는 구조가 그대로 보인다. 괄호 안의 항은 음수라서 감쇠를 조금 더 밀어붙인다.
여기서 초점 손실의 성격을 규정할 수 있다. 이건 표본을 고르는 기법이 아니라 기울기를 재가중하는 기법이다. 어떤 표본도 버려지지 않고, 배치 구성도 손대지 않으며, 순전파 비용도 그대로다. 바꾼 것은 각 표본이 파라미터 갱신에 행사하는 표를 몇 장 줄지뿐이다.
4. γ와 α, 그리고 초기화[편집]
는 감쇠의 세기다. 원논문의 탐색에서 를 훑었고 2가 최적이었으며, 그 뒤로 대부분의 구현이 2를 기본값으로 쓴다. 가 커질수록 “쉽다”의 문턱이 낮아져 더 많은 표본이 사실상 무시된다.
는 처음 보면 이상하다. 전경이 희귀한데 전경 가중치를 0.25로, 배경을 0.75로 주기 때문이다. 이유는 두 인자가 상호작용하기 때문이다. 가 이미 다수인 쉬운 배경을 대량으로 눌러 놓았으므로, 그 위에 까지 전경 쪽으로 크게 기울이면 과보정이 된다. 논문의 표에도 ” 가 커지면 최적 는 작아진다”는 경향이 그대로 나타난다. 두 하이퍼파라미터를 따로 튜닝하면 안 된다는 뜻이며, 실무에서 쌍을 통째로 가져다 쓰는 관행은 게으름이 아니라 합리적인 선택이다.
세 번째 장치가 잘 안 알려져 있는데 없으면 학습이 초반에 발산한다. 마지막 분류층의 편향을 , 로 초기화하는 것이다. 기본 초기화에서는 모든 앵커가 전경 확률 0.5로 시작하므로, 개의 배경이 각각 를 내면서 첫 스텝에서 손실이 폭발한다. 사전확률을 반영해 시작점을 0.01로 낮춰 두면 이 초기 충격이 사라진다. 초점 손실이 안 된다는 재현 실패 보고의 상당수가 이 한 줄 누락이다.1
5. 하드 네거티브 마이닝·OHEM과의 비교[편집]
같은 문제에 대한 고전적 처방은 표본을 고르는 것이었다.
| 기법 | 방식 | 쉬운 표본의 운명 | 하이퍼파라미터 |
|---|---|---|---|
| 고정 비율 표본추출 | 양성 대 음성을 1:3 등으로 뽑음 | 대부분 버림 | 비율 |
| 하드 네거티브 마이닝 | 오분류된 음성을 모아 재학습 | 버림, 그리고 여러 라운드 필요 | 라운드 수·집합 크기 |
| OHEM (2016) | 배치 안에서 손실 상위 개만 역전파 | 손실 0 처리로 완전 배제 | , 비최대 억제 문턱 |
| 초점 손실 | 손실을 로 감쇠 | 남되 기여가 작아짐 | , |
OHEM(online hard example mining)은 배치마다 손실이 큰 표본만 골라 역전파하는 방식으로, 초점 손실과 문제의식이 같고 등장도 1년 빠르다. 차이는 버리느냐 줄이느냐다. OHEM은 쉬운 표본의 기여를 정확히 0으로 만들고, 초점 손실은 작지만 0이 아닌 값으로 남긴다. 원논문의 통제 실험에서 최선의 OHEM 설정 대비 초점 손실이 COCO AP 기준 약 3점 높았다. 해석은 두 가지로 갈린다 — (가) 쉬운 표본에도 미약한 신호가 남아 있어 완전 배제가 손해다, (나) OHEM은 배치 구성이라는 이산 결정이 끼어들어 최적화가 불안정하다. 어느 쪽이든 연속적인 재가중이 이산적인 선택보다 다루기 쉽다는 것은 최적화 일반의 교훈과 일치한다.2
라벨 평활화와는 방향이 정반대라는 점도 짚어 둘 만하다. 라벨 평활화는 타깃을 건드려 모든 표본의 확신을 일률적으로 낮추고, 초점 손실은 손실 가중치를 건드려 표본별로 다르게 취급한다. 둘 다 결과적으로 과신을 줄이는 방향이지만, 전자는 균등하고 후자는 표본 적응적이다. 믹스업은 입력과 타깃을 함께 섞으므로 또 다른 축에 있다. 셋을 한꺼번에 최대로 걸면 과하게 평평해진다는 경고는 그쪽 문서에 있는 그대로 여기에도 적용된다.
6. 보정 문제 — 논쟁 중[편집]
초점 손실의 출력이 확률로서 믿을 만한가는 생각보다 미묘하다.
이론 쪽 지적부터. 교차엔트로피는 적정 채점 규칙(strictly proper scoring rule)이라 기댓값을 최소화하는 지점이 정확히 참 사후확률 다. 초점 손실은 에서 이 성질을 잃는다. 모집단 최소점이 사후확률의 단조 왜곡된 값이 되므로, 순위는 보존되어도(분류 성능은 멀쩡하다) 출력 숫자를 확률로 읽으면 틀린다. 이 점을 정면으로 다룬 연구(2021)는 초점 손실이 분류 목적으로는 여전히 타당하지만 확률 추정에는 부적절하며, 최소점에서 참 사후확률을 되찾으려면 별도의 변환이 필요함을 보였다. 검출기가 뱉는 점수를 “이 물체가 존재할 확률”로 후속 시스템에 넘기는 설계는 이 지점에서 위험하다.
그런데 실측은 반대 방향으로 나오기도 한다. 무코티 등(2020)은 초점 손실로 학습한 심층망이 교차엔트로피보다 기대 보정 오차(ECE)가 낮다고 보고했다. 논리는 이렇다. 형태의 부등식이 성립하므로 초점 손실 최소화는 예측 분포의 엔트로피에 보너스를 주는 것과 같고, 이는 엔트로피 정규화로 작동해 과신을 억제한다는 것이다.
두 결과는 모순이 아니라 서로 다른 것을 재고 있다. 이론 쪽은 “최적해가 참 확률인가”를 묻고, 실측 쪽은 “유한 데이터로 학습한 심층망의 ECE가 얼마인가”를 묻는다. 현대 심층망은 체계적으로 과신하는 방향으로 어긋나 있으므로, 초점 손실이 만드는 과소확신 쪽 편향이 그 어긋남을 우연히 상쇄해 ECE가 좋아 보일 수 있다. 두 오차가 반대 부호라 합이 작아진 것이지 둘 다 없어진 게 아니다.
여기에 검출 특유의 사정이 겹친다. RetinaNet 계열의 점수는 가중과 감쇠 때문에 전반적으로 낮게 깔리고, 게다가 분류 점수가 위치 정확도와 무관하게 학습된다. 비최대 억제가 이 점수 순위로 상자를 고르므로 “분류는 확신하는데 상자는 어긋난” 검출이 살아남는 문제가 생기고, 이를 정면으로 고친 것이 위치 품질을 점수에 녹인 후속 손실들(GFL의 quality focal loss, varifocal loss)이다. 요약하면 초점 손실은 학습을 살리는 장치지 확률을 만드는 장치가 아니며, 확률이 필요하면 온도 조정 같은 사후 보정을 별도로 하는 것이 정직한 순서다.3 불확실성 정량화가 걸린 파이프라인이면 특히 그렇다.
7. 어디에 쓰이나, 그리고 언제 안 쓰나[편집]
- 밀집 물체 검출. 본래 무대다. 객체 검출 계열의 1단계 검출기 대부분이 분류 분기에 초점 손실을 쓴다. 앵커 없는 검출기(FCOS 등)도 마찬가지다.
- 의미 분할·의료영상. 병변 픽셀이 전체의 0.1% 수준인 문제에서 Dice 손실과 섞어 쓰는 조합이 사실상 표준 레시피가 됐다.
- 극단적 다중 라벨 분류. 라벨 수만 개 중 몇 개만 양성인 경우, 음성 라벨의 손실을 비대칭적으로 감쇠하는 변형이 쓰인다.
- 쓰지 말아야 할 곳. 클래스가 대체로 균형 잡힌 일반 분류에서는 이득이 거의 없거나 오히려 손해다. 라벨에 잡음이 많은 데이터셋에서는 더 나쁘다 — 틀린 라벨은 항상 “어려운 표본”으로 보이므로, 초점 손실이 그 표본에 가중치를 몰아주며 잡음을 열심히 암기한다. 잡음 라벨 아래에서는 오히려 라벨 평활화처럼 반대 방향으로 눌러 주는 기법이 맞다. 어려움과 오류를 구분하지 못하는 것이 이 손실의 구조적 한계다.
8. 관련 문서[편집]
- 라벨 평활화 · 믹스업 · 엔트로피 정규화 · 소프트맥스 함수
- 객체 검출 · 하드 네거티브 마이닝 · 합성곱 신경망
- 심층 학습 · 확률적 경사하강법 · 역전파 · 과적합
- 쿨백-라이블러 발산 · 불확실성 정량화 · 검증 및 확인
- 지식 증류 · 신경망 양자화 · 신경망 가지치기
9. Footnotes[편집]
-
이 편향 초기화는 논문 본문에서 한 문단짜리 구현 디테일로 지나가는데, 실제로는 초점 손실만큼이나 결정적이다. “손실 함수만 바꿨더니 첫 에폭에서 NaN이 떴다”는 이슈가 프레임워크 저장소마다 하나씩 있고, 답글은 대체로 “prior 초기화 하셨나요”다. 논문의 진짜 기여가 수식이 아니라 각주에 있는 경우는 생각보다 흔하다. ↩
-
참고로 초점 손실과 OHEM의 관계는 다른 데서도 반복되는 패턴이다. 견고 통계의 후버 손실, 이상치 제거의 RANSAC 대 M-추정, 커리큘럼 학습의 표본 선택 대 가중치 스케줄 — 전부 “버릴 것인가 줄일 것인가”의 변주다. 대개는 줄이는 쪽이 미분 가능해서 이긴다. ↩
-
그래서 “초점 손실을 쓰면 보정이 좋아진다”와 “초점 손실은 확률을 망친다”가 같은 학회에서 나란히 발표되는 광경을 볼 수 있다. 둘 다 맞다. 지표를 고르는 순간 결론이 정해지는 종류의 논쟁이고, 이럴 때 할 일은 논문을 더 읽는 게 아니라 자기 데이터에서 신뢰도 히스토그램을 직접 그려 보는 것이다. ↩