나는 2 사이의 비 유사성 척도로 KL 분기를 사용하고 있습니다. m . f . 와 .
=−∑P(Xi)ln(Q(Xi))+∑P(Xi)ln(P(Xi)
경우 그리고, 우리는 쉽게 그 계산할 수
그러나 및 를 계산하는 방법
나는 2 사이의 비 유사성 척도로 KL 분기를 사용하고 있습니다. m . f . 와 .
=−∑P(Xi)ln(Q(Xi))+∑P(Xi)ln(P(Xi)
경우 그리고, 우리는 쉽게 그 계산할 수
그러나 및 를 계산하는 방법
답변:
당신은 할 수 없습니다. 확률 분포의 랜덤 변수 Q가 있다고 상상해보십시오. 친구 Bob은 결과가 확률 분포 P에서 나온 것으로 생각합니다. 그는 최적의 인코딩을 구성했습니다. 결과. 그러나 Q가 아닌 P로 인코딩을 구성했기 때문에 코드가 필요 이상으로 길어질 것입니다. KL- 분산은 코드의 길이를 측정합니다.
이제 그가 동전을 가지고 있다고 말하고 그가 얻은 결과의 순서를 말하고 싶습니다. head와 tail도 똑같이 가능하기 때문에 1 비트 코드를 제공합니다. 머리는 0, 꼬리는 1 그가 꼬리 꼬리 머리 꼬리를 얻는다면, 그는 1 1 1을 보낼 수 있습니다. 1. 그의 동전이 가장자리에 떨어지면 그는 당신에게 말할 수 없습니다! 그가 보낸 코드는 작동하지 않습니다. 이 시점에서 KL- 분화가 분해됩니다.
KL- 분산이 분해되기 때문에 다른 측정 또는 다른 확률 분포를 사용해야합니다. 당신이해야 할 일은 실제로 당신이 원하는 것에 달려 있습니다. 확률 분포를 비교하는 이유는 무엇입니까? 확률 분포는 어디에서 왔으며 데이터에서 추정됩니까?
확률 분포는 자연어 문서에서 비롯되었다고 말하고 범주 쌍을 비교하려고합니다.
먼저 대칭 관련성 측정을 권장합니다. 이 응용 프로그램의 경우 B가 A와 비슷하므로 A와 B가 비슷합니다.
코사인 유사성 측정을 시도 했습니까? NLP에서는 매우 일반적입니다.
KL을 고수하고 싶다면 두 문서 에서 확률 함수를 추정 한 다음 두 문서에 평균적으로 얼마나 많은 여분의 비트가 필요한지 확인하십시오. 즉 (P || (P + Q) / 2 + Q || (P + Q) / 2) / 2
실제로, 나는이 문제에 부딪쳤다. 이 경우 매우 적은 수의 값을 0으로 바꾸면 문제가 발생할 수 있음을 알았습니다. 사용하는 값에 따라 KL 값에 "바이어스"가 도입됩니다. 가설 검정 또는 임계 값과 관련된 다른 용도로 KL 값을 사용하는 경우이 작은 값이 결과를 편향시킬 수 있습니다. 이 문제를 처리하는 가장 효과적인 방법은 BOTH P와 Q가 0이 아닌 일관된 가설 공간 X_i에 대해서만 KL을 계산하는 것입니다. 기본적으로 KL의 도메인을 둘 다 정의 된 도메인으로 제한하고 KL을 사용하여 가설 테스트를 수행 할 때 문제가 발생하지 않도록합니다.