14 votos

¿Por qué la divergencia de Kullback-Leilbler es una mejor métrica para medir la distancia entre dos distribuciones de probabilidad que el error cuadrado?

Sé que la divergencia KL es una métrica que es más adecuada cuando queremos medir la distancia entre números que forma una probabilidad. Sin embargo, todavía estoy confundido, ¿cuál es el beneficio de usar la divergencia KL en lugar del error cuadrado entre los números de probabilidad?

Aprecio si alguien puede explicar esto en palabras simples.

19voto

netbook shopper Puntos 11

Resumen:

  • KL-Divergencia se deriva de la entropía de Shannon.
  • La entropía de Shannon es la cantidad de información contenida en una señal X con distribución $\mathrm{P}(X)$.
  • La cruz de la entrada de la información contenida en una señal X cuando codificamos con un estimado de la distribución de $\mathrm{Q}(X)$ en lugar de su verdadera distribución $\mathrm{P}(X)$.
  • El KL-Divergencia es la diferencia en la información entre el "verdadero" de la entropía de Shannon y el "codificado" cross-entropía.
  • El KL-Divergencia es asimétrica, porque si vamos a ganar información mediante la codificación de $\mathrm{P}(X)$ uso de $\mathrm{Q}(X)$, a continuación, en el caso contrario, podríamos perder información si queremos codificar $\mathrm{Q}(X)$ uso de $\mathrm{P}(X)$. Si codifica una alta resolución de imagen BMP en una resolución más baja JPEG, se pierde información. Si usted transformar una baja resolución JPEG en alta resolución BMP, usted obtener información. Lo mismo se aplica cuando se codifica una distribución de probabilidad $\mathrm{P}(X)$ uso de $\mathrm{Q}(X)$, o hacer lo contrario. Por lo que la propiedad: $$D_\text{KL}(\mathrm{P} \parallel \mathrm{Q}) \neq D_\text{KL}(\mathrm{Q} \parallel \mathrm{P})$$ es, de hecho, deseable, ya que expresa el hecho de que se pierde la información de una manera y ganó el otro cuando usamos KL-Divergencia como una medida de similitud.
  • El error cuadrático por otro lado, es simétrico: $$SSE(P,Q) = SSE(Q,P)$$ así que la idea intuitiva de que se pierde la información en una sola dirección y ganado en la otra no está correctamente expresado, si utilizamos la $SSE$ como una medida de similitud.

Detalles:

Para entender KL-divergencia, en primer lugar usted necesita para entender el concepto de la entropía de Shannon:

$$I(X) = -\sum_{i=1}^n {\mathrm{P}(x_i) \log \mathrm{P}(x_i)}$$

The Shannon entropy $I(X)$ is a measure of how much information is contained in a signal $X \in \{x_1,x_2,...,x_n\}$ that is characterized by the distribution $\mathrm P(x_i)$.

In other words, knowing that the probability distribution of $X$ is $\mathrm P(x_i)$ how much information do I learn or gain, when after performing an experiment, I find that the results is $X = x_i$.

To see this consider the case where $\mathrm P(x_i)=1$ for some $x_i$, and 0 for all others. So the event $X = x_i$ was always expected (it is a certain event), and we learn nothing from performing the experiment, hence in this case $X$ has zero information. If you do the math, you will see that in this case, $I(X) = 0$.

If on the other hand, if $\mathrm P(x_i)=\frac{1}{n}$ for all i, i.e we have a uniform distribution and any value of $X = x_i$ is equally likely, the we have the maximum possible value for $I(X)$, given the set $X$.

Now let's define the cross-entropy, which is how much information is in $X$, if I model $X$ with a simulated distribution $\mathrm{Q}(x_i)$ instead of the true distribution $\mathrm{P}(x_i)$:

$$ H(P,Q) = -\sum_{i=1}^n {\mathrm{P}(x_i) \log \mathrm{Q}(x_i)}$$

To simplify, we will write $I(P)$ instead of $I(X)$, since the set $X$ doesn't change. Now you can look at the KL-divergence, which is the difference in information between the case where we use the true distribution $\mathrm{P}(x_i)$ to represent our signal, and a simulated distribution $\mathrm{Q}(x_i)$:

$$D_\text{KL}(\mathrm{P} \parallel \mathrm{Q}) = H(P,Q) - I(P)$$

Now let's fill in the terms:

$$D_\text{KL}(\mathrm{P} \parallel \mathrm{Q})= -\sum_{i=1}^n {\mathrm{P}(x_i) \log \mathrm{Q}(x_i)} + \sum_{i=1}^n {\mathrm{P}(x_i) \log \mathrm{P}(x_i)}$$

And then simplify:

$$D_\text{KL}(\mathrm{P} \parallel \mathrm{Q})= -\sum_{i=1}^n {\mathrm{P}(x_i) (\log \mathrm{Q}(x_i)} - \log \mathrm{P}(x_i))$$

Which in turn leads to:

$$D_\text{KL}(\mathrm{P} \parallel \mathrm{Q}) = -\sum_{i=1}^n \mathrm{P}(x_i) \log\left(\frac{\mathrm{Q}(x_i)}{\mathrm{P}(x_i)}\right)$$

How is this different from using the squared error? Consider the squared error that we have when we estimate $\mathrm{P}(x_i)$ using $\mathrm{Q}(x_i)$:

$$ SSE(P,Q) = \sum_{i=1}^n (\mathrm{P}(x_i) - \mathrm{Q}(x_i))^2 $$

This quantity is symmetrical:

$$SSE(P,Q) = SSE(Q,P)$$

The KL-Divergence is not symmetrical:

$$D_\text{KL}(\mathrm{P} \parallel \mathrm{Q}) \neq D_\text{KL}(\mathrm{Q} \parallel \mathrm{P})$$


Ejemplo numérico en R:

library(LaplacesDemon) #Use this library for the KLD function
n=10
p=1/2
x=0:10
P=dbinom(x,size=n,prob=p)
plot(x,P,type="h",xlim=c(-1,11),ylim=c(0,0.5),lwd=2,col="blue",ylab="P(X)")
points(x,P,pch=16,cex=2,col="dark red")

enter image description here

    Q = dunif(x, min=0, max=10, log = FALSE)
    plot(x,Q,type="h",xlim=c(-1,11),ylim=c(0,0.5),lwd=2,col="blue",ylab="Q(X)")
    points(x,Q,pch=16,cex=2,col="dark red")

enter image description here

  > P
 [1] 0.0009765625 0.0097656250 0.0439453125 0.1171875000 0.2050781250
 [6] 0.2460937500 0.2050781250 0.1171875000 0.0439453125 0.0097656250
 [11] 0.0009765625
 > Q
 [1] 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1   
 > KLD(P,Q)
 ...
 

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X