Na minha opinião, a divergência de KL da distribuição da amostra para a distribuição verdadeira é simplesmente a diferença entre entropia cruzada e entropia.
Por que usamos a entropia cruzada para ser a função de custo em muitos modelos de aprendizado de máquina, mas usamos a divergência de Kullback-Leibler em t-sne? Existe alguma diferença na velocidade de aprendizado?
kullback-leibler
tsne
cross-entropy
JimSpark
fonte
fonte
Respostas:
A divergência de KL é uma maneira natural de medir a diferença entre duas distribuições de probabilidade. A entropia de uma distribuição p fornece o número mínimo possível de bits por mensagem que seria necessário (em média) para codificar sem perdas eventos extraídos de p . Atingir esse limite exigiria o uso de um código ideal projetado para p , que atribui palavras de código mais curtas a eventos de maior probabilidade. D K L ( p ∥ q ) pode ser interpretado como o número esperado de bits extras por mensagem necessários para codificar eventos extraídos da distribuição verdadeira pH(p) p p p DKL(p∥q) p , se estiver usando um código ideal para a distribuição vez de p . Tem algumas boas propriedades para comparar distribuições. Por exemplo, se p e q forem iguais, a divergência KL será 0.q p p q
A entropia cruzada pode ser interpretada como o número de bits por mensagem necessário (em média) para codificar eventos extraídos da distribuição verdadeira p , se estiver usando um código ideal para a distribuição q . Observe a diferença: D K L ( p ∥ q ) , q ) aumentará à medida que q se tornar cada vez mais diferente deH(p,q) p q DKL(p∥q) mede o número médio de bits extras por mensagem, enquanto mede o número médio de bits totais por mensagem. É verdade que, para p fixo , H ( pH(p,q) p H(p,q) q . Mas, se p não for mantido fixo, é difícil interpretar H ( p , q ) como uma medida absoluta da diferença, porque cresce com a entropia de p .p p H(p,q) p
A divergência de KL e a entropia cruzada estão relacionadas como:
Podemos ver a partir dessa expressão que, quando e q são iguais, a entropia cruzada não é zero; ao contrário, é igual à entropia de p .p q p
A entropia cruzada geralmente aparece nas funções de perda no aprendizado de máquina. Em muitas dessas situações, é tratado como a distribuição 'verdadeira' e q como o modelo que estamos tentando otimizar. Por exemplo, em problemas de classificação, a perda de entropia cruzada comumente usada (também conhecida como perda de log ), mede a entropia cruzada entre a distribuição empírica dos rótulos (dadas as entradas) e a distribuição prevista pelo classificador. A distribuição empírica para cada ponto de dados simplesmente atribui a probabilidade 1 à classe desse ponto de dados e 0 a todas as outras classes. Nota lateral: a entropia cruzada nesse caso é proporcional à probabilidade logarítmica negativa, portanto, minimizá-la é equivalente a maximizar a probabilidade.p q
Observe que (a distribuição empírica neste exemplo) é fixa. Portanto, seria equivalente dizer que estamos minimizando a divergência de KL entre a distribuição empírica e a distribuição prevista. Como podemos ver na expressão acima, os dois estão relacionados pelo termo aditivop (a entropia da distribuição empírica). Como p é fixo, H ( p )H(p) p H(p) não muda com os parâmetros do modelo e pode ser desconsiderado na função de perda. Ainda podemos querer falar sobre a divergência de KL por razões teóricas / filosóficas, mas, neste caso, são equivalentes da perspectiva de resolver o problema de otimização. Isso pode não ser verdade para outros usos da entropia cruzada e da divergência de KL, onde pode variar.p
O t-SNE ajusta uma distribuição no espaço de entrada. Cada ponto de dados é mapeado no espaço de incorporação, onde a distribuição correspondente q é adequada. O algoritmo tenta ajustar a incorporação para minimizar D K L ( p ∥ q ) . Como acima, p é mantido fixo. Portanto, da perspectiva do problema de otimização, minimizar a divergência de KL e minimizar a entropia cruzada são equivalentes. De fato, van der Maaten e Hinton (2008) dizem na seção 2: "Uma medida natural da fidelidade com a qualp q DKL(p∥q) p modela p j ∣ iqj∣i pj∣i é a divergência de Kullback-Leibler (que neste caso é igual à entropia cruzada até uma constante aditiva). "
van der Maaten e Hinton (2008) . Visualização de dados usando t-SNE.
fonte