Voy a usar la divergencia de KL en mi código de Python y obtuve este tutorial .
En ese tutorial, implementar la divergencia de KL es bastante simple.
kl = (model * np.log(model/actual)).sum()
Según tengo entendido, la distribución de probabilidad de model
y actual
debería ser <= 1.
Mi pregunta es, ¿cuál es el límite máximo / valor máximo posible de k ?. Necesito saber el valor máximo posible de la distancia kl en cuanto al límite máximo en mi código.
machine-learning
distance
kullback-leibler
usuario46543
fuente
fuente
Respuestas:
O incluso con el mismo soporte, cuando una distribución tiene una cola mucho más gorda que la otra. Tome cuando luego y Existen otras distancias que permanecen acotadas comop ( x ) = densidad de Cauchy ⏞ 1
fuente
Para distribuciones que no tienen el mismo soporte, la divergencia de KL no está limitada. Mira la definición:
si P y Q no tienen el mismo soporte, existe algún punto donde y , haciendo que KL vaya al infinito. Esto también es aplicable para distribuciones discretas, que es su caso. p ( x ′ ) ≠ 0 q ( x ′ ) = 0x′ p(x′)≠0 q(x′)=0
Editar: Quizás una mejor opción para medir la divergencia entre las distribuciones de probabilidad sería la llamada distancia de Wasserstein, que es una métrica y tiene mejores propiedades que la divergencia KL. Se ha vuelto bastante popular debido a sus aplicaciones en aprendizaje profundo (ver redes WGAN)
fuente
Para agregar a las excelentes respuestas de Carlos y Xi'an , también es interesante observar que una condición suficiente para que la divergencia KL sea finita es que ambas variables aleatorias tengan el mismo soporte compacto y que la densidad de referencia esté limitada . Este resultado también establece un límite implícito para el máximo de la divergencia KL (ver el teorema y la prueba a continuación).
Teorema: Si la densidad de y tienen el mismo soporte compacto y la densidad es limitado en que el apoyo (es decir, es tiene un finito límite superior), entonces .q X p K L ( P | | Q ) < ∞p q X p KL(P||Q)<∞
Prueba: dado que tiene soporte compacto esto significa que hay algún valor mínimo positivo:Xq X
Del mismo modo, dado que tiene soporte compacto esto significa que hay un valor de supremum positivo:p X
Además, dado que ambas son densidades en el mismo soporte, y la última está limitada, tenemos . Esto significa que:0<q–⩽p¯<∞
Ahora, dejando que sea el último límite superior, claramente tenemos so ese:L––≡ln(p¯)−ln(q–) 0⩽L––<∞
Esto establece el límite superior requerido, lo que demuestra el teorema.■
fuente