Playground de codificação de entropia

Explore como diferentes distribuições de símbolos afetam a entropia de Shannon, compare os limites da codificação de Huffman e aprenda como a entropia rege as funções de perda e a incerteza de vocabulário em modelos de linguagem de IA (LLMs) modernos.

A carregar a simulação interativa...

O limite assintótico da codificação de Huffman 🖖

A codificação de entropia explora a redundância estatística para representar mensagens com menos bits. O teorema da codificação de fonte de Shannon afirma que o comprimento médio mínimo absoluto de qualquer código sem perdas é a entropia de Shannon: $H(X) = -\sum p_i \log_2 p_i$. A codificação de Huffman é ótima para um dado alfabeto quando os símbolos são codificados individualmente, mas está restrita a palavras-código de comprimento inteiro. Essa restrição de comprimento inteiro significa que o Huffman pode se desviar da entropia teórica em até 0,086 bits/símbolo (e muito mais se algum símbolo tiver $p_i \approx 1$). A codificação aritmética (por exemplo, ANS) supera esse limite mapeando toda a sequência em intervalos fracionários.

Conexão com LLMs e IA: Nos modelos de linguagem (LLMs) modernos, a entropia é um conceito central tanto no treinamento quanto na geração. Os LLMs são treinados minimizando a perda de entropia cruzada entre suas previsões de vocabulário e o texto real. Durante a geração (inferência), o LLM produz uma distribuição de probabilidade sobre seu vocabulário para o próximo token. A entropia dessa distribuição mede a incerteza de previsão do modelo: uma distribuição plana (alta entropia) gera texto criativo ou aleatório, enquanto uma distribuição pontuda (baixa entropia) gera texto altamente previsível. Parâmetros de amostragem como a temperatura escalam diretamente essa entropia (temperatura mais baixa reduz a entropia, mais alta a aumenta), enquanto a amostragem nucleus (Top-p) limita dinamicamente a probabilidade cumulativa para cortar as caudas de alta entropia.

Por que símbolos raros custam mais bits 🖖

A verdadeira lição desta ferramenta: o número ideal de bits para um símbolo é a sua surpresa, −log2 p. Um símbolo que aparece metade das vezes merece 1 bit; um com probabilidade de 1 em 1000, cerca de 10 bits. A entropia é apenas a surpresa média entre todos os símbolos. Por isso as distribuições assimétricas (como as predefinições laplaciana ou exponencial) comprimem bem, enquanto um alfabeto uniforme não — quando tudo é igualmente provável, não há redundância a remover.

Morse: codificação de entropia antes de Shannon 🖖

O código Morse atribuiu o sinal mais curto, um único ponto, ao E, a letra mais frequente do inglês, e sequências longas às raras como Q e Z. Para escolher os comprimentos, dizem que Alfred Vail contou os tipos móveis na caixa de uma tipografia para estimar as frequências das letras. Era codificação de comprimento variável funcionando já na década de 1840 — quase um século antes de Shannon formalizar, em 1948, por que ela funciona.

Problemas de exemplo

  • Uniforme 8 - Fonte uniforme de 8 símbolos: H=3 bits, ganho de codificação nulo — a entropia é igual ao código de comprimento fixo
  • Tipo DCT (Laplace) - Laplaciana tipo DCT: H˜2.1 bits, economia de 23% — a maioria dos coeficientes AC de vídeo se concentra perto de zero
  • Tipo vetor de movimento - Exponencial do tipo vetor de movimento: H˜2.3 bits, economia de 43% sobre o código fixo de 4 bits
  • Bimodal - Bimodal: dois símbolos dominantes resultam em H˜2.5 bits, ganho significativo de compressão com Huffman