Playground de codificación entrópica
Explora cómo distintas distribuciones de símbolos afectan la entropía de Shannon, compara los límites de la codificación de Huffman y aprende cómo la entropía rige las funciones de pérdida y la incertidumbre del vocabulario en los modelos de lenguaje de IA (LLMs) modernos.
El límite asintótico de la codificación de Huffman 🖖
La codificación entrópica aprovecha la redundancia estadística para representar mensajes con menos bits. El teorema de codificación de fuente de Shannon establece que la longitud media mínima absoluta de cualquier código sin pérdida es la entropía de Shannon: $H(X) = -\sum p_i \log_2 p_i$. La codificación de Huffman es óptima para un alfabeto dado cuando los símbolos se codifican individualmente, pero está limitada a palabras de código de longitud entera. Esta restricción entera implica que Huffman puede desviarse de la entropía teórica hasta en 0,086 bits/símbolo (y mucho más si algún símbolo tiene $p_i \approx 1$). La codificación aritmética (por ejemplo, ANS) supera este límite asignando toda la secuencia a intervalos fraccionarios.
Conexión con los LLMs y la IA: En los modelos de lenguaje (LLMs) modernos, la entropía es un concepto central tanto en el entrenamiento como en la generación. Los LLMs se entrenan minimizando la pérdida de entropía cruzada entre sus predicciones de vocabulario y el texto real. Durante la generación (inferencia), el LLM produce una distribución de probabilidad sobre su vocabulario para el siguiente token. La entropía de esta distribución mide la incertidumbre de predicción del modelo: una distribución plana (alta entropía) genera texto creativo o aleatorio, mientras que una distribución puntiaguda (baja entropía) genera texto muy predecible. Parámetros de muestreo como la temperatura escalan directamente esta entropía (una temperatura más baja reduce la entropía, una más alta la aumenta), mientras que el muestreo nucleus (Top-p) acota dinámicamente la probabilidad acumulada para recortar las colas de alta entropía.
Por qué los símbolos raros cuestan más bits 🖖
La verdadera lección de esta herramienta: el número ideal de bits para un símbolo es su sorpresa, −log2 p. Un símbolo que aparece la mitad de las veces merece 1 bit; uno con probabilidad de 1 entre 1000, unos 10 bits. La entropía no es más que la sorpresa promedio de todos los símbolos. Por eso las distribuciones sesgadas (como los ajustes laplaciano o exponencial) se comprimen bien, mientras que un alfabeto uniforme no — cuando todo es igual de probable, no hay redundancia que eliminar.
Morse: codificación de entropía antes de Shannon 🖖
El código Morse asignó la señal más corta, un solo punto, a la E, la letra más frecuente del inglés, y secuencias largas a las raras como la Q y la Z. Para elegir las longitudes, se dice que Alfred Vail contó los tipos móviles en la caja de una imprenta para estimar las frecuencias de las letras. Era codificación de longitud variable funcionando en la década de 1840, casi un siglo antes de que Shannon formalizara en 1948 por qué funciona.
Problemas de ejemplo
- Uniforme 8 - Fuente uniforme de 8 símbolos: H=3 bits, ganancia de codificación nula; la entropía iguala al código de longitud fija
- Tipo DCT (Laplace) - Laplaciana tipo DCT: H˜2.1 bits, ahorro del 23%; la mayoría de los coeficientes AC de video se agrupan cerca de cero
- Tipo vector de movimiento - Exponencial tipo vector de movimiento: H˜2.3 bits, ahorro del 43% frente a un código fijo de 4 bits
- Bimodal - Bimodal: dos símbolos dominantes dan H˜2.5 bits, una ganancia de compresión Huffman significativa