Necesitará algunas condiciones para reclamar la equivalencia entre minimizar la entropía cruzada y minimizar la divergencia KL. Pondré su pregunta en el contexto de problemas de clasificación usando la entropía cruzada como funciones de pérdida.
Recordemos primero que la entropía se usa para medir la incertidumbre de un sistema, que se define como
para como las probabilidades de diferentes estados del sistema. Desde el punto de vista de la teoría de la información, es la cantidad de información necesaria para eliminar la incertidumbre.S( v ) = -∑yop (vyo) registrop (vyo) ,
p (vyo)vyoS( v )
Por ejemplo, el evento A I will die eventually
es casi seguro (tal vez podamos resolver el problema del envejecimiento de la palabra almost
), por lo tanto, tiene una baja entropía que requiere solo la información the aging problem cannot be solved
para asegurarlo. Sin embargo, el evento B The president will die in 50 years
es mucho más incierto que A, por lo tanto, necesita más información para eliminar las incertidumbres.
Ahora observe la definición de divergencia KL entre los eventos A y B
donde el primer término del lado derecho es la entropía del evento A, el segundo término puede interpretarse como la expectativa del evento B en términos del evento A. Y el describe cuán diferente es B de A desde la perspectiva de A. reKL( A ∥ B ) =∑yopagsUNA(vyo) registropagsUNA(vyo) -pagsUNA(vyo) registropagssi(vyo) ,
reKL
Para relacionar la entropía cruzada con la entropía y la divergencia KL, formalizamos la entropía cruzada en términos de eventos A y B como
De las definiciones, podemos ver fácilmente
Si es una constante, entonces minimizar es equivalente a minimizar .H( A , B ) = -∑yopagsUNA(vyo) registropagssi(vyo) .
H( A , B ) =reKL( A ∥ B ) +SUNA.
SUNAH( A , B )reKL( A ∥ B )
Una pregunta adicional sigue naturalmente cómo la entropía puede ser una constante. En una tarea de aprendizaje automático, comenzamos con un conjunto de datos (denotado como ) que representa el problema a resolver, y el propósito del aprendizaje es hacer que la distribución estimada del modelo (denotada como ) esté lo más cerca posible como sea posible a la verdadera distribución del problema (denotado como ).
es desconocido y está representado por . Por lo tanto, en un mundo ideal, esperamos
y minimizamos . Y afortunadamente, en la prácticaPAGS( D )PAGS( m o de l )PAGS( t r u t h )PAGS( t r u t h )PAGS( D )PAGS( m o de l ) ≈ P( D ) ≈ P( t r u t h )
reKL( P( D ) ∥ P( m o de l ) )rese da, lo que significa que su entropía se fija como una constante.S( D )
Supongo que es porque los modelos generalmente trabajan con las muestras empacadas en mini lotes. Para la divergencia KL y la entropía cruzada, su relación se puede escribir como De la ecuación, nosotros podría ver que la divergencia KL puede partir hacia una entropía cruzada de p y q (la primera parte), y una entropía global de la verdad fundamental p (la segunda parte).H( q, p ) =reKL( p , q) + H( p ) = -∑yopagsyol o g(qyo)
En muchos proyectos de aprendizaje automático, el minibatch está involucrado para acelerar la capacitación, donde la de un minibatch puede ser diferente de la global . En tal caso, la entropía cruzada es relativamente más robusta en la práctica, mientras que la divergencia de KL necesita un H (p) más estable para terminar su trabajo.p′ p
fuente
Así es como lo pienso:
dóndep y q son dos distribuciones de probabilidad. En el aprendizaje automático, generalmente sabemosp , que es la distribución del objetivo. Por ejemplo, en un problema de clasificación binaria,Y={0,1} , Así que si yi=1 , p(yi=1|x)=1 y p(yi=0|x)=0 , y viceversa. Dado cadayi∀i=1,2,…,N , dónde N es el número total de puntos en el conjunto de datos, generalmente queremos minimizar la divergencia KL DKL(p,q) entre la distribución del objetivo p(yi|x) y nuestra distribución prevista q(yi|x,θ) , promediado sobre todo i . (Lo hacemos ajustando los parámetros de nuestro modeloθ . Por lo tanto, para cada ejemplo de entrenamiento, el modelo está escupiendo una distribución sobre las etiquetas de clase0 y 1 .) Para cada ejemplo, dado que el objetivo es fijo, su distribución nunca cambia. Así,H(p(yi|xi)) es constante para cada i , independientemente de los parámetros de nuestro modelo actual θ son. Por lo tanto, el minimizador deDKL(p,q) es igual al minimizador de H(p,q) .
Si tuviste una situación dondep y q fueron variables (digamos, en las cuales x1∼p y x2∼q eran dos variables latentes) y deseaba hacer coincidir las dos distribuciones, entonces tendría que elegir entre minimizar DKL y minimizando H(p,q) . Esto es porque minimizandoDKL implica maximizar H(p) mientras minimiza H(p,q) implica minimizar H(p) . Para ver esto último, podemos resolver la ecuación (1 ) para H(p,q) :
H(p,q)=DKL(p,q)+H(p)(2)
El primero produciría una amplia distribución para p mientras que el último produciría uno que se concentra en uno o algunos modos. Tenga en cuenta que es su elección como profesional de ML si desea minimizarDKL(p,q) o DKL(q,p) . Una pequeña discusión de esto se da en el contexto de inferencia variacional (VI) a continuación.
En VI, debes elegir entre minimizarDKL(p,q) y DKL(q,p) , que no son iguales ya que la divergencia KL no es simétrica. Si una vez más tratamosp como se conoce, luego minimizando DKL(p,q) daría lugar a una distribución q que es nítido y enfocado en una o algunas áreas mientras minimiza DKL(q,p) daría lugar a una distribución q que es amplio y cubre una amplia gama del dominio de q . Nuevamente, esto último se debe a que minimizaDKL(q,p) implica maximizar la entropía de q .
fuente