Calculadora de Entropia de Shannon
Entradas
| Texto | hello |
|---|---|
| Base do logaritmo | Bits (base 2) |
Calculadora de Entropia de Shannon
Calcule a entropia de Shannon de qualquer sequência de símbolos. Informe um texto para ver quantos bits, nats ou hartleys de informação cada símbolo carrega em média.
Entradas
Entrada
Resultados
Insira um valor para ver os resultados.
Entropia
Estatísticas
Entropia de Shannon
A entropia de Shannon mede o conteúdo médio de informação de uma sequência de símbolos — em outras palavras, quantos bits (ou nats, ou hartleys) cada símbolo carrega em média. Proposta por Claude Shannon em 1948 no artigo que fundou a teoria da informação, essa medida permanece central à compressão de dados, à criptografia e ao aprendizado de máquina.
A fórmula da entropia
Para uma fonte que emite símbolos de um alfabeto de tamanho , onde o símbolo ocorre com probabilidade , a entropia de Shannon é:
A base do logaritmo determina a unidade: base 2 produz bits, base produz nats e base 10 produz hartleys (também chamados de bans ou dits).
Exemplo com "hello"
A cadeia "hello" contém cinco caracteres: h, e, l, l, o. Distribuição de frequências:
| Caractere | Contagem | Probabilidade |
|---|---|---|
| h | 1 | 1/5 = 0,2 |
| e | 1 | 1/5 = 0,2 |
| l | 2 | 2/5 = 0,4 |
| o | 1 | 1/5 = 0,2 |
Aplicando a fórmula em bits (base 2):
H=−(3×0,2×log20,2+0,4×log20,4)=−(3×0,2×(−2,3219)+0,4×(−1,3219))≈1,9219 bits por sıˊmboloA entropia total da cadeia completa é bits. Esse valor representa o número mínimo teórico de bits necessários para codificar "hello" sem perdas, com um código ótimo para essa distribuição de frequências específica.
Por que a fórmula funciona
Cada termo representa a contribuição do símbolo para a incerteza total. Símbolos raros (pequeno ) carregam muita informação quando aparecem — são surpreendentes. Símbolos frequentes (grande ) carregam pouca informação — são esperados.
Shannon demonstrou que a entropia é a única função que satisfaz três axiomas intuitivos: é contínua nas probabilidades, é maximizada pela distribuição uniforme e não se altera com a adição de um símbolo de probabilidade 1 (certo). Esses axiomas determinam univocamente como a medida correta de informação média.
Entropia máxima e mínima
Para uma fonte com símbolos distintos:
- Entropia máxima: bits por símbolo, atingida quando todos os símbolos são igualmente prováveis.
- Entropia mínima: , atingida quando um único símbolo ocorre com probabilidade 1 (sem incerteza).
O português escrito apresenta entre 1 e 1,5 bits por letra — bem abaixo do máximo teórico de bits — devido às frequências altamente não uniformes das letras e às fortes dependências estatísticas entre caracteres adjacentes.
Entropia e compressão de dados
O teorema de codificação de fonte de Shannon prova que nenhum algoritmo de compressão sem perdas consegue comprimir uma mensagem abaixo de H bits por símbolo, sendo H a entropia da fonte. A entropia é, portanto, um limite inferior teórico para o tamanho do arquivo comprimido.
Essa relação explica por que:
- Arquivos com conteúdo repetitivo (como registros de log com linhas semelhantes) comprimem bem — sua entropia é baixa.
- Dados aleatórios ou já cifrados não podem ser comprimidos — já estão no limite de entropia.
- Algoritmos como codificação de Huffman e codificação aritmética se aproximam do limite de entropia; a codificação de Huffman garante o uso de no máximo um bit extra por símbolo além do limite teórico.
Entropia de Shannon e força de senhas
A entropia de senha, utilizada em análise de segurança, é um conceito relacionado, porém distinto. Ela mede a incerteza do ponto de vista do atacante, supondo que a senha foi escolhida uniformemente ao acaso em um espaço de strings possíveis. A fórmula é , onde é o comprimento da senha e é o tamanho do conjunto de caracteres.
A entropia de Shannon de uma senha específica — conforme calculada aqui — mede a distribuição de frequências dos caracteres naquela cadeia em particular. Uma senha como "aaaa" tem entropia de Shannon zero, mas ainda assim tem quatro caracteres de comprimento. Para avaliar a segurança de senhas, utilize a Calculadora de Entropia de Senha, que modela o espaço de busca do atacante.
Perguntas frequentes (FAQ)
O que significa uma entropia alta?
Uma entropia alta indica que as frequências dos símbolos estão próximas de uma distribuição uniforme — cada caractere aparece com probabilidade semelhante, de modo que cada ocorrência carrega mais informação. Uma sequência completamente aleatória com 256 caracteres ASCII distintos apresenta entropia máxima (8 bits por caractere), pois conhecer os caracteres anteriores não permite prever o próximo.
Uma entropia baixa significa que a distribuição é assimétrica — alguns caracteres dominam, tornando a sequência previsível. A cadeia "aaaa" tem entropia zero, pois cada caractere é certo.
Qual é a entropia máxima para uma cadeia com N símbolos distintos?
A entropia máxima de Shannon para uma fonte com N símbolos distintos é log₂(N) bits por símbolo. Esse valor máximo é atingido apenas quando todos os N símbolos ocorrem com igual probabilidade (distribuição uniforme).
Por exemplo: uma cadeia binária (N = 2) comporta no máximo 1 bit por símbolo; uma cadeia formada pelo alfabeto latino com 26 letras (N = 26) comporta no máximo log₂(26) ≈ 4,7 bits por símbolo. O português escrito apresenta entre 1 e 1,5 bits por letra, pois as frequências de letras e palavras são altamente não uniformes.
Qual é a relação entre entropia e compressão de dados?
O teorema de codificação de fonte de Shannon estabelece que nenhum algoritmo de compressão sem perdas consegue reduzir uma sequência abaixo de H bits por símbolo, onde H é a entropia da fonte. A entropia é, portanto, um limite inferior teórico.
Uma cadeia com entropia H bits por símbolo pode ser comprimida até H bits por símbolo, mas não além disso. Por esse motivo, arquivos com conteúdo repetitivo (como grandes blocos de texto idêntico) têm baixa entropia e são muito comprimíveis, enquanto dados aleatórios ou já cifrados — que já estão no limite de entropia — não podem ser comprimidos de forma significativa.
Qual é a diferença entre bits, nats e hartleys?
As três unidades medem a mesma grandeza fundamental (conteúdo de informação), diferindo apenas na base do logaritmo utilizada:
- Bits (base 2): unidade natural para computação binária. Um bit corresponde à informação de uma moeda lançada de forma equilibrada.
- Nats (base e ≈ 2,718): empregados na matemática da teoria da informação e na mecânica estatística, pois o logaritmo natural simplifica muitas fórmulas.
- Hartleys (base 10): também chamados de bans ou dits. Um hartley equivale à informação de uma escolha entre dez resultados igualmente prováveis.
Conversão: 1 hartley ≈ 3,322 bits ≈ 2,303 nats.