쉽게 말하면, 손실 함수는 결과가 관측된 뒤 모델의 예측이나 결정에 비용을 수치로 매기는 함수다. 값이 작을수록 해당 과제에 더 바람직한 결정이라는 것이 보통의 관례다. 학습에서는 보통 이 값을 최소화하도록 모델을 조정한다.
| 정의 | 결과가 관측된 뒤 예측·결정·행동에 매기는 수치 비용 |
|---|---|
| 값의 관례 | 최소화 기준에서 값이 작을수록 바람직한 결정2,3,4,5 |
| 관련 개념 | 사례별 손실, 모집단 위험, 경험적 위험, 학습 목적 함수3,4,5,6 |
| 주요 쓰임 | 회귀의 평균·중앙값·분위수 추정, 분류의 확률 예측과 대리 손실6,7,8,9,10 |
| 대표 예 | 제곱 손실, 절대 손실, 핀볼 손실, 힌지 손실, 교차 엔트로피5,6,9,10,11 |
1. 개요
손실 함수(loss function)는 결과가 관측된 뒤 예측, 결정, 행동에 수치 비용을 매기는 함수다. 보통의 최소화 관례에서는 값이 작을수록 모델링하려는 과제에 더 바람직한 결정을 뜻한다. 통계적 학습에서는 사례별 손실을 데이터 분포나 표본과 결합해 위험(risk)을 만들고, 학습 목적 함수(training objective function)는 여기에 벌점이나 제약을 더할 수 있다. 이 용어들은 흔히 느슨하게 쓰이지만, 모든 자료나 소프트웨어 라이브러리에서 서로 바꿔 쓸 수 있는 것은 아니다.2,3,4,5
손실은 학습 절차가 어떤 오류를 중요하게 볼지를 정한다. 그러나 데이터 분포, 모델 종류, 최적화 알고리즘, 평가 절차까지 정해 주지는 않는다. 그래서 모델은 학습 목적 함수 값이 낮아도 배포 위험이 낮지 않을 수 있으며, 수치상 최솟값이 반드시 0일 필요는 없다.3,4,5
2. 정의
Y를 결과 공간, A를 행동 또는 예측 공간이라 하고, 손실을 ℓ: A×Y → R̄(확장 실수 값, +∞ 포함)로 둔다. 유한값 손실이 흔하지만, +∞는 불가능한 보고나 위반된 필수 조건을 나타내는 데 쓸 수 있다. 예측기 f가 입력 X를 행동 f(X)로 옮기고 결합분포 P 아래에서 기대값이 정의되어 있으면, 모집단 위험은 R_P(f) = E_(X,Y)~P[ℓ(f(X), Y)]다.
위험을 최소화하는 예측기는 분포, 행동 공간, 손실에 따라 정해진다. 결정 이론에서 하한(infimum)이 달성되면, 관측된 입력 x에서의 베이즈 행동은 조건부 위험을 최소화한다. 집합 기호를 쓴 것은 의도적이다. 손실이 최소화하는 행동을 둘 이상 가질 수 있기 때문이다.2,3
관측값 z_i = (x_i, y_i), i = 1, …, n이 있으면 경험적 위험 최소화(ERM)는 모집단 기대값을 표본 평균으로 바꾼다. 즉 R̂_n(f) = (1/n) Σ_i ℓ(f(x_i), y_i)이다. 모든 응용에서 표본이 독립 동일 분포일 필요는 없지만, 그 경우 해석과 통계적 보장은 표본 추출 과정에 달려 있다. 표준적인 독립 설정에서 경험적 위험은 모집단 위험의 표본 추정치다.4,5
3. 손실·위험·목적 함수·지표의 구분
논문과 라이브러리는 용어를 통일하지 않는다. 아래 구분은 유용하지만, 특정 논문이나 구현은 다른 이름을 쓸 수 있다.4,5,6
| 구분 | 일반적 의미 | 중요한 단서 |
|---|---|---|
| 사례별 손실 | 관측된 한 사례에 대한 ℓ(f(x_i), y_i) | 구조화된 사례는 여러 토큰, 픽셀, 시점을 포함할 수 있다. |
| 모집단 위험 | 지정된 분포 P 아래의 기대 손실 | 보통 알려져 있지 않아 추정하거나 상계를 잡아야 한다. |
| 경험적 위험 | 관측 표본에서 손실을 집계한 값 | 집계는 평균, 합, 가중 평균 또는 문서화된 다른 축약일 수 있다. |
| 학습 목적 함수 | 최적화기에 넘기는 값 | 경험적 손실, 규제 항, 보조 항, 제약을 포함할 수 있다. 최대화 문제로 쓰기도 한다. |
| 평가 지표 | 시스템을 비교하려고 보고하는 측정값 | 불연속이거나 미분 불가능할 수 있고, 학습 손실과 같을 필요가 없다.4,5,6 |
규제(regularization) 항이 더해진 목적 함수는 최소화 관례에서 J(θ) = R̂_n(f_θ) + λΩ(θ) 형태를 띤다. 여기서 Ω는 벌점이고 λ는 그 기여 크기를 조절한다. 다른 관례에서는 J를 손실이나 비용이라고 부르기도 한다. 음의 로그 우도는 보통 최소화하고 로그 우도는 최대화하는데, 두 방식은 부호만 다를 뿐 같은 적합 모델 선호를 나타낸다. 목적 함수 전체에 상수를 더하거나 양의 상수를 곱해도 정확한 최소점은 같다. 다만 보고되는 값이 달라지고, 고정 스텝 크기의 최적화 알고리즘 동작은 바뀔 수 있다.5,6,12
평가 지표는 보고 목적의 질문에 답하고, 학습 손실은 최적화와 통계적 목표를 제공한다. 정확도(accuracy)나 정확 일치 같은 이산 지표는 모델 매개변수에 대해 평평한 구간을 가질 수 있다. 그래서 미분 가능한 대리 손실로 학습하고 과제 지표는 따로 보고하는 경우가 많다. 대리 손실을 최소화하는 것이 목표 결정 규칙과 통계적으로 맞는지는 보정(calibration) 문제이며, 미분 가능성만으로 정해지지 않는다.7,13,14
4. 추정 대상
손실을 바꾸면 위험 최소화로 선택되는 모집단 양도 달라질 수 있다. 실수 값 결과와 예측값 a의 경우는 다음과 같다.
- 제곱 오차 위험은 조건부 평균과 관련 이차 적률이 존재할 때 조건부 평균에서 최소가 된다.
- 절대 오차 위험은 조건부 중앙값에서 최소가 된다. 분포에 평평한 중앙값 구간이 있으면 최소화하는 값이 하나로 정해지지 않을 수 있다.
- 수준 τ의 핀볼 손실은 조건부 τ 분위수에서 최소가 되며, 이때도 유일하지 않을 수 있다.
- 엄격 적절 확률 손실은 명시된 정의역과 적분 가능성 조건 아래에서 기대값 기준으로 참 확률분포를 보고할 때 최소가 된다.6,7,8,9
이들은 모집단에 대한 진술이다. 유한 표본 추정치는 표본 변동, 모형 설정 오류, 최적화 오차, 규제, 예측기의 제약 때문에 달라질 수 있다.3,4,6
4.1. 변환과 우도 상수
손실 값에는 척도가 있고, 종종 물리적 또는 정보 단위도 붙는다. 제곱 오차는 목표값 단위의 제곱을, 절대 오차는 목표값과 같은 단위를 가지며, 자연로그 우도는 nat 단위로 잰다. 그래서 서로 다른 손실 정의의 원시 값을 비교하는 것은 일반적으로 의미가 없다. 손실 값이 0이 될 필요도 없다. 음수 손실이나 양의 기약 최솟값을 가진 손실도, 관련 위험과 최적화 문제가 잘 정의되어 있으면 유효한 결정 문제를 만들 수 있다.3,6
모든 사례별 손실에 양의 아핀 변환 ℓ′(a,y) = cℓ(a,y) + b (c > 0)를 적용하면, b가 행동과 결과 모두에 대해 상수일 때 기대 위험의 최소화점은 보존된다. 임의의 증가 비선형 변환은 일반적으로 이를 보존하지 않는다. 기대값과 비선형 변환은 서로 교환되지 않기 때문이다. 이미 집계된 유한 표본 목적 함수에 증가 변환을 적용하면 정확한 순서는 유지되지만, 기울기, 곡률, 확률적 분해, 최적화기 동작은 바뀔 수 있다. 따라서 조건을 밝히지 않고 같은 학습 손실이라고 소개해서는 안 된다.3,6,12
음의 로그 우도는 매개변수에 의존하는 항을 함부로 버릴 수 없음을 보여 준다. 예측 평균 μ와 표준편차 σ > 0인 가우시안 관측에서 관측 하나의 음의 로그 우도는 ℓ(μ,σ;y) = ½ log(2πσ²) + (y − μ)²/(2σ²)이다. σ가 고정 상수이면 μ에 대한 최소화는 제곱 오차 최소화와 같다. σ가 학습되거나 입력에 따라 변하면 로그 척도 항과 σ²로 나누는 항이 모두 최적점에 영향을 준다. 최적화 대상 매개변수와 무관한 항만 최대 우도 추정값을 바꾸지 않고 제거할 수 있다.6
4.2. 점 예측 손실 예시
잔차를 r = y − a라 하자. 흔한 스칼라 회귀 손실은 다음과 같다.
| 손실 | 사례별 형태 | 모집단 목표 또는 특성 |
|---|---|---|
| 제곱 손실 | ℓ(a,y) = r² | 조건부 평균을 목표로 하며 잔차 크기에 대해 이차적으로 커진다. |
| L1 손실 | ℓ(a,y) = |r| | 조건부 중앙값을 목표로 하며 잔차 크기에 대해 선형으로 커진다.5,6 |
| Huber 손실 | 0 근처에서 이차, 꼬리에서 선형 | 제곱 손실에 비해 큰 잔차의 영향을 제한하며, 스케일 매개변수를 지정해야 한다.8 |
| 핀볼 손실 | ℓ_τ(a,y) = max(τr, (τ−1)r) | 0 < τ < 1일 때 조건부 τ 분위수를 목표로 한다.9 |
제곱 손실의 경험적 평균은 흔히 평균 제곱 오차(MSE)라고 부르고, 합은 잔차 제곱합이라고 부른다. 표본 크기가 고정되어 있으면 두 집계는 규제가 없을 때 같은 최소화점을 갖지만, 수치 척도는 다르다. 분산이 고정된 독립 가우시안 관측 모형에서 잔차 제곱합을 최소화하는 것은 위치 매개변수에 대해 우도를 최대화하는 것과 같다. 이 우도 해석은 모형 가정에 달려 있으므로, 모든 회귀 문제에 제곱 손실이 적절하다는 일반 증명은 아니다.5,6
Huber의 1964년 로버스트 추정 분석은 중심 영역 밖에서 도함수가 잘리는 손실을 도입했다. 널리 쓰이는 한 매개변수화는 다음과 같다.
ℓ_δ(r) = ½r² (|r| ≤ δ)
δ(|r| − ½δ) (|r| > δ)이 함수는 볼록이고 연속적으로 미분 가능하지만, 이계도함수는 |r| = δ에서 바뀐다. 라이브러리마다 관련 구간별 손실의 척도나 이름이 다를 수 있으므로, δ와 정확한 식은 재현 가능한 명세에 적어야 한다.8
Koenker와 Bassett의 회귀 분위수 공식은 비대칭 절댓값 벌점을 쓴다. τ = 0.5이면 핀볼 손실은 절대 손실에 비례하고, 다른 τ에서는 과소 예측과 과대 예측에 서로 다른 기울기가 주어진다. 여러 분위수를 따로 적합하면 조건부 분포의 일부를 설명할 수 있지만, 모형 구조나 적합 방법이 추가 제약을 두지 않으면 분위수 곡선이 서로 교차할 수 있다.9
5. 분류와 확률 예측
이진 레이블 y ∈ {−1, +1}과 실수 점수 s에 대해 0-1 손실은 ℓ₀₁(s,y) = 1(ys ≤ 0)이다. 0에서의 처리 규칙은 미리 정한 관례에 따른다. 많은 모형 종류에서 0-1 손실을 직접 경험적으로 최소화하기는 어렵다. 예측이 결정 경계의 한쪽으로 정해지면 이 손실은 더 세밀한 벌점을 주지 않는다. 그래서 많은 분류 절차는 로지스틱 손실이나 힌지 손실 같은 볼록 대리 손실을 쓴다. 볼록성만으로 분류 오류와 정렬되지는 않으며, 관련 모집단 조건은 분류 보정(classification calibration)이 제공한다.4,13,14
5.1. 이진 분류의 대리 손실
이진 로지스틱 손실은 ℓ_log(s,y) = log(1 + exp(−ys))이고, 이진 힌지 손실은 ℓ_hinge(s,y) = max(0, 1 − ys)다. 힌지 손실은 볼록이지만 ys = 1에서 미분 불가능하다. 표준 볼록 최적화 방법에는 부분 기울기로 충분하며, 서포트 벡터 머신의 목적 함수는 힌지형 경험적 손실과 노름 벌점을 결합한다. 양의 힌지 항을 제곱하면 제곱 힌지 손실이 되는데, 이는 여백 위반에 대한 민감도와 최적화 성질을 모두 바꾼다.4,10
5.2. 교차 엔트로피와 쿨백-라이블러 발산
범주형 목표 분포 p와 클래스에 대해 보고된 분포 q에 대해, 교차 엔트로피 손실은 H(p,q) = −Σ_k p_k log q_k다. p가 고정되어 있으면 식이 정의되는 경우에 H(p,q) = H(p) + D_KL(p‖q)가 성립한다. 따라서 q에 대해 교차 엔트로피를 최소화하는 것은 p에서 q로 가는 순방향 쿨백-라이블러(KL) 발산을 최소화하는 것과 같다. p가 원-핫이면 사례별 식은 관측된 클래스에 부여된 음의 로그 확률이 된다. 로그의 밑은 척도를 바꾸지만 최소화점은 바꾸지 않는다.
KL 발산은 비대칭이다. 이산 경우 D_KL(p‖q) = Σ_k p_k log(p_k / q_k)이며, p_k > 0인 클래스에 대해 q_k = 0이면 무한대가 된다. 따라서 분포의 순서를 밝혀야 하며, 방향과 분포를 얻는 방식을 빼고 'KL 손실'이라고만 하면 불완전하다.6,11
5.3. 적절 점수 규칙
로그 손실과 브라이어 점수는 보통의 확률 정의역에서 엄격 적절 점수 규칙이다. 손실 방향을 정하면 참 분포를 보고하는 것이 기대 손실을 유일하게 최소화한다. 적절성은 모집단 차원의 유인 성질이다. 잘못 설정된 학습, 분포 이동, 규제, 불완전한 최적화 뒤에도 유한 모형이 보정되어 있음을 보장하지는 않는다.7
5.4. 초점 손실과 클래스 가중치
초점 손실(focal loss)은 할당 확률이 p_t인 클래스에 대해 로그 손실을 ℓ_focal = −α_t(1 − p_t)^γ log p_t로 바꾼다. Lin 등은 쉬운 배경 사례가 많아 학습을 압도하던 밀집형 객체 탐지를 위해 이를 도입했다. γ > 0이면 조절 인자가 잘 분류된 사례의 기여를 줄이고, γ = 0이면 식은 알파 가중 로그 손실로 줄어든다. 초점 매개변수와 클래스 가중치는 손실 정의의 일부이므로 보고해야 한다.15
클래스 가중치, 리샘플링, 임계값 선택은 서로 다른 문제를 푼다. 학습 손실 안에서 클래스에 가중치를 주면 경험적 목적 함수가 바뀌고, 알려진 표본 추출 방식을 보정하는 것이 아니라면 추정하려는 모집단 양도 바뀔 수 있다. 반면 결정 임계값은 확률 모형을 적합한 뒤 하류의 오류 비용을 반영하는 데 쓸 수 있다. 어느 선택이 맞는지는 목표가 확률 추정, 순위 매기기, 특정 운영점, 비용을 고려한 결정 중 무엇인지에 따라 달라진다.3,7,13
6. 표현 학습과 구조화 출력 손실
임베딩 손실은 단일 스칼라 목표 대신 쌍, 삼중항, 더 큰 묶음을 비교한다. Hadsell, Chopra, LeCun은 Y = 0이 유사한 쌍을 뜻하는 레이블 관례를 두고 대조 손실을 썼다. 식은 다음과 같다. D는 학습된 거리이고 m은 여백이다.
ℓ = ½(1 − Y)D² + ½Y·max(0, m − D)²레이블 관례를 식에 그대로 둔 채 뒤집으면 의미가 반대가 된다. 따라서 관례를 반드시 기록해야 한다.16
FaceNet은 앵커 a, 양성 p, 음성 n으로 이루어진 삼중항으로 임베딩을 학습했다. 힌지형 항은 다음과 같이 쓸 수 있다.
ℓ = max(0, ‖f(a) − f(p)‖₂² − ‖f(a) − f(n)‖₂² + α)이 손실은 식뿐 아니라 삼중항을 고르는 방식에도 달려 있다. 이미 만족된 삼중항은 0을 기여하는 경우가 많으므로, FaceNet은 유익한 삼중항을 온라인으로 고르는 방법을 설명한다.17
Contrastive Predictive Coding은 양성 표본을 후보들과 구별하기 위해 InfoNCE를 도입했다. 양성이 하나인 흔한 형태는 다음과 같다.
ℓ_NCE = −log [ exp(s(q,k⁺)/τ) / ( exp(s(q,k⁺)/τ) + Σ_{j=1}^{K} exp(s(q,k_j⁻)/τ) ) ]점수 함수 s, 온도 τ, 후보 구성, 음성 개수가 목적 함수에 영향을 준다. SimCLR은 증강된 뷰에 대해 온도로 조절하는 관련 교차 엔트로피 목적 함수를 쓴다. 따라서 'InfoNCE 손실'은 양성 쌍, 음성 풀, 유사도, 정규화, 축약 관례를 명시해야 하나의 계열을 가리킨다.18,19
연결주의 시간 분류(CTC)는 출력 레이블 열로 접히는 정렬 경로들의 확률을 모두 합해 조건부 확률을 정의한다. 이 경로에는 빈 기호(blank)를 포함한 경로도 들어간다. CTC 손실은 이 합산 확률의 음의 로그다. 가정에는 입력 표현이 주어졌을 때 출력 시간 단계 사이의 특정 조건부 독립 분해가 포함된다. CTC가 임의의 시퀀스 대 시퀀스 정렬 모형을 제공하는 것은 아니다.20
분할에서 Milletari 등은 V-Net에서 Dice 중첩 계수로부터 유도된 미분 가능한 목적 함수를 최적화했다. 예측 복셀 값 p_i와 이진 정답 g_i에 대해 계수는 다음과 같다.
D = 2 Σ_i p_i g_i / ( Σ_i p_i² + Σ_i g_i² )D를 최대화하는 것은 −D 또는 1 − D를 최소화하는 것과 같다. 분모를 Σ_i p_i + Σ_i g_i로 둔 식은 V-Net의 식이 아니라 다른 소프트 중첩 변형이다. 평활 상수, 클래스별 집계, 배치 집계도 구현 선택이다. 실험은 'Dice 손실'을 하나의 고정된 식으로 다루지 말고 정확한 변형을 밝혀야 한다.21
7. 생성 모델의 목적 함수
변분 오토인코더는 로그 증거에 대한 변분 하한을 최적화한다. 최소화 관례에서 음의 증거 하한은 보통 다음처럼 쓴다.
L_VAE = −E_{z~q_φ(z|x)}[ log p_θ(x|z) ] + D_KL( q_φ(z|x) ‖ p(z) )첫 항은 보편적인 '재구성 손실'이 아니라 관측 우도 모형에 따라 정해진다. 예를 들어 가우시안 우도와 베르누이 우도는 서로 다른 음의 로그 우도 항을 준다. KL 항에 가중치를 곱하면, 그 가중치가 다른 명시된 모형이나 기준에서 나온 것이 아니라면 원래의 증거 하한과 다른 목적이 된다.22
원래의 Wasserstein GAN에서 비평자(critic)는 1-립시츠 함수에 근사하는 함수 f에 대해 E_{x~P_r} f(x) − E_{z~P_z} f(g_θ(z))를 최대화하도록 학습된다. 소프트웨어가 비평자 손실을 최소화한다면 이 식의 부호를 뒤집어야 한다. 생성기는 −E_{z~P_z} f(g_θ(z))를 최소화한다. 원래 알고리즘은 비평자 가중치를 잘라내는(clipping) 방식으로 립시츠 제약을 강제했다. WGAN-GP는 대신 샘플링된 보간점에서 입력 기울기 노름이 1에서 벗어나는 정도에 벌점을 주었다. 두 목적 함수는 관련되어 있지만 서로 바꿔 쓸 수 없다. 일반적인 'Wasserstein 손실'이라는 표시만으로는 제약 방식이나 계수가 정해지지 않는다.23,24
8. 규제와 복합 목적 함수
벌점은 학습 목적 함수의 일부이지만 반드시 예측 손실은 아니다. 두 가지 흔한 형태는 Ω₁(θ) = Σ_j |θ_j|와 Ω₂(θ) = Σ_j θ_j²다. 매개변수 부분집합, 정규화, 계수가 중요하다. 일부 구현은 편향, 정규화 매개변수, 임베딩을 벌점 대상에서 제외한다. 따라서 보고된 데이터 손실 값만 비교하면 실제 최적화되는 목적 함수의 차이를 가릴 수 있다.5
L2 벌점과 가중치 감쇠는 특정 갱신 규칙에서는 같지만, 모든 최적화기에서 같지는 않다. Loshchilov와 Hutter는 손실에 L2 항을 더하는 방식이 Adam 같은 적응형 방법에서 분리된 가중치 감쇠와 같지 않음을 보였다. AdamW는 기울기 기반 매개변수 갱신과 감쇠를 따로 적용한다. 모든 L2 벌점을 '가중치 감쇠'라고 부르면 알고리즘을 잘못 설명할 수 있다.25
다중 작업 학습은 흔히 가중 합 J(θ) = Σ_t λ_t L_t(θ)를 만든다. 가중치는 작업 사이의 절충을 나타내며, 작업 손실의 척도, 잡음, 기울기와 상호작용한다. 하나의 가중 합은 다목적 최적화 문제에 대한 한 가지 스칼라화일 뿐, 작업들의 중립적 결합이 아니다. Sener와 Koltun은 다중 작업 학습을 다목적 최적화로 명시적으로 정식화하고, 파레토 지향 접근이 고정된 스칼라 가중치와 어떻게 다를 수 있는지 보였다.26
제약도 목적 함수를 정할 수 있다. 제약 문제는 라그랑주 함수, 벌점, 장벽, 사영, 특수 해법으로 다룰 수 있다. 유한한 벌점 계수는 추가 조건 없이는 제약 문제와 비제약 문제를 일반적으로 같게 만들지 않는다. 따라서 선택한 정식화와 제약 허용오차가 학습 명세의 일부다.12
9. 최적화 성질
미분 가능성은 편리하지만 손실 함수의 보편적 요구 조건은 아니다. 힌지 손실과 절댓값 손실은 특정 점에서 매끄럽지 않지만, 부분 기울기, 근접, 좌표 방법 등으로 최적화할 수 있다. 반대로 매끄러운 손실도 비선형 모형과 합성하면 최적화가 쉽다고 보장되지 않는다.
볼록성은 최적화 변수의 함수로서 전체 목적 함수에 대해 판단해야 한다. 제곱 손실을 선형 예측기와 합성하면 볼록한 경험적 위험 항이 되지만, 같은 손실을 신경망과 합성하면 보통 볼록하지 않다. 볼록 목적 함수는 여러 전역 최소점을 가질 수 있다. 엄격 볼록성이나 강볼록성은 정의역 조건과 함께 더 강한 유일성 진술을 준다. 경사 하강법의 수렴에도 매끄러움, 스텝 크기, 해의 존재 같은 가정이 필요하다. 볼록성만으로 임의의 경사 하강 실행이 유일한 최적점에 도달한다는 뜻은 아니다.4,12
손실의 수치값은 축약 방식 없이는 의미가 없다. 라이브러리는 축약되지 않은 텐서, 합, 예시에 대한 평균, 마스크되지 않은 원소에 대한 평균 중 하나를 반환할 수 있다. TensorFlow의 기본 Keras 손실은 여러 축약 방식을 문서화하며 기본값은 sum_over_batch_size다. PyTorch의 교차 엔트로피 인터페이스는 none, mean, sum을 문서화한다. 그 가중 평균은 단순히 배치 크기가 아니라 적용되는 목표 가중치로 정해지는 분모를 쓴다.27,28
확률 손실은 프레임워크가 제공하는 경우 로짓에서 안정적인 융합 연산으로 구현하는 편이 보통 좋다. PyTorch의 교차 엔트로피는 log-softmax와 음의 로그 우도 의미를 결합하고, logsumexp는 수치 안정화를 쓴다. softmax 확률을 먼저 계산한 뒤 그 로그를 취하면 오버플로나 언더플로가 더 쉽게 생길 수 있다. 이미 로짓을 기대하는 인터페이스 앞에 softmax를 적용하면 계산 자체가 바뀐다.27,29
가변 길이나 부분 레이블 데이터에서는 마스킹과 정규화가 함께 최적화 대상을 정한다. 각 시퀀스를 평균한 뒤 시퀀스끼리 평균하면 모든 시퀀스에 같은 가중치가 주어진다. 유효한 토큰 전체를 평균하면 긴 시퀀스에 더 큰 가중치가 주어진다. 어느 축약도 보편적으로 옳지는 않다. 의도한 통계 단위와 맞춰야 하며, 학습 손실과 검증 손실을 비교할 때는 같은 방식을 유지해야 한다.5,28
10. 손실 선택
손실 선택은 보편적인 기본값이 아니라 추정하려는 결정이나 분포적 양에서 출발한다. 아래 표는 목표별 후보와 사용 전 확인할 질문을 정리한 것이다.
| 목표 | 후보 손실 | 사용 전 정할 질문 |
|---|---|---|
| 실수 결과의 조건부 평균 | 제곱 손실 | 이차 오차 비용과 큰 잔차에 대한 민감도가 적절한가? |
| 조건부 중앙값 | 절대 손실 | 중앙값이 필요한 행동인가? 유일하지 않은 중앙값은 어떻게 처리하는가? |
| 조건부 분위수 | 핀볼 손실 | 필요한 분위수 수준과 교차 제약은 무엇인가? |
| 클래스 확률 | 로그 손실 또는 다른 엄격 적절 점수 규칙 | 확률을 같은 모집단에서 평가하는가? 가중치가 목표를 바꾸는가? |
| 이진 결정 | 보정된 대리 손실과 결정 규칙 | 오류 비용, 유병률, 임계값 절차는 무엇인가? |
| 마진 기반 분류기 | 힌지형 손실 | 확률 보고가 아니라 여백 점수가 원하는 대상인가? |
| 임베딩 기하 | 쌍, 삼중항 또는 대조 목적 함수 | 양성, 음성, 여백, 배치를 어떻게 구성하는가? |
| 구조화 출력 | 우도, 주변 우도 또는 과제 특화 대리 손실 | 어떤 정렬, 분해, 마스크, 이완을 가정하는가?3,5,7,13 |
의도한 과제를 나타내지 않는 목표는 어떤 손실로도 보완되지 않는다. 레이블 오류, 선택적 관측, 분포 이동, 대리 목표 때문에 명시된 목적 함수를 정확히 최적화하는 것이 배포에 바람직하지 않을 수 있다. 따라서 검증은 학습 축약을 되풀이하는 데 그치지 않고 하류의 관심 양을 측정하고 관련 하위 집단을 살펴야 한다.3,5,7
응용에 비대칭적인 실제 결과가 있으면, 가능한 경우 그 비대칭을 문서화된 결정 모형에서 끌어내야 한다. 개수를 맞추려고만 고른 클래스 가중치가 오류 비용 비율과 자동으로 같지는 않다. 마찬가지로 임계값에 의존하는 지표를 대리 손실로 간접 최적화할 때는, 그 목적을 위해 따로 남겨 둔 데이터에서 결과 운영점을 확인해야 한다.3,7,13
11. 손실 곡선 해석
손실 곡선은 최적화 단계, 에포크, 경과 계산량에 따라 지정된 손실 축약을 기록한 것이다. 학습 손실, 검증 손실, 테스트 손실은 역할이 다르다. 학습 손실은 매개변수 갱신에 영향을 주고, 검증 결과는 모형 선택이나 조기 종료에 쓰일 수 있다. 테스트 세트는 고정된 절차 아래 최종 평가를 위한 것이다.4,5
곡선의 모양은 결정적 진단이 아니라 증거다. 학습 손실이 떨어지는 동안 검증 손실이 오르는 것은 과적합과 양립하지만, 전처리, 증강, 규제 항, 축약 방식의 불일치를 반영할 수도 있다. 평탄한 구간은 작은 기울기, 부적절한 학습률, 포화, 모형 용량 한계, 잡음 많은 추정, 실제 최적점 등에서 나올 수 있다. 진동은 확률적 배치뿐 아니라 지나치게 큰 스텝 크기에서도 나온다. 곡선만으로는 어느 설명이 옳은지 알 수 없다.5
곡선을 비교하기 전에 두 축과 두 손실 정의가 맞는지 확인한다. 유용한 진단에는 사례별 손실의 축약되지 않은 분포, 각 축약에서 유효한 원소 수, 데이터 분할, 기울기 노름, 유한값 검사, 단순 기준선, 모형이 맞춰져야 하는 작은 데이터 시험이 있다. 학습-검증 차이는 두 보고 양이 의도된 방식으로만 다를 때 해석할 수 있다.5,27,28
손실 표면은 매개변수의 함수로 본 목적 함수다. 시각적이거나 국소적인 기하 설명은 최적화기를 연구하는 데 도움이 되지만, 매개변수 대칭과 재매개변수화는 표현된 예측기를 바꾸지 않고도 겉보기 곡률을 바꿀 수 있다. 어떤 해가 '평평하다'거나 '날카롭다'고 주장하려면 명시된 매개변수화와 측정이 필요하다.5,12
12. 선호 학습 목적 함수
InstructGPT는 서로 다른 여러 목적 함수를 썼다. 하나는 지도된 다음 토큰 로그 손실이고, 다음은 사람이 순위를 매긴 비교로 학습한 보상 모형이다. 마지막은 기준 정책에서 벗어나는 정도에 벌점을 주면서 학습된 보상을 최대화하는 강화 학습 미세 조정이다. 전체 절차를 하나의 'RLHF 손실'이라고 부르면 단계마다 쓰인 서로 다른 데이터셋, 모형, 계수가 가려진다.30
직접 선호 최적화(Direct Preference Optimization, DPO)는 특정한 KL 정규화 보상 최대화 모형에서 정책 목적 함수를 도출한다. 프롬프트 x, 선호 응답 y_w, 거부 응답 y_l, 정책 π_θ, 기준 정책 π_ref, 계수 β에 대해 경험적 항은 다음과 같다.
L_DPO(θ) = −E_{(x,y_w,y_l)~D} log σ( β log[π_θ(y_w|x)/π_ref(y_w|x)] − β log[π_θ(y_l|x)/π_ref(y_l|x)] )DPO는 선호 쌍에서 정책을 직접 학습하며, 그 학습 절차에서 별도의 명시적 보상 모형을 적합하지 않는다. 기준 정책, 선호 데이터 구성, 계수, 시퀀스 로그 확률 관례, 추가 지도 항은 구현의 중요한 부분으로 남는다.31
13. 재현성 점검표
완전한 손실 명세에는 다음 항목을 기록해야 한다.
- 사례별 또는 구조별 정확한 식과 부호 관례
- 레이블 인코딩, 단위, 마스크, 평활 상수, 여백, 온도, 클리핑
- 축약 방식과 그 분모
- 클래스, 표본, 토큰, 작업별 가중치와 그 얻는 방법
- 모든 규제, 보조, 제약 항
- 구현이 로짓, 확률, 점수, 거리 중 무엇을 입력받는지
- 최적화 방향과 프레임워크 버전
- 학습, 검증, 모형 선택, 최종 평가에서 각각 보고하는 양
이런 세부 사항이 없으면 같은 이름의 손실을 쓴다고 설명한 두 시스템이 서로 다른 목적 함수를 최적화할 수 있다.5,15,21,25,27,28
출처 31개
- AI Wiki: Loss Function (2026-07-29 수정본) aiwiki.ai · CC BY 4.0 · 확인 2026-10-17
- WorldCat record (AI Wiki 인용) search.worldcat.org · 확인 2026-10-17
- Berger, J. O. (1985). Statistical Decision Theory and Bayesian Analysis, 2nd ed. Springer doi.org · 확인 2026-10-18
- Author-hosted PDF (AI Wiki 인용) cs.huji.ac.il · 확인 2026-10-17
- Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning. MIT Press deeplearningbook.org · 확인 2026-10-18
- Murphy, K. P. (2022). Probabilistic Machine Learning: An Introduction. MIT Press probml.github.io · 확인 2026-10-18
- Strictly Proper Scoring Rules, Prediction, and Estimation doi.org · 확인 2026-10-18
- Robust Estimation of a Location Parameter doi.org · 확인 2026-10-18
- Regression Quantiles doi.org · 확인 2026-10-18
- Support-vector networks doi.org · 확인 2026-10-18
- On Information and Sufficiency doi.org · 확인 2026-10-18
- Author site web.stanford.edu · 확인 2026-10-18
- Convexity, Classification, and Risk Bounds doi.org · 확인 2026-10-18
- Composite Binary Losses jmlr.org · 확인 2026-10-18
- Focal Loss for Dense Object Detection openaccess.thecvf.com · 확인 2026-10-18
- Dimensionality Reduction by Learning an Invariant Mapping (AI Wiki 인용) yann.lecun.org · 확인 2026-10-17
- FaceNet: A Unified Embedding for Face Recognition and Clustering openaccess.thecvf.com · 확인 2026-10-18
- Representation Learning with Contrastive Predictive Coding arxiv.org · 확인 2026-10-18
- A Simple Framework for Contrastive Learning of Visual Representations proceedings.mlr.press · 확인 2026-10-18
- Connectionist Temporal Classification: Labelling Unsegmented Sequence Data with Recurrent Neural Networks doi.org · 확인 2026-10-18
- V-Net: Fully Convolutional Neural Networks for Volumetric Medical Image Segmentation arxiv.org · 확인 2026-10-18
- Auto-Encoding Variational Bayes arxiv.org · 확인 2026-10-18
- Wasserstein Generative Adversarial Networks proceedings.mlr.press · 확인 2026-10-18
- Improved Training of Wasserstein GANs proceedings.neurips.cc · 확인 2026-10-18
- Decoupled Weight Decay Regularization openreview.net · 확인 2026-10-18
- Multi-Task Learning as Multi-Objective Optimization proceedings.neurips.cc · 확인 2026-10-18
- CrossEntropyLoss docs.pytorch.org · 확인 2026-10-18
- tf.keras.Loss tensorflow.org · 확인 2026-10-18
- torch.logsumexp docs.pytorch.org · 확인 2026-10-18
- Training language models to follow instructions with human feedback arxiv.org · 확인 2026-10-18
- Direct Preference Optimization: Your Language Model is Secretly a Reward Model proceedings.neurips.cc · 확인 2026-10-18