En teoría de la información , el teorema de codificación de fuente de Shannon (o teorema de codificación sin ruido ) establece los límites estadísticos para la posible compresión de datos cuya fuente es una variable aleatoria independiente distribuida de manera idéntica , y el significado operacional de la entropía de Shannon .
El teorema de codificación de la fuente , que debe su nombre a Claude Shannon , muestra que, en el límite, a medida que la longitud de un flujo de datos de variables aleatorias independientes e idénticamente distribuidas (iid) tiende a infinito, es imposible comprimir dichos datos de manera que la tasa de codificación (número promedio de bits por símbolo) sea menor que la entropía de Shannon de la fuente, sin que sea prácticamente seguro que se perderá información. Sin embargo, es posible obtener una tasa de codificación arbitrariamente cercana a la entropía de Shannon, con una probabilidad de pérdida insignificante.
El teorema de codificación de fuentes para códigos de símbolos establece un límite superior y un límite inferior para la longitud mínima posible esperada de las palabras de código en función de la entropía de la palabra de entrada (que se considera una variable aleatoria ) y del tamaño del alfabeto de destino.
Nótese que, para los datos que presentan más dependencias (cuya fuente no es una variable aleatoria iid), la complejidad de Kolmogorov , que cuantifica la longitud mínima de descripción de un objeto, es más adecuada para describir los límites de la compresión de datos. La entropía de Shannon tiene en cuenta solo las regularidades de frecuencia, mientras que la complejidad de Kolmogorov tiene en cuenta todas las regularidades algorítmicas, por lo que en general esta última es menor. Por otro lado, si un objeto es generado por un proceso aleatorio de tal manera que solo tiene regularidades de frecuencia, la entropía está cerca de la complejidad con alta probabilidad (Shen et al. 2017). [1]
La codificación de fuente es una asignación de (una secuencia de) símbolos de una fuente de información a una secuencia de símbolos alfabéticos (normalmente bits) de modo que los símbolos de fuente se puedan recuperar exactamente a partir de los bits binarios (codificación de fuente sin pérdida) o recuperarse con cierta distorsión (codificación de fuente con pérdida). Este es un enfoque de la compresión de datos .
En teoría de la información, el teorema de codificación de fuentes (Shannon 1948) [2] establece informalmente que (MacKay 2003, pág. 81, [3] Cover 2006, Capítulo 5 [4] ):
Las variables aleatorias N i.id cada una con entropía H ( X ) se pueden comprimir en más de N H ( X ) bits con un riesgo insignificante de pérdida de información, ya que N → ∞ ; pero a la inversa, si se comprimen en menos de N H ( X ) bits es prácticamente seguro que se perderá información.
La secuencia codificada representa el mensaje comprimido de forma biunívoca, bajo el supuesto de que el decodificador conoce la fuente. Desde un punto de vista práctico, esta hipótesis no siempre es cierta. En consecuencia, cuando se aplica la codificación por entropía el mensaje transmitido es . Habitualmente, la información que caracteriza a la fuente se inserta al principio del mensaje transmitido.
Sean Σ 1 , Σ 2 dos alfabetos finitos y sea Σ∗
1y Σ∗
2denotan el conjunto de todas las palabras finitas de esos alfabetos (respectivamente).
Supongamos que X es una variable aleatoria que toma valores en Σ 1 y sea f un código decodificable de forma única de Σ ∗
1a Σ∗
2donde |Σ 2 | = a . Sea S la variable aleatoria dada por la longitud de la palabra de código f ( X ) .
Si f es óptimo en el sentido de que tiene la longitud de palabra mínima esperada para X , entonces (Shannon 1948):
Donde denota el operador de valor esperado .
Dado que X es una fuente iid , su serie temporal X 1 , ..., X n es iid con entropía H ( X ) en el caso de valor discreto y entropía diferencial en el caso de valor continuo. El teorema de codificación de fuente establece que para cualquier ε > 0 , es decir, para cualquier tasa H ( X ) + ε mayor que la entropía de la fuente, hay un n suficientemente grande y un codificador que toma n repeticiones iid de la fuente, X 1: n , y las asigna a n ( H ( X ) + ε ) bits binarios tales que los símbolos de fuente X 1: n son recuperables de los bits binarios con probabilidad de al menos 1 − ε .
Prueba de viabilidad. Fijemos algún ε > 0 y dejemos
El conjunto típico , Aε
n, se define de la siguiente manera:
La propiedad de equipartición asintótica (AEP) muestra que para un valor n suficientemente grande , la probabilidad de que una secuencia generada por la fuente se encuentre en el conjunto típico, Aε
n, tal como se define, se acerca a uno. En particular, para n suficientemente grande , se puede hacer arbitrariamente cercano a 1 y, específicamente, mayor que (ver AEP para una prueba).
La definición de conjuntos típicos implica que aquellas secuencias que se encuentran en el conjunto típico satisfacen:
Dado que los bits son suficientes para apuntar a cualquier cadena en este conjunto.
El algoritmo de codificación: el codificador comprueba si la secuencia de entrada se encuentra dentro del conjunto típico; si es así, genera el índice de la secuencia de entrada dentro del conjunto típico; si no, el codificador genera un número arbitrario de n ( H ( X ) + ε ) dígitos. Mientras la secuencia de entrada se encuentre dentro del conjunto típico (con una probabilidad de al menos 1 − ε ), el codificador no comete ningún error. Por lo tanto, la probabilidad de error del codificador está limitada por encima de ε .
Prueba del inverso : el inverso se demuestra mostrando que cualquier conjunto de tamaño menor que Aε
n(en el sentido de exponente) cubriría un conjunto de probabilidades acotadas desde 1 .
Para 1 ≤ i ≤ n , sea s i la longitud de palabra de cada posible x i . Defina , donde C se elige de modo que q 1 + ... + q n = 1 . Entonces
donde la segunda línea se sigue de la desigualdad de Gibbs y la quinta línea se sigue de la desigualdad de Kraft :
por lo tanto log C ≤ 0 .
Para la segunda desigualdad podemos establecer
de modo que
y entonces
y
y por lo tanto, por la desigualdad de Kraft existe un código sin prefijo que tiene esas longitudes de palabra. Por lo tanto, la S mínima satisface
Definir el conjunto típico Aε
ncomo:
Entonces, para un δ dado > 0 , para un valor n suficientemente grande, Pr( Aε
n) > 1 − δ . Ahora simplemente codificamos las secuencias en el conjunto típico, y los métodos habituales en codificación de fuentes muestran que la cardinalidad de este conjunto es menor que . Por lo tanto, en promedio, H n ( X ) + ε bits son suficientes para codificar con probabilidad mayor que 1 − δ , donde ε y δ se pueden hacer arbitrariamente pequeños, haciendo n más grande.
{{cite book}}
: CS1 maint: multiple names: authors list (link)