t-SNE 목적 함수에서 교차 엔트로피가 아닌 Kullback-Leibler 발산을 사용하는 이유는 무엇입니까?


39

제 생각에는 샘플 분포에서 실제 분포로의 KL 발산은 단순히 크로스 엔트로피와 엔트로피의 차이입니다.

많은 기계 학습 모델에서 교차 엔트로피를 사용하여 비용 함수로 사용하지만 t-sne에서 Kullback-Leibler 분기를 사용하는 이유는 무엇입니까? 학습 속도에 차이가 있습니까?


1
KL에 대한 직관을 보려면 여기를 참조하십시오 : stats.stackexchange.com/questions/188903/…
kjetil b halvorsen

답변:


81

KL 발산은 두 확률 분포의 차이를 측정하는 자연스러운 방법입니다. 엔트로피 분포의 무손실 인코딩 이벤트로부터 인출하기 (평균적으로) 필요한 것 메시지 당 비트의 가능한 최소 번호 부여 . 이 한계를 달성하려면 에 대해 설계된 최적 코드를 사용해야 합니다.이 코드는 짧은 코드 단어를 높은 확률 이벤트에 할당합니다. 예상되는 숫자로 해석 될 수있는 여분의 진정한 분배로부터 인출 인코딩 이벤트에 필요한 메시지 당 비트 분산을위한 최적의 코드를 사용하는 경우, 아닌H(p)pppDKL(pq)pqp. 분포를 비교하기에 좋은 속성이 있습니다. 예를 들어, 와 가 같으면 KL 발산은 0입니다.pq

교차 엔트로피 는 분포 최적 코드를 사용하는 경우 진정한 분포 에서 도출 된 이벤트를 인코딩하는 데 필요한 평균 메시지 당 비트 수로 해석 될 수 있습니다 . 차이점에 유의하십시오. 는 메시지 당 평균 추가 비트 수를 측정하는 반면 는 메시지 당 평균 비트 수를 측정합니다 . 고정 경우 가 점점 더 따라 가 커지는 것은 사실 입니다. 그러나 가 고정되어 있지 않으면 를 해석하기가 어렵습니다.H(p,q)pqDKL(pq)H(p,q)pH(p,q)qppH(p,q) 의 엔트로피에 따라 증가하기 때문에 차이의 절대 측정 값으로 사용 됩니다.p

KL 발산과 교차 엔트로피는 다음과 관련이 있습니다.

DKL(pq)=H(p,q)H(p)

이 식에서 와 가 같을 때 교차 엔트로피가 0이 아님을 알 수 있습니다. 오히려 의 엔트로피와 같습니다 .pqp

교차 엔트로피는 일반적으로 기계 학습의 손실 기능에 나타납니다. 이러한 여러 상황에서 는 '실제'분포로, 는 최적화하려는 모델로 취급됩니다 . 예를 들어, 분류 문제에서 일반적으로 사용되는 교차 엔트로피 손실 (일명 log loss ) 은 레이블 의 경험적 분포 (입력 된)와 분류 자에 의해 예측 된 분포 사이의 교차 엔트로피를 측정합니다 . 각 데이터 포인트에 대한 경험적 분포는 단순히 확률 1을 해당 데이터 포인트의 클래스에 할당하고 0을 다른 모든 클래스에 할당합니다. 참고 :이 경우 교차 엔트로피는 음의 로그 가능성에 비례하는 것으로 판명되므로이를 최소화하는 것은 가능성을 최대화하는 것과 같습니다.pq

유의 (이 예에서 경험적 분포)에 고정된다. 따라서 우리는 경험적 분포와 예측 된 분포 사이의 KL 발산을 최소화한다고 말하는 것과 같습니다. 위의 식에서 볼 수 있듯이 두 개는 부가 항 (경험 분포의 엔트로피 와 관련이 있습니다. 는 고정되어 있기 때문에 는 모형의 매개 변수에 따라 변하지 않으며 손실 함수에서 무시 될 수 있습니다. 우리는 여전히 이론적 / 철학적 이유로 KL 발산에 대해 이야기하고 싶을 수도 있지만,이 경우 최적화 문제를 해결하는 관점과 동일합니다. 이것은 크로스 엔트로피 KL 발산의 다른 용도에 해당하지 않을pH(p)pH(p)p 다를 수 있습니다.

t-SNE 는 입력 공간에 분포 를 맞 춥니 다 . 각 데이터 포인트는 임베드 공간에 매핑되며 해당 분포 가 적합합니다. 알고리즘은 을 최소화하기 위해 임베딩 조정을 시도합니다 . 위와 같이 는 고정되어 있습니다. 따라서 최적화 문제의 관점에서 KL 발산을 최소화하고 교차 엔트로피를 최소화하는 것은 동일합니다. 실제로, Maaten 및 힌튼 (2008) 데르 반은 2 절에서 말하는 "신실함의 자연 측정되는 모델 이에 이는 쿨백 - 라이 블러 발산 ( "첨가 상수까지 교차 엔트로피와 동일)."pqDKL(pq)pqjipji

van der Maaten and Hinton (2008) . t-SNE를 사용하여 데이터 시각화


어떻게 든 '좋아하는'대답을 할 수 있습니까?
zwep

1
감사합니다. 도움이 되셨습니다. 투표 버튼 아래에있는 별표 아이콘을 클릭하여 질문을 전체 스레드를 저장하는 즐겨 찾기로 표시 할 수 있습니다. 계정 페이지에서 즐겨 찾기 목록을 볼 수 있습니다.
user20160
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.