Vou usar a divergência KL no meu código python e recebi este tutorial .
Nesse tutorial, implementar a divergência de KL é bastante simples.
kl = (model * np.log(model/actual)).sum()
Pelo que entendi, a distribuição de probabilidade de model
e actual
deve ser <= 1.
Minha pergunta é: qual é o limite máximo / valor máximo possível de k ?. Eu preciso saber o valor máximo possível de kl distance quanto ao limite máximo no meu código.
machine-learning
distance
kullback-leibler
user46543
fonte
fonte
Respostas:
Ou mesmo com o mesmo suporte, quando uma distribuição tem uma cauda muito mais gorda que a outra. Tome quando depois e Existem outras distâncias que permanecem limitadas, comop ( x ) = densidade de Cauchy ⏞ 1
fonte
Para distribuições que não têm o mesmo suporte, a divergência de KL não é limitada. Veja a definição:
se P e Q não têm o mesmo suporte, existe algum ponto que e , fazendo com que KL vá para o infinito. Isso também é aplicável a distribuições discretas, que é o seu caso. p ( x ′ ) ≠ 0 q ( x ′ ) = 0x′ p(x′)≠0 q(x′)=0
Edit: Talvez uma melhor escolha para medir a divergência entre distribuições de probabilidade seja a distância de Wasserstein, que é uma métrica e tem melhores propriedades do que a divergência KL. Tornou-se bastante popular devido a suas aplicações em aprendizado profundo (consulte redes WGAN)
fonte
Para adicionar as excelentes respostas de Carlos e Xi'an , também é interessante notar que uma condição suficiente para que a divergência de KL seja finita é que ambas as variáveis aleatórias tenham o mesmo suporte compacto e que a densidade de referência seja limitada . Esse resultado também estabelece um limite implícito para o máximo da divergência de KL (consulte o teorema e a prova abaixo).
Teorema: Se as densidades e q têm o mesmo suporte compacto X e a densidade p é delimitada nesse suporte (ou seja, possui um limite superior finito), então K L ( P | | Q ) < ∞ .p q X p KL(P||Q)<∞
Prova: Como possui suporte compacto X, isso significa que há algum valor positivo positivo:q X
Da mesma forma, como possui suporte compacto X, isso significa que há algum valor supremo positivo:p X
Além disso, como essas duas densidades estão no mesmo suporte e o último é limitado, temos . Isso significa que:0<q–⩽p¯<∞
Agora, deixando ser o último limite superior, que têm claramente assim naquela:0⩽ L _ <∞L––≡ln(p¯)−ln(q–) 0⩽L––<∞
Isso estabelece o limite superior necessário, o que prova o teorema.■
fonte