Calculadora de entropía de Shannon
Datos de entrada
| Texto | hello |
|---|---|
| Base del logaritmo | Bits (base 2) |
Calculadora de entropía de Shannon
Calcula la entropía de Shannon de cualquier cadena de texto o secuencia de símbolos. Introduzca un texto para conocer cuántos bits, nats o hartleys de información contiene cada símbolo en promedio.
Datos de entrada
Entrada
Resultados
Introduce un valor para ver los resultados.
Entropía
Estadísticas
La entropía de Shannon
La entropía de Shannon es una medida del contenido de información medio, o imprevisibilidad, de una secuencia de símbolos. Dado un texto, responde a la pregunta: ¿cuántos bits (o nats, o hartleys) de información contiene cada carácter en promedio? El concepto fue introducido por Claude Shannon en 1948 como fundamento de la teoría de la información, y sigue siendo central en la compresión de datos, la criptografía y el aprendizaje automático.
La fórmula de la entropía
Para una fuente que emite símbolos de un alfabeto de tamaño , donde el símbolo aparece con probabilidad , la entropía de Shannon es:
La base del logaritmo determina la unidad: la base 2 produce bits, la base produce nats y la base 10 produce hartleys (también llamados bans o dits).
Ejemplo con "hello"
La cadena "hello" contiene cinco caracteres: h, e, l, l, o. Frecuencias de caracteres:
| Carácter | Apariciones | Probabilidad |
|---|---|---|
| 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 la fórmula en 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ıˊmboloLa entropía total de la cadena completa es bits. Este es el número mínimo teórico de bits necesarios para codificar "hello" sin pérdidas con un código óptimo para esta distribución de frecuencias.
Por qué funciona la fórmula
Cada término representa la contribución del símbolo a la incertidumbre total. Los símbolos que aparecen raramente (con pequeño) aportan mucha información cuando se presentan, precisamente porque resultan sorprendentes. Los símbolos que aparecen con frecuencia (con grande) aportan poca información, al ser esperados.
Shannon demostró que la entropía es la única función que satisface tres axiomas intuitivos: es continua en las probabilidades, se maximiza con una distribución uniforme y añadir un símbolo con probabilidad 1 (completamente cierto) no la altera. Estos axiomas determinan como la única medida correcta de información media.
Entropía máxima y mínima
Para una fuente con símbolos distintos:
- Entropía máxima: bits por símbolo, alcanzada cuando todos los símbolos son igualmente probables.
- Entropía mínima: , alcanzada cuando un símbolo aparece con probabilidad 1 (ausencia total de incertidumbre).
El español escrito se sitúa en torno a 1–1,5 bits por letra, muy por debajo del máximo teórico de bits, debido a las frecuencias muy desiguales de las letras y a las fuertes dependencias estadísticas entre caracteres adyacentes (la «q», por ejemplo, va seguida casi siempre de «u»).
Entropía y compresión de datos
El teorema de codificación de fuente de Shannon demuestra que ningún algoritmo de compresión sin pérdidas puede comprimir un mensaje a menos bits por símbolo que su entropía. La entropía es, por tanto, una cota inferior teórica e infranqueable del tamaño comprimido.
Esta conexión explica por qué:
- Los ficheros con contenido repetitivo (como registros de sistema con líneas similares) se comprimen bien: su entropía es baja.
- Los datos verdaderamente aleatorios o ya cifrados no pueden comprimirse de forma significativa: se encuentran ya en su límite de entropía.
- Los algoritmos de compresión como la codificación de Huffman y la codificación aritmética se aproximan a la cota de entropía; la codificación de Huffman garantiza usar como máximo un bit extra por símbolo respecto a dicha cota.
Relación con la seguridad de contraseñas
La entropía de contraseñas, tal como se emplea en el análisis de seguridad, es un concepto relacionado pero distinto. Mide la incertidumbre desde la perspectiva del atacante, asumiendo que la contraseña se extrae de forma uniforme y aleatoria de un conjunto de cadenas posibles. La fórmula es , donde es la longitud de la contraseña y es el tamaño del alfabeto de caracteres.
La entropía de Shannon de una contraseña concreta —que es lo que calcula esta herramienta— mide la distribución de frecuencias de los caracteres en esa cadena particular. Una contraseña como "aaaa" tiene entropía de Shannon cero, aunque siga teniendo cuatro caracteres. Para evaluar la seguridad de una contraseña, utilice la Calculadora de Entropía de Contraseñas, que modela el espacio de búsqueda del atacante.
Preguntas frecuentes (FAQ)
¿Qué significa que una cadena tenga entropía alta?
Una entropía alta indica que las frecuencias de los símbolos son próximas a la uniformidad: cada carácter es casi igual de probable, de modo que cada uno aporta una mayor cantidad de información. Una cadena completamente aleatoria compuesta por los 256 caracteres ASCII distintos alcanza la entropía máxima (8 bits por carácter), porque conocer los caracteres previos no proporciona información alguna sobre el siguiente.
Una entropía baja, en cambio, refleja una distribución sesgada: ciertos caracteres predominan y la cadena resulta predecible. "aaaa" tiene entropía cero porque cada carácter es completamente cierto.
¿Cuál es la entropía máxima para un texto con N símbolos distintos?
La entropía de Shannon máxima para una fuente con N símbolos distintos es log₂(N) bits por símbolo. Este máximo solo se alcanza cuando los N símbolos aparecen con igual probabilidad, es decir, con una distribución uniforme.
Por ejemplo: una cadena binaria (N = 2) puede contener como máximo 1 bit por símbolo; un texto formado únicamente por las 27 letras del español (N = 27) puede contener como máximo log₂(27) ≈ 4,75 bits por símbolo. El texto en español real se sitúa en torno a 1–1,5 bits por letra, muy por debajo del máximo teórico, debido a las frecuencias muy desiguales de letras y palabras.
¿Qué relación existe entre la entropía y la compresión de datos?
El teorema de codificación de fuente de Shannon demuestra que ningún algoritmo de compresión sin pérdidas puede comprimir una secuencia a menos bits por símbolo que su entropía. La entropía es, por tanto, una cota inferior teórica e infranqueable.
Una cadena con entropía H bits por símbolo puede comprimirse, en principio, hasta H bits por símbolo, pero no más allá. Esto explica por qué los ficheros con contenido repetitivo (como registros de sistema con líneas similares) se comprimen bien —su entropía es baja—, mientras que los datos verdaderamente aleatorios o cifrados no pueden comprimirse de forma significativa, al encontrarse ya en su límite de entropía.
¿En qué se diferencian bits, nats y hartleys?
Los tres miden la misma magnitud (contenido de información), pero con distintas bases logarítmicas:
- Bits (base 2): la unidad natural para la computación binaria. Un bit equivale a la información de lanzar una moneda al aire con igual probabilidad de cara o cruz.
- Nats (base e ≈ 2,718): utilizados en matemáticas de teoría de la información y mecánica estadística, porque el logaritmo natural simplifica muchas fórmulas.
- Hartleys (base 10): también llamados bans o dits. Un hartley equivale a la información de elegir entre diez resultados igualmente probables.
Conversión: 1 hartley ≈ 3,322 bits ≈ 2,303 nats.