힌지 손실

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

힌지 손실(Hinge loss)은 기계 학습에서 사용되는 손실 함수의 한 종류이다. 이는 주로 최대 마진 분류를 수행하는 서포트 벡터 머신(SVM)과 같은 모델에서 사용되며, 다중 클래스 분류와 구조적 예측 문제로 확장될 수 있다. 힌지 손실은 볼록 함수이므로 볼록 최적화 기법을 사용하여 최적화할 수 있으며, 미분 불가능한 지점이 있어 평활화된 버전을 사용하기도 한다.

힌지 손실
개요
유형분류
손실 함수손실 함수
볼록 함수?
매끄러운 함수?아니요
미분 가능 함수?아니요
정의
수식max(0, 1 - t⋅y)
변수t = 실제 클래스 (t ∈ {−1, 1} 또는 t ∈ {0, 1})
y = 예측값
속성
힌지 손실은 볼록 함수인가?
힌지 손실은 매끄러운 함수인가?아니요
힌지 손실은 미분 가능한 함수인가?아니요
활용
주요 사용처최대 마진 분류 알고리즘, 특히 서포트 벡터 머신 (SVM)
대안
유사 손실 함수제곱 힌지 손실
로지스틱 손실
0-1 손실 함수
📚 더 읽어볼만한 페이지
  • 서포트 벡터 머신 - 순차적 최소 최적화
    순차적 최소 최적화(SMO)는 지지 벡터 머신(SVM)과 같은 기계 학습 문제에서 2차 계획법(QP) 문제를 작은 하위 문제로 분해하여 라그랑주 승수를 반복적으로 최적화하는 효율적인 알고리즘이다.

2. 다중 클래스 분류로의 확장

SVM은 일반적으로 일대다 또는 일대일 방식으로 다중 클래스 분류로 확장되지만, 힌지 손실 자체를 다중 클래스 분류로 확장하는 것도 가능하다. 다중 클래스 힌지 손실의 여러 변형이 제안되었다. Crammer와 Singer, Weston과 Watkins가 제안한 방식이 대표적이다.

구조적 예측에서 힌지 손실은 구조적 출력 공간으로 더 확장될 수 있다. 마진 재조정을 사용하는 구조적 SVM은 다음 변형을 사용한다. 여기서 는 SVM의 매개변수를 나타내고, 는 SVM의 예측을 나타내며, 는 결합 특징 함수를 나타내고, 는 해밍 손실을 나타낸다.

:\begin{align}
\ell(\mathbf{y}) & = \max(0, \Delta(\mathbf{y}, \mathbf{t}) + \langle \mathbf{w}, \phi(\mathbf{x}, \mathbf{y}) \rangle - \langle \mathbf{w}, \phi(\mathbf{x}, \mathbf{t}) \rangle) \\
& = \max(0, \max_{y \in \mathcal{Y}} \left( \Delta(\mathbf{y}, \mathbf{t}) + \langle \mathbf{w}, \phi(\mathbf{x}, \mathbf{y}) \rangle \right) - \langle \mathbf{w}, \phi(\mathbf{x}, \mathbf{t}) \rangle)
\end{align}.

2.1. Crammer와 Singer의 방식

크래머(Crammer)와 싱어(Singer)는 선형 분류기에 대해 다음과 같이 힌지 손실을 다중 클래스 분류에 맞게 수정하였다.

:\ell(y) = \max(0, 1 + \max_{y \ne t} \mathbf{w}_y \mathbf{x} - \mathbf{w}_t \mathbf{x})

여기서 t는 대상 레이블이고, \mathbf{w}_t\mathbf{w}_y는 모델 매개변수이다. 이 방식은 각 클래스에 대한 가중치 벡터를 고려하여 힌지 손실을 다중 클래스 문제로 확장한 것이다.

2.2. Weston과 Watkins의 방식

Weston과 Watkins는 max 대신 합계를 사용하는 유사한 다중 클래스 힌지 손실 정의를 제안했다.

:\ell(y) = \sum_{y \ne t} \max(0, 1 + \mathbf{w}_y \mathbf{x} - \mathbf{w}_t \mathbf{x}).

3. 구조적 예측

힌지 손실은 구조적 출력 공간을 다루는 구조적 예측 문제에도 확장될 수 있다. 마진 재조정을 사용하는 구조적 SVM은 다음 변형을 사용한다.

:\begin{align}
\ell(\mathbf{y}) & = \max(0, \Delta(\mathbf{y}, \mathbf{t}) + \langle \mathbf{w}, \phi(\mathbf{x}, \mathbf{y}) \rangle - \langle \mathbf{w}, \phi(\mathbf{x}, \mathbf{t}) \rangle) \\
& = \max(0, \max_{y \in \mathcal{Y}} \left( \Delta(\mathbf{y}, \mathbf{t}) + \langle \mathbf{w}, \phi(\mathbf{x}, \mathbf{y}) \rangle \right) - \langle \mathbf{w}, \phi(\mathbf{x}, \mathbf{t}) \rangle)
\end{align}

여기서 \mathbf{w}는 SVM의 매개변수를 나타내고, \mathbf{y}는 SVM의 예측을 나타내며, \phi는 결합 특징 함수를 나타내고, \Delta는 해밍 손실을 나타낸다.

4. 최적화

힌지 손실은 볼록 함수이므로, 머신 러닝에서 사용되는 다양한 볼록 최적화 기법을 사용하여 모델을 학습시킬 수 있다. 그러나 힌지 손실은 미분가능 함수가 아닌 지점이 있어 최적화에 어려움이 있을 수 있다.

4.1. 서브그래디언트

힌지 손실은 볼록 함수이므로 머신 러닝에서 사용되는 일반적인 볼록 최적화 방법을 사용할 수 있다. 하지만 힌지 손실은 미분가능 함수는 아니다. 점수 함수 y = \mathbf{w} \cdot \mathbf{x}를 사용하는 선형 SVM의 모델 매개변수 w에 대한 서브그래디언트는 다음과 같다.

:\frac{\partial\ell}{\partial w_i} = \begin{cases}
-t \cdot x_i & \text{if } t \cdot y < 1, \\
0 & \text{otherwise}.
\end{cases}

t}}이다.
t}}이다.


그러나 ty = 1에서 힌지 손실의 도함수는 정의되지 않으므로, Rennie와 Srebro가 제안한 것과 같은 평활화된 버전이 최적화에 선호될 수 있다.

:\ell(y) = \begin{cases}
\frac{1}{2} - ty & \text{if } ~~ ty \le 0, \\
\frac{1}{2} (1 - ty)^2 & \text{if} ~~ 0 < ty < 1, \\
0 & \text{if} ~~ 1 \le ty
\end{cases}

또는 Zhang이 제안한 제곱적으로 평활화된 함수를 사용할 수도 있다.

:\ell_\gamma(y) = \begin{cases}
\frac{1}{2\gamma} \max(0, 1 - ty)^2 & \text{if} ~~ ty \ge 1 - \gamma, \\
1 - \frac{\gamma}{2} - ty & \text{otherwise}
\end{cases}

수정된 Huber loss L\gamma = 2인 이 손실 함수의 특수한 경우이며, 구체적으로 L(t,y) = 4 \ell_2(y)이다.

4.2. 평활화된 힌지 손실

힌지 손실은 볼록 함수이지만, ty = 1에서 미분가능 함수가 아니기 때문에 최적화 과정에서 어려움이 있을 수 있다. 따라서 Rennie와 Srebro가 제안한 것과 같이 평활화된 버전의 হিন지 손실 함수를 사용하기도 한다.

:\ell(y) = \begin{cases}
\frac{1}{2} - ty & \text{if} ~~ ty \le 0, \\
\frac{1}{2} (1 - ty)^2 & \text{if} ~~ 0 < ty < 1, \\
0 & \text{if} ~~ 1 \le ty
\end{cases}

이 외에도 Zhang이 제안한 제곱적으로 평활화된 힌지 손실 함수도 사용된다.

:\ell_\gamma(y) = \begin{cases}
\frac{1}{2\gamma} \max(0, 1 - ty)^2 & \text{if} ~~ ty \ge 1 - \gamma, \\
1 - \frac{\gamma}{2} - ty & \text{otherwise}
\end{cases}

수정된 Huber loss L\gamma = 2인 경우에 해당하며, L(t,y) = 4 \ell_2(y)로 표현된다.

힌지 손실의 세 가지 변형: "일반" 변형(파란색), 그 제곱(녹색), Rennie와 Srebro가 제안한 분할 부드러운 버전(빨간색).
힌지 손실의 세 가지 변형: "일반" 변형(파란색), 그 제곱(녹색), Rennie와 Srebro가 제안한 분할 부드러운 버전(빨간색).