Qual é a diferença entre entropia e divergência KL?

24

Tanto a entropia cruzada quanto a divergência KL são ferramentas para medir a distância entre duas distribuições de probabilidade. Qual é a diferença? Além disso, a minimização de KL é equivalente à minimização de entropia cruzada.K G ( P | Q ) = Σ x P ( x ) log P ( x )

H(P,Q)=-xP(x)registroQ(x)
Keu(P|Q)=xP(x)registroP(x)Q(x)

Eu quero conhecê-los instintivamente.

Muito obrigado antecipadamente.

Jourd
fonte

Respostas:

22

Você precisará de algumas condições para reivindicar a equivalência entre minimizar a entropia cruzada e minimizar a divergência de KL. Vou colocar sua pergunta no contexto de problemas de classificação usando entropia cruzada como funções de perda.

Lembremos primeiro que a entropia é usada para medir a incerteza de um sistema, que é definido como para como as probabilidades dos diferentes estados do sistema. Do ponto de vista da teoria da informação, é a quantidade de informação necessária para remover a incerteza.

S(v)=-Eup(vEu)registrop(vEu),
p(vEu)vEuS(v)

Por exemplo, o evento A I will die eventuallyé quase certo (talvez possamos resolver o problema do envelhecimento por palavra almost); portanto, ele tem baixa entropia, o que requer apenas as informações the aging problem cannot be solvedpara torná-lo certo. No entanto, o evento B The president will die in 50 yearsé muito mais incerto que A, portanto, ele precisa de mais informações para remover as incertezas.

Agora observe a definição de divergência de KL entre os eventos A e B onde o primeiro termo do lado direito é a entropia do evento A, o segundo termo pode ser interpretado como a expectativa do evento B em termos do evento A. descreve como B é diferente de A da perspectiva de A.

DKeu(UMAB)=EupUMA(vEu)registropUMA(vEu)-pUMA(vEu)registropB(vEu),
DKeu

Para relacionar entropia cruzada com entropia e divergência de KL, formalizamos a entropia cruzada em termos dos eventos A e B como A partir das definições, podemos ver facilmente Se for uma constante, minimizar é equivalente a minimizar .

H(UMA,B)=-EupUMA(vEu)registropB(vEu).
H(UMA,B)=DKeu(UMAB)+SUMA.
SUMAH(UMA,B)DKeu(UMAB)

Uma outra pergunta segue naturalmente como a entropia pode ser uma constante. Em uma tarefa de aprendizado de máquina, começamos com um conjunto de dados (denotado como ) que representa o problema a ser resolvido, e o objetivo do aprendizado é tornar a distribuição estimada do modelo (denotada como ) o mais próxima possível para a verdadeira distribuição do problema (denotada como ). é desconhecido e representado por . Portanto, em um mundo ideal, esperamos e minimizar . E, felizmente, na práticaP(D)P(modeeu)P(trvocêth)P(trvocêth)) P ( m o d e L ) ) D S ( D )P(D)

P(modeeu)P(D)P(trvocêth)
DKeu(P(D)P(modeeu))Dé dado, o que significa que sua entropia é fixada como uma constante.S(D)

duvidoso
fonte
Obrigado pela sua resposta. Isso aprofundou meu entendimento. Então, quando temos um conjunto de dados, é mais eficaz minimizar a entropia cruzada do que a KL, certo? No entanto, não consigo entender o uso adequado deles. Em outras palavras, quando devo minimizar a KL ou a entropia cruzada?
Jourd 19/07/19
1
Depois de ler sua resposta, acho que não adianta minimizar a KL, porque sempre temos um conjunto de dados, P (D).
Jourd
Idealmente, escolheria a divergência KL para medir a distância entre duas distribuições. No contexto da classificação, a perda de entropia cruzada geralmente surge da probabilidade negativa de log, por exemplo, quando você escolhe a distribuição de Bernoulli para modelar seus dados.
19418 duplamente
Você pode querer olhar para este ótimo post . A simetria não é um problema na classificação, pois o objetivo dos modelos de aprendizado de máquina é tornar a distribuição prevista o mais próxima possível do P (D) fixo, embora as regularizações geralmente sejam adicionadas para evitar o ajuste excessivo.
doubllle
Eu entendi a assimetria da KL. No entanto, ainda não entendi como usar a minimização de KL ou de entropia cruzada. Isso significa que quando devo minimizar a KL e quando devo minimizar a entropia cruzada. Eu acho que é sempre uma constante, não é? SUMA
19418 Jourd
6

Suponho que seja porque os modelos costumam trabalhar com as amostras embaladas em mini-lotes. Para divergência de KL e entropia cruzada, sua relação pode ser escrita como A partir da equação, Pudemos ver que a divergência KL pode partir para uma entropia cruzada de peq (a primeira parte) e uma entropia global da verdade fundamental p (a segunda parte).

H(q,p)=DKeu(p,q)+H(p)=-EupEueuog(qEu)

Em muitos projetos de aprendizado de máquina, o minibatch está envolvido para agilizar o treinamento, onde o de um minibatch pode ser diferente do global . Nesse caso, a entropia cruzada é relativamente mais robusta na prática, enquanto a divergência de KL precisa de um H (p) mais estável para concluir seu trabalho.pp

zewen liu
fonte
1
Esta resposta é o que eu estava procurando. Na minha própria experiência atual, que envolve o aprendizado de probabilidades alvo, o BCE é muito mais robusto que o KL. Basicamente, KL era inutilizável. KL e BCE não são funções de perda "equivalentes".
Nicholas Leonard