Al hacer clic en "Aceptar", acepta que se almacenen cookies en su dispositivo para mejorar la navegación por el sitio, analizar su uso y contribuir a nuestros esfuerzos de marketing. Consulte nuestra política de privacidad para obtener más información.
Conocimientos

Comprender la divergencia KL para entrenar mejor sus modelos de IA

Escrito por
Daniella
Publicado el
2024-10-24
Tiempo de lectura
Esto es un texto dentro de un bloque div.
min
📘 ÍNDICE
Muchas gracias. Hemos recibido su envío.
¡Uy! Algo ha ido mal al enviar el formulario.

Vamos a hablar de matemáticas, y más concretamente de teoría de la probabilidad. Nos gustaría hablar de una medida muy útil en aplicaciones de inteligencia artificial, a saber, la divergencia KL. La divergencia KL, o divergencia de 🔗 Kullback-Leibleres una medida muy utilizada en aprendizaje automático y teoría de la información para cuantificar la diferencia entre dos distribuciones de probabilidad. También se conoce comoentropía relativa y se atribuye al matemático 🔗 Solomon Kullback y a su compinche, el también matemático 🔗 Richard Leiblerpor su contribución al criptoanálisis en la década de 1950. Se utiliza paraevaluar en qué medida una distribución de probabilidad estimada difiere de una distribución de referencia, a menudo denominada distribución verdadera.

En la modelización y el desarrollo de la inteligencia artificial, esta noción está cobrando importancia, sobre todo en los procesos de entrenamiento de modelos cuyo objetivo es minimizar el error entre las predicciones del modelo y los resultados esperados.

🤔 Por qué interesarse por esta medida... es un tema que te puede parecer complejo para este Blog, que pretende ser generalista y quiere divulgar los mecanismos de la inteligencia artificial....

Sin embargo, entender la divergencia KL no solo permite mejorar la precisión de los modelos, sino también optimizar el trabajo de preparación de datos, un aspecto fundamental para producir conjuntos de datos de calidad y garantizar la fiabilidad del 🔗 Aprendizaje automático. Este concepto, aunque intuitivo en su planteamiento(que es lo que veremos en este artículo), requiere una comprensión profunda para ser aplicado eficazmente en el contexto de la inteligencia artificial.

¿Qué es la divergencia KL(Kullback Leibler)?

La divergencia KL, o divergencia de Kullback-Leibler, es una medida utilizada en la teoría de la información y el aprendizaje automático para cuantificar la diferencia entre dos distribuciones de probabilidad. Más concretamente, mide en qué medida una distribución de probabilidad estimada (a menudo una aproximación o predicción de una distribución) difiere de una distribución de probabilidad de referencia (a menudo denominada distribución verdadera).

¿Cómo funciona?

La divergencia KL entre dos distribuciones de probabilidad 𝑝 ( 𝑥 ) y 𝑞 ( 𝑥 ) se expresa mediante la siguiente fórmula:

Fórmula de divergencia KL

En esta ecuación :

  • 𝑝 ( 𝑥 ) representa la distribución real u objetivo.
  • 𝑞 ( 𝑥 ) representa la distribución aproximada o prevista.
  • 𝑥 es el conjunto de sucesos o resultados posibles.

La divergencia KL mide la diferencia entre estas dos distribuciones calculando, para cada valor posible de 𝑥, la diferencia logarítmica entre las probabilidades bajo 𝑝 ( 𝑥 ) y 𝑞 ( 𝑥 ), ponderada por la probabilidad bajo 𝑝 ( 𝑥 ). La suma de estos valores da una medida global de divergencia.

Esta medida no es simétrica, lo que significa queDKL(𝑝 ( 𝑥)∣∣𝑞 ( 𝑥 )) ≠DKL(𝑝 ( 𝑥 )∣∣𝑞 ( 𝑥 )), porque la divergencia depende de la distribución de referencia elegida.

En la práctica, cuanto más se acerque la divergencia a cero, más similares son las distribuciones 𝑝 ( 𝑥 ) y 𝑞 ( 𝑥 ). Una divergencia alta indica una diferencia significativa entre las distribuciones, lo que sugiere que 𝑞 ( 𝑥 ) no modela correctamente 𝑝 ( 𝑥 ).

Cálculo e interpretación de la divergencia KL

La interpretación de esta medida es importante para comprender su utilidad en el aprendizaje automático y la teoría de la información. He aquí algunos puntos clave:

  • 𝐷 𝐾 𝐿 ( 𝑝 ∥ 𝑞 ) = 0 Esto significa que las distribuciones 𝑝 ( 𝑥 ) y 𝑞 ( 𝑥 ) son idénticas. No hay divergencia entre ellas.
  • 𝐷 𝐾 𝐿 ( 𝑝 ∥ 𝑞 ) > 0 En este caso, la distribución 𝑝 ( 𝑥 ) es más informativa que la distribución 𝑞 ( 𝑥 ). Esto indica que 𝑞 ( 𝑥 ) no captura tan bien las características de 𝑝 ( 𝑥 ).
  • 𝐷 𝐾 𝐿 ( 𝑝 ∥ 𝑞 ) < 0 : Bien que théoriquement possible, cette situation est rare et souvent due à des erreurs de calcul ou des distributions mal définies.

