기계 학습에서 KL 분기가 자주 사용되는 이유는 무엇입니까?

Dec 15 2020

KL Divergence는 Gaussians와 같은 간단한 분포에 대해 닫힌 형태로 계산하기가 매우 쉽지만 일부 좋지 않은 속성이 있습니다. 예를 들어 대칭 적이 지 않고 (따라서 메트릭이 아니므로) 삼각 불평등을 존중하지 않습니다.

ML에서 자주 사용되는 이유는 무엇입니까? 대신 사용할 수있는 다른 통계적 거리가 없습니까?

답변

2 rhdxor Dec 19 2020 at 16:52

이 질문은 고려중인 ML 영역에 따라 이유가 다를 수 있다는 점에서 매우 일반적입니다. 다음은 KL- 분산이 자연스러운 결과 인 ML의 두 가지 다른 영역입니다.

  • 분류 : 로그 가능도 최대화 (또는 음의 로그 가능도 최소화)는 원-핫 타겟이 일반적으로 참조로 사용되는 DL 기반 분류 에서 일반적으로 사용되는 KL 발산을 최소화하는 것과 같습니다 (참조https://stats.stackexchange.com/a/357974). 또한 원-핫 벡터가있는 경우$e_y$$1$ 색인에서 $y$, 교차 엔트로피 최소화 $\min_{\hat{p}}H(e_y, \hat{p}) = - \sum_y e_y \log \hat{p}_y = - \log \hat{p}$로그 가능성을 최대화하는 것으로 귀결됩니다. 요약하면 로그 가능성을 최대화하는 것은 당연한 목표이며 KL-divergence (0 log 0이 0으로 정의 됨)는 명시 적으로 목표로 동기 부여되는 것이 아니라 일반적인 설정에서 로그 가능성과 동등하기 때문에 발생합니다.
  • 다중 슬롯 머신 (강화 학습의 하위 영역) : 신뢰 상한 (UCB)은 표준 농도 불평등에서 파생 된 알고리즘입니다. Bernoulli 보상이있는 MAB를 고려하면 Chernoff의 경계를 적용하고 자유 매개 변수를 최적화하여 아래에 설명 된 KL 발산으로 표현 된 상한을 얻을 수 있습니다 (참조 :https://page.mi.fu-berlin.de/mulzer/notes/misc/chernoff.pdf 다른 증명을 위해).

허락하다 $X_1, \dots, X_n$ 매개 변수가있는 Bernoulli RV $p$. $$P(\sum_i X_i \geq (p+t)n) \leq \inf_\lambda M_X (\lambda) e^{-\lambda t} = \exp(-n D_{KL}(p+t||p)).$$

1 ArayKarjauv Dec 19 2020 at 21:11

ML에서 우리는 항상 데이터가 나오는 알려지지 않은 확률 분포를 다룹니다. 실제 분포와 모형 분포 사이의 거리를 계산하는 가장 일반적인 방법은 다음과 같습니다.$KL$ 분기.

왜 Kullback-Leibler 분기인가?

다른 손실 함수 (예 : MSE, MAE)가 있지만 $KL$확률 분포를 다룰 때 발산은 자연 스럽습니다. 두 확률 분포가 얼마나 가까운지를 비트 단위로 수량화하는 것은 정보 이론의 기본 방정식입니다. 상대 엔트로피라고도하며 이름에서 알 수 있듯이 정보 이론의 중심 개념 인 엔트로피와 밀접한 관련이 있습니다. 불연속적인 경우에 대한 엔트로피의 정의를 생각해 봅시다.

$$ H = -\sum_{i=1}^{N} p(x_i) \cdot \text{log }p(x_i) $$

관찰 한 바와 같이 엔트로피 자체는 단일 확률 분포의 척도 일뿐입니다. 두 번째 분포를 추가하여이 공식을 약간 수정하면$KL$ 분기:

$$ D_{KL}(p||q) = \sum_{i=1}^{N} p(x_i)\cdot (\text{log }p(x_i) - \text{log }q(x_i)) $$

어디 $p$ 데이터 분포이고 $q$ 모델 분포입니다.

보시다시피 $KL$발산은 두 분포를 비교하는 가장 자연스러운 방법입니다. 또한 계산하기가 매우 쉽습니다. 이 기사 는 이에 대한 더 많은 직감을 제공합니다.

본질적으로 KL 발산으로 우리가보고있는 것은 근사 분포와 원래 분포의 데이터 확률 간의 로그 차이에 대한 기대입니다. 다시 말하지만, 우리가$log_2$ 이를 "우리가 잃을 것으로 예상되는 정보의 수"로 해석 할 수 있습니다.

교차 엔트로피

교차 엔트로피는 클래스에 대한 예측 분포를 나타 내기 때문에 소프트 맥스 (또는 시그 모이 드) 출력 계층이있는 손실 함수로 머신 러닝에서 일반적으로 사용됩니다. 원-핫 출력은 모델 분포를 나타냅니다.$q$, 실제 레이블은 대상 분포를 나타냅니다. $p$. 우리의 목표는$q$ ...에 $p$가능한 한 가깝게. 우리는 모든 값에 대해 평균 제곱 오차를 취하거나 절대 차이를 합산 할 수 있지만 정보 이론에 의해 동기 부여 된 하나의 척도는 교차 엔트로피입니다. 다음과 같이 배포 된 샘플을 인코딩하는 데 필요한 평균 비트 수를 제공합니다.$p$, 사용 $q$ 인코딩 분포로.

엔트로피를 기반으로하는 교차 엔트로피는 일반적으로 두 확률 분포의 차이를 계산하며 $KL$분기. 차이점은 분포 간의 총 엔트로피를 계산하는 반면$KL$발산은 상대 엔트로피를 나타냅니다. Corss-entropy는 다음과 같이 정의 할 수 있습니다.

$$ H(p, q) = H(p) + D_{KL}(p \parallel q) $$

이 방정식의 첫 번째 항은 실제 확률 분포의 엔트로피입니다. $p$ 이는 최적화 중에 생략됩니다. $p$일정합니다. 따라서 교차 엔트로피를 최소화하는 것은 최적화와 동일합니다.$KL$ 분기.

로그 가능성

또한 (로그) 우도를 최대화하는 것은 교차 엔트로피를 최소화하는 것과 동일 함을 보여줄 수 있습니다 .

한계

언급했듯이 $KL$발산은 대칭이 아닙니다. 그러나 대부분의 경우 이것은 중요하지 않습니다. 우리는 모델 분포를 실제 분포를 향해 밀고 그 반대의 경우는 아니므로 추정하기를 원하기 때문입니다. Jensen–Shannon divergence 라는 대칭 버전도 있습니다 .$$ D_{JS}(p||q)=\frac{1}{2}D_{KL}(p||m)+\frac{1}{2}D_{KL}(q||m) $$ 어디 $m=\frac{1}{2}(p+q)$.

의 주요 단점 $KL$알려지지 않은 분포와 모델 분포가 모두 지원되어야한다는 것입니다. 그렇지 않으면$D_{KL}(p||q)$ 된다 $+\infty$$D_{JS}(p||q)$ 된다 $log2$

둘째, $KL$삼각형 부등식을 위반하기 때문에 메트릭이 아닙니다. 즉, 어떤 경우에는 모델 분포를 추정 할 때 올바른 방향으로 가고 있는지 알려주지 않습니다. 다음은 이 답변 에서 가져온 예 입니다. 두 개의 이산 분포가 주어짐$p$$q$, 우리는 계산 $KL$ 발산 및 Wasserstein 메트릭 :

보시다시피 $KL$ 발산은 동일하게 유지되었지만 Wasserstein 메트릭은 감소했습니다.

그러나 의견에서 언급했듯이 Wasserstein 메트릭은 연속 공간에서 매우 다루기 어렵습니다. Wasserstein GAN 에서 사용 된 Kantorovich-Rubinstein 이중성을 적용하여 여전히 사용할 수 있습니다 . 이 기사 에서이 주제에 대한 자세한 내용을 찾을 수도 있습니다 .

두 가지 단점 $KL$노이즈를 추가하여 완화 할 수 있습니다. 이 백서 에서 자세히 알아보기