Es importante señalar que la divergencia KL es asimétrica, lo que significa que no es una distancia matemática real entre dos distribuciones de probabilidad. Esta asimetría refleja el hecho de que la medida depende del orden de las distribuciones que se comparan, poniendo de relieve cuánta información se pierde cuando ( Q ) se utiliza para aproximar 𝑝 ( 𝑥 ).

¿Qué relación existe entre la divergencia KL y la optimización de los modelos de IA?

La relación entre la divergencia KL y la optimización de modelos de inteligencia artificial (IA) radica en su papel como función de coste o pérdida al entrenar modelos probabilísticos, especialmente en redes neuronales y modelos de clasificación.

En el aprendizaje automático, el objetivo es minimizar la diferencia entre las predicciones del modelo 𝑞 ( 𝑥 ) y los resultados reales 𝑝 ( 𝑥 ). La divergencia KL a menudo desempeña el papel de función de pérdida en este contexto.

Por ejemplo, en arquitecturas como los autocodificadores variacionales (VAE), la divergencia KL se utiliza para regularizar el modelo. Minimizar esta divergencia garantiza que la distribución predicha por el modelo se acerque a la distribución real de los datos, mejorando así la generalización del modelo.

Utilización en la optimización

Cuando se entrenan modelos de IA, la divergencia KL se incorpora a la función de pérdida para guiar la optimización. Al minimizar esta divergencia, las predicciones del modelo 𝑞 ( 𝑥 ) se acercan lo más posible a la distribución real 𝑝 ( 𝑥 ), lo que conduce a resultados más precisos.

En arquitecturas como las redes neuronales de autocodificadores variacionales (VAE), la divergencia KL desempeña un papel fundamental al imponer una regularización que ajusta el modelo para que no se desvíe demasiado de la distribución inicial de los datos. Esto ayuda a mejorar la generalización del modelo y evita que aprenda en exceso los detalles específicos de los datos de entrenamiento.

Beneficios

Al optimizar la divergencia KL, los modelos de IA pueden captar mejor la estructura probabilística de los datos, produciendo resultados más precisos, coherentes e interpretables. Esto se traduce en una mejora del rendimiento general, sobre todo en tareas como la clasificación, la generación de datos o la anotación probabilística de datos.

Así pues, la divergencia KL desempeña un papel clave en el perfeccionamiento de los modelos de IA, ya que alinea sus predicciones con la realidad observada, al tiempo que guía el proceso de aprendizaje hacia soluciones más óptimas.

¿Cómo contribuye la divergencia KL a la detección de anomalías en los modelos de IA?

En el contexto de la detección de anomalías, la divergencia KL mide la diferencia entre la distribución de probabilidad observada de los datos y una distribución de referencia o base, que representa el comportamiento normal o esperado. Así funciona el proceso

Definición de una distribución normal

El modelo se entrena primero con un conjunto de datos que representa comportamientos o sucesos considerados normales. Esto define una distribución de referencia 𝑝 ( 𝑥 ), que refleja la probabilidad de los acontecimientos en condiciones normales.

Comparación con una nueva distribución

Al evaluar nuevos datos, el modelo genera una distribución𝑞( 𝑥 ) basada en los datos observados. Si esta nueva distribución se desvía significativamente de la distribución normal 𝑝 ( 𝑥), esto indica una posible anomalía.

Medir la divergencia

A continuación, se utiliza la divergencia KL para cuantificar esta diferencia entre la distribución normal 𝑝 ( 𝑥 ) y la distribución observada 𝑞 ( 𝑥 ). Una divergencia KL elevada indica que la nueva observación se desvía fuertemente de la normal, lo que sugiere la presencia de una anomalía.

Aplicaciones de la divergencia KL en la ciencia de datos

La divergencia de Kullback-Leibler tiene muchas aplicaciones prácticas, desde la detección de la deriva de datos hasta la optimización de arquitecturas de redes neuronales. Esta sección explora sus principales aplicaciones y las ilustra mediante diversos ejemplos concretos.

1. Control dela deriva de datos

Contexto

Los datos de un modelo pueden cambiar con el tiempo, lo que puede provocaruna desviación de los datos. Es necesario detectar esta deriva para mantener el rendimiento de los modelos de aprendizaje automático. La divergencia KL se utiliza para comparar la distribución de los datos actuales con la de los datos históricos, con el fin de detectar cualquier variación significativa.

Ejemplo

Supongamos que ha entrenado un modelo de detección de fraudes en transacciones con tarjeta de crédito. Si el comportamiento de los usuarios cambia (por ejemplo, observa un aumento repentino de las transacciones en línea o una variación de los importes), esto podría indicar una desviación en los datos. Comparando la distribución de los importes de las transacciones de hoy con la de hace un mes, la divergencia KL le permite medir en qué medida difieren estas distribuciones y si es necesario volver a entrenar el modelo.

Ventaja

Este método permite reaccionar de forma proactiva para ajustar los modelos a las nuevas condiciones de los datos reales, lo que garantiza una mayor robustez.

2. Optimización de los autocodificadores variacionales(VAE)

Contexto

Los autocodificadores variacionales (VAE) son redes neuronales utilizadas para generar datos realistas a partir de un espacio latente. Proyectan los datos de entrada en una distribución probabilística (normalmente una distribución gaussiana) y la divergencia KL se utiliza para comparar esta distribución generada con una distribución de referencia.

Ejemplo

Consideremos un VAE entrenado con imágenes de rostros humanos. El VAE toma una imagen de entrada, la comprime en un espacio latente (una distribución gaussiana) y, a continuación, reconstruye una imagen a partir de esta distribución. Para regularizar esta proyección se utiliza la divergencia KL, que garantiza que la distribución latente no se desvíe demasiado de la distribución de referencia.

Ventajas‍

Esto ayuda a estabilizar el entrenamiento VAE, evitando que el modelo genere distribuciones demasiado alejadas de la realidad. De este modo, las imágenes generadas por el modelo son cada vez más realistas.

Arquitectura del autoencoder variacional (ilustración) - Fuente : 🔗 Siddhartha Subray, Stefan Tschimben, Kevin Gifford

3. Redes generativas adversariales(GAN)

Contexto

Las redes generativas adversariales(AGN) constan de dos redes: un generador que intenta crear datos realistas (como imágenes o texto) y un discriminador que intenta distinguir los datos reales de los generados. La divergencia KL se utiliza para medir la diferencia entre las distribuciones de los datos reales y los generados.

Ejemplo

Tomemos el caso de un GAN entrenado para generar obras de arte digitales. El generador produce imágenes intentando engañar al discriminador, que intenta distinguir las obras de arte reales de las imágenes generadas. La divergencia KL ayuda a medir esta divergencia: el generador intenta minimizar la divergencia (haciendo que las imágenes generadas sean lo más realistas posible), mientras que el discriminador intenta maximizar la divergencia (distinguiendo claramente las imágenes falsas).

Ventajas‍

Esto permite un proceso de entrenamiento competitivo, en el que las dos redes se mejoran mutuamente, lo que conduce a resultados cada vez más convincentes en la generación de datos.

Ilustración del principio de las redes generativas adversariales - Fuente : 🔗 Zhengwei Wang, Qi She, T. Ward

4. Medición de anomalías en series temporales

Contexto

En el análisis de series temporales, la detección de anomalías es importante, sobre todo en sectores críticos como la vigilancia de infraestructuras o las finanzas. La divergencia KL es una herramienta eficaz para comparar la distribución de una ventana temporal actual con otra pasada, lo que permite detectar anomalías en el comportamiento de los datos.

Ejemplo

Tomemos el caso de la supervisión del rendimiento de los servidores de una empresa. Métricas como la utilización de la CPU o los tiempos de respuesta se controlan continuamente. Si la distribución de los tiempos de respuesta durante una hora determinada se desvía significativamente de la de las horas anteriores, esto puede indicar una anomalía (por ejemplo, un mal funcionamiento del servidor o un ataque). La divergencia KL se utiliza para comparar estas distribuciones y alertar al equipo técnico si se detecta una desviación anormal.

Ventajas‍

Este enfoque permite la detección precoz de anomalías, lo que reduce el tiempo de inactividad o las costosas averías.

En conclusión

La divergencia KL desempeña un papel fundamental en la inteligencia artificial, sobre todo en el aprendizaje automático y la teoría de la información. Al medir la diferencia entre distribuciones de probabilidad, es una herramienta importante para optimizar modelos, detectar anomalías y evaluar la calidad de las predicciones. La divergencia KL permite comprender mejor las discrepancias entre el comportamiento esperado y el observado, al tiempo que ofrece soluciones para refinar los modelos.

Como función de pérdida o herramienta de evaluación, su aplicación sigue demostrando su importancia en la búsqueda de una IA mejor y más precisa. Por lo tanto, comprender y dominar la divergencia KL es extremadamente importante para desarrollar modelos y algoritmos más robustos, capaces de generalizar mejor los comportamientos complejos.

Preguntas más frecuentes

Se trata de una medida que cuantifica la diferencia entre dos distribuciones de probabilidad, evaluando en qué medida una distribución estimada difiere de una distribución de referencia o real.
Una divergencia KL próxima a cero indica que las distribuciones son similares. Un valor alto indica una diferencia significativa entre ellas. No es simétrica, por lo que el orden de las distribuciones comparadas importa.
Porque se basa en una distribución de referencia específica. Esta asimetría significa que medir la divergencia de A a B no es lo mismo que medir la divergencia de B a A, lo que afecta a la evaluación de la información perdida durante la aproximación.
Se utiliza como función de pérdida para minimizar la diferencia entre la distribución prevista y la real. En los VAE, regulariza el modelo para que genere datos realistas. En las GAN, ayuda a alinear la distribución de los datos generados con la de los datos reales.
Se utiliza para detectar anomalías comparando las distribuciones actuales con las distribuciones normales. También ayuda a controlar la deriva de los datos y a optimizar los modelos probabilísticos para mejorar la precisión de las predicciones.