Sie sind auf Seite 1von 18

CLASE NUM 12.

TEORÍA DE LA INFORMACIÓN.

¿Qué es información?

Para los propósitos de este curso, INFORMACIÓN es todo


mensaje recibido que cumpla tres condiciones:
a) Que el receptor lo entienda.
b) Que al receptor le interese.
c) Que el receptor lo ignore antes de recibirlo.

Para ilustrar la primera condición, véase el siguiente mensaje:

CE OME YEI NAHUI MACUILI CHICUACE CHICOME CHICUEY

Para la mayoría de las personas esto no es información, puesto que


no se le entiende. (El mensaje significa: uno dos tres cuatro cinco seis
siete ocho en idioma náhuatl).

Para ilustrar la segunda condición, véase el siguiente mensaje:

UN OPERADOR UNITARIO EN UN ESPACIO PRODUCTO


INTERNO ES UN ISOMORFISMO DEL ESPACIO SOBRE SÍ MISMO.

Este es, evidentemente, un teorema de álgebra superior, que


solamente puede interesar a personas muy preparadas; de modo que no
tiene interés alguno y no es información para personas normales.

Para ilustrar la tercera condición, véase el siguiente mensaje:

SI PONGO UN TROZO DE HIELO EN LA LUMBRE, SE


CONVIERTE EN AGUA.
Este mensaje no contiene información, ya que el concepto
expresado lo sabe cualquier persona.
Esta tercera condición es la base del análisis que vamos a
efectuar. Veamos tres mensajes:

1.- En el presente año, el precio del pasaje en autobús urbano será


mayor de $ 1.00
2.- En el presente año, el precio del pasaje en autobús urbano será
aproximadamente de $ 2.00
3.- En el presente año, el precio del pasaje en autobús urbano será
exactamente de $3.50

La probabilidad de que la noticia del primer mensaje sea cierta es


del 100% y este no contiene información alguna.
La probabilidad de que sea cierto el segundo mensaje es de 50% y
este contiene un poco de información.
La probabilidad de que el tercer mensaje sea cierto es casi cero y
este contiene mucha información.

De los tres mensajes anteriores, se puede deducir en forma


intuitiva un importantísimo principio fundamental: LA CANTIDAD DE
INFORMACIÓN CONTENIDA EN UN MENSAJE ES FUNCIÓN
INVERSA DE LA PROBABILIDAD DE QUE OCURRA EL EVENTO.

En esta teoría, los eventos no son noticias o sucesos, sino los


caracteres alfanuméricos del lenguaje, tales como "A", "5", "?" etc. que
se presentan con cierta probabilidad en la conversación o en la lectura.
Usando literales, I(A) es la cantidad de información contenida en
el evento A. P(A) es la probabilidad de que ocurra el evento A.  es la
literal para indicar "función de". Con lo anterior:
1
I ( A)  
P ( A)

Para determinar qué clase de función debemos considerar, veamos


dos aspectos:
Primero, La información total contenida en varios eventos es la
suma de las informaciones individuales; o sea: I(A,B) = I(A)+I(B).

Segundo: La probabilidad de que ocurran eventos independientes


es el producto de las probabilidades individuales; o sea: P(A+B) =
P(A)P(B).

De acuerdo con las dos condiciones anteriores se puede escribir:


1 1 1
I ( A  B )  I ( A)  I ( B )    
P ( A) P( B) P ( A) P ( B )
La función  es el logaritmo, en cualquier base. Por tanto:
1 1 1
I ( A)  I ( B )  Log n  Log n  log n
P ( A) P( B) P ( A) P ( B )
Las unidades de la información dependen de la base de los
logaritmos utilizados: Si se usa base 10, la unidad es el Hartley. Si se
usa base e, la unidad es el Nat. Si se usa base 2, la unidad es el Bit. Esta
unidad es la más usual y la que se va a manejar en este tema. Esto es
bastante lógico si se piensa que un bit es la mínima cantidad de
información que se puede transmitir.

Para conocer la probabilidad de cada uno de los caracteres de un


alfabeto se puede tomar un texto extenso tal como la Biblia o El
Quijote de la Mancha y contar cuantas letras contiene y cuantas veces
se presenta cada una de las letras; de modo que se puede calcular:
número de veces que aparece la A
P ( A) 
total de letras en el texto
Haciéndolo para cada uno de los caracteres del alfabeto. Si se
quiere, se puede incluir mayúsculas, minúsculas, dígitos, signos
gramaticales y el espacio entre palabras. Otra forma de conocer las
probabilidades es consultar una tabla; por ejemplo la publicada en el
libro "Data Compression" de David Salomon, Editorial Springer. Como
dato curioso, se menciona que el Sr. Samuel F. B. Morse preguntó al
dueño de un taller de imprenta cuantas piezas tenía de cada símbolo;
recuérdese que cada letra viene grabada en un pequeño prisma de metal;
de esta forma, Morse pudo hacer su tabla de frecuencias y desarrollar
su optimizado y famosísimo código de puntos y rayas.
Calculemos la cantidad de información contenida en la palabra
MATEMATICAS, consultando la tabla mencionada y considerando
exclusivamente las letras mayúsculas. Se anota enseguida una lista con
las letras de la palabra y sus probabilidades.

3 letras A P(A)=0.0721
2 letras T P(T)=0.0908
2 letras M P(M)=0.0282
1 letra E P(E)=0.1224
1 letra I P(I)=0.0779
1 letra C P(C)=0.0394
1 letra S P(S)=0.0728

Entonces:

 1   1   1 
I TOTAL  3log 2   2 log 2   2 log2
 0.0721  0.0908  0.0282
1 1 1 1
 log 2  log2  log 2  log 2 
0.1224 0.0779 0.0394 0.0728
 41.4421bits

Este resultado significa que la palabra MATEMATICAS contiene


41.4421 bits de información.
En general, este tipo de cálculos proporciona resultados
fraccionarios; eso no debe espantarnos; después veremos qué hacer con
estos "pedazos" de bit.

Para calcular logaritmos de base 2 se puede usar la siguiente


fórmula:
log10 A
log 2 A 
log10 2

Veremos ahora para qué sirve calcular la información contenida en


un mensaje. Supóngase que se va a transmitir la palabra
MATEMATICAS codificada en ASCII sin bits de paridad ni control.
Esto requiere 11x7=77 bits; de modo que se están transmitiendo 77-
41=36 bits que no llevan información y que por lo tanto, reducen la
eficiencia del proceso de comunicación. Si se quiere optimizar la
comunicación, será necesario desarrollar un código binario que permita
que la palabra MATEMATICAS se transmita con 41.4421 bits.
Todo esto está muy bien, pero cuando se trata de mensajes muy
largos, no es cómodo hacer el cálculo del total de bits; entonces
recurrimos a determinar el promedio de información del mensaje de la
siguiente forma:

Considérese un mensaje cuya cantidad de símbolos tiende al


infinito; entonces:

Ntotal = total de letras del mensaje.


NA = total de letras A del mensaje.
NB = total de letras B del mensaje.
NC = total de letras C del mensaje.
- - - - - - - - - - - -
- - - - - - - - - - - -
NZ = total de letras Z del mensaje.

1 1
I TOTAL  N A log 2  N B log 2 
P ( A) P( B )
1
                N Z log 2
P(Z )

Así mismo:
I TOTAL
promedio de información 
NTOTAL

El promedio de información es una cantidad muy importante y se le


ha dado un nombre especial: ENTROPÍA. Su símbolo es una H muy
particular: . Entonces:
I TOTAL NA 1 NZ 1
  log 2  log 2
N TOTAL N TOTAL P ( A) N TOTAL P( Z )
NA
Es evidente que: N  P ( A)
TOTAL
Y así para todos los demás símbolos; por lo que el promedio de
información de un alfabeto es:
1 1
  P ( A) log 2  P ( B ) log 2 
P ( A) P( B)
1  bits 
           P ( Z ) log 2  símbolo 
P( Z )

Expresado en forma compacta:

 P( ) log  bits 


1
  símbolo 
P ( )
2
 A

Resolvamos un ejemplo simplificado: Supóngase que nuestro


alfabeto solo tiene cuatro letras: a, b, c, d, cuyas probabilidades son:
P(a) = 0.42
P(b) = 0.30
P(c) = 0.15
P(d) = 0.13
Es necesario verificar que la suma de las probabilidades sea 1 y
visto esto, se calcula la entropía:
1 1 1 1
  .42 log 2  .3 log 2  .15 log 2  .13 log 2
.42 .3 .15 .13
bits
  .5256  .5211  .4105  .3826  1.84
símbolo
Interpretación:
a) En este alfabeto, cada una de las cuatro posibles letras tiene en
promedio 1.84 bits de información. Esto trae oculta la implicación de que
no todas las letras se codifican con la misma cantidad de bits.
b) Cada una de las cuatro letras se puede codificar con dos bits:
a=00, b=01, c=10, d=11; pero la entropía dice que se puede reducir ese
número de bits, hasta un mínimo de 1.8401 bits por letra en promedio.
Sin explicar cómo se obtuvo, se puede decir que el código
optimizado es: a=0, b=10, c=110, d=111. Vamos a verificarlo.
Supóngase que se transmite un mensaje de 1000 letras con las
probabilidades antes anotadas; entonces:
420 son "a" y se transmiten con 420 bits.
300 son "b" y se transmiten con 600 bits.
150 son "c" y se transmiten con 450 bits.
130 son "d" y se transmiten con 390 bits.
En total se transmiten------- 1860 bits.
En promedio se transmiten 1860 bits/1000 letras = 1.86 bits/letra.
Este resultado es muy cercano a la entropía de 1.8401 bits/letra.

Como conclusión de este ejemplo, se puede decir que la entropía es


un límite prácticamente inalcanzable; esto es, se puede desarrollar en el
salón de clase un código binario cuyo promedio sea igual a la entropía,
pero en casos reales, el promedio solo se puede aproximar a la entropía
Y NUNCA PUEDE SER MENOR QUE ESTA.

Para explicar lo anterior, vamos a ver que ocurre en el caso


absurdo de que exista un código con menos bits que el anotado
anteriormente:
a=0, b=1, c=10, d=11

Usando este código, vamos a codificar la palabra "acabada"

0 1 0 0 1 0 1 1 0

Al pretender decodificarla, algunas de las varias palabras que se


pueden obtener son: abaababba, acacbc, abaacda, etc. Esto indica que el
código no sirve, ya que no es decodificable. Se puede comprobar que el
código originalmente propuesto tiene una sola decodificación posible.

A continuación se van a explicar procedimientos para obtener


códigos óptimos; o sea, con la menor cantidad posible de bits por
símbolo.

Método de Shannon-Fano para obtener códigos óptimos.

Este procedimiento se puede aplicar a alfabetos con cualquier


cantidad de símbolos; para explicarlo, se hará uso de un alfabeto de
pocas letras, de modo que no haya muchos pasos repetitivos y el método
quede claro.
Sea un alfabeto de 8 letras, cuyas probabilidades son:

P(A) = 12.5%
P(B) = 6.25%
P(D) = 25%
P(E) = 6.25%
P(F) = 12.5%
P(G) = 6.25%
P(H) = 25%
P(I) = 6.25%

Después de verificar que la suma de las probabilidades es de


100%, es necesario acomodar la lista de letras en orden decreciente de
probabilidades, como se ve a continuación:

P(H) = 25%
P(D) = 25%
P(A) = 12.5%
P(F) = 12.5%
P(B) = 6.25%
P(E) = 6.25%
P(G) = 6.25%
P(I) = 6.25%

Nótese que hay varias formas (96) de hacer esta ordenación; se


puede usar cualquiera de ellas y el promedio de bits/letra no cambiará.
El siguiente paso es dividir el conjunto en dos subconjuntos que tengan
mas o menos las mismas probabilidades. En este caso la división es
exacta entre la D y la A. En este momento, le ponemos ceros al primer
subconjunto y unos al segundo subconjunto, como se ve a continuación:
Ahora hay dos subconjuntos que a su vez deben ser divididos en
mitades, como se ve a continuación, asignando ceros a la primera mitad y
unos a la segunda mitad.
Ahora hay cuatro subconjuntos: {H}, {D}, {A,F}, {B,E,G,I}. Los dos
primeros ya no pueden ser subdivididos, pero cada uno de los dos
últimos sí:

Una última subdivisión de los subconjuntos {B,E} y {G,I} se muestra


en el siguiente arreglo:
Ahora, cada símbolo del alfabeto propuesto tiene asignado un
conjunto de bits y el código optimo ha sido obtenido. Para verificar esto
último calcularemos el promedio y la entropía.
Supóngase que se transmite un mensaje de 10,000 letras; habrá
entonces:
2500 letras H que requieren 5000 bits
2500 letras D que requieren 5000 bits
1250 letras A que requieren 3750 bits
1250 letras F que requieren 3750 bits
625 letras B que requieren 2500 bits
625 letras E que requieren 2500 bits
625 letras G que requieren 2500 bits
625 letras I que requieren 2500 bits.
En total se requieren------27500 bits, lo que hace un promedio de
27500/10000=2.75 bits/letra. Calculemos ahora la entropía:

 1   1 
  2 0.25 log 2   2 0.125 log 2 
 0.25   0.125 
 1 
 4 0.0625 log 2   1  0.75  1  2.75bits / letra
 0.0625 
En este ejercicio se ve claramente que el código es óptimo, puesto
que el promedio es igual a la entropía. Esto, como ya se dijo es una
situación no frecuente. Para resolver otro ejemplo, considérese el
siguiente alfabeto que ya ha sido acomodado en orden decreciente de
probabilidades:

S---19%
M---16%
K--- 14%
A---13%
I---12%
P---8%
T---6%
D---5%
B---4%
U---3%

Hagamos la primera división y asignación de bits; sumando


19+16+14=49 y así mismo, 13+12+8+6+5+4+3=51. La división no es exacta
pero es la más equitativa.

Enseguida, la segunda columna de bits


Otra subdivisión nos lleva al siguiente arreglo:

Ya solo faltan dos pasos; el penúltimo queda así:


El código se obtiene con la última división:

El alumno puede ejercitarse en el cálculo del promedio de


bits/símbolo y la entropía a fin de verificar que el promedio es un poco
mayor que la entropía.

Método de Huffmann para obtener códigos óptimos.

Formemos el siguiente arreglo: se trata de las letras del ejercicio


anterior y la primera columna de números contiene sus probabilidades.

Para formar la segunda columna, transferimos los números de la


primera, excepto los dos últimos, que al sumarlos dan 7 y ponemos el 7
entre el 8 y el 6.
Para formar la tercera columna, transferimos los números de la
segunda, excepto los dos últimos, que al sumarlos dan 11 que lo
colocamos entre el 12 y el 8.

Con la misma regla se forman las otras columnas: la suma de los


dos últimos números de una columna se coloca en la siguiente columna en
el lugar mas bajo posible, conservando la variación decreciente.

Para llenar las columnas vacías, veamos el siguiente arreglo:

Inicialmente se le regala un 0 al 58 y un 1 al 42. El 1 del 42 se


transfiere al 42 de la columna de la izquierda y el 0 del 58 se transfiere
al 31 y al 27 de la columna de la izquierda. Finalmente, se le regala un 0
al 31 y un 1 al 27.
Para seguir adelante, veamos el siguiente arreglo:
El 1 del 42 se transfiere al 23 y al 19, el 00 del 31 se transfiere al
31, el 01 del 27 se transfiere al 27. Finalmente, se le regala un 0 al 23 y
un 1 al 19.

Con estas reglas se llenan las demás columnas y la de la extrema


izquierda contiene el código binario optimizado, como se ve enseguida.

Como se puede ver, aunque las combinaciones de bits son


diferentes, cada letra del código de Huffmann tiene la misma cantidad
de bits que la correspondiente del código de Shannon-Fano.

TAREA NÚMERO 12.

Problema 1.- Calcular la cantidad de información que contiene la


palabra INTEMPESTIVAMENTE usando la tabla de probabilidades de
David Salomon, considerando exclusivamente las letras mayúsculas.

Problema 2.- Se tiene un alfabeto cuyas probabilidades son:


P(M)=0.02 P(N)=0.05 P(O)=0.09 P(R)=0.1 P(S)=0.17
P(T)=0.07 P(U)=0.11 P(V)=0.15 P(W)=0.19 P(X)=0.05
Para este alfabeto, desarrollar códigos óptimos con los métodos de
Huffmann y Shannon-Fano. Calcular el promedio de bits/símbolo y la
entropía para verificar que ambos códigos son óptimos.

Problema 3.- Si las 27 letras del alfabeto fuesen equiprobables,


¿Cuál sería el promedio de información de cada una?

Problema 4.-Se tiene un alfabeto de 4 letras con estas


probabilidades: P(H)=0.9 P(I)=0.03 P(J)=0.04 P(K)=0.03. desarrollar
por cualquier método el código óptimo y calcular el promedio y la
entropía. Explicar por qué el promedio es tan diferente de la entropía.

Problema 5.- Para un alfabeto de 4 letras equiprobables,


desarrollar el código óptimo, su promedio y su entropía y comparar los
resultados con los del problema 4. De la comparación, deducir
conclusiones.

Problema 6.-Supóngase un alfabeto con n símbolos en el que la


probabilidad de transmitir uno de estos es la unidad. Calcular la
entropía y del resultado, deducir conclusiones.

Problema 7.-Un profesor califica con las letras A, B, C, D, E. El


40% de los estudiantes obtiene C y el 5% obtiene E. ¿Cuánta
información obtiene un estudiante que saca C? ¿Y otro que saca E? ¿Y
uno más que sabe que no va a obtener E?

Problema 8.-Una ciudad de 65,000 casas tiene medidores de


electricidad de 6 dígitos; de agua de 5 dígitos y de gas de 4 dígitos
a) Calcule la cantidad de información para hacer cada una de las tres
mediciones.
b) Si las lecturas de electricidad, gas y agua se van a transmitir
automáticamente a una computadora, calcular la cantidad de bits
requeridos para cada casa.
Problema 9.-Un teclado tiene solo los 10 dígitos y una V.T. de 10
bits/seg. Calcular cuantos dígitos por segundo se pueden transmitir:
a) Suponiendo que exista el código binario óptimo.
b) Considerando un código binario uniforme de mínima longitud.
c) Usando el código Baudot sin bits de arranque y Parada.
d) Usando el código ASCII sin bits de paridad.
De los resultados anteriores, deducir conclusiones.

Tabla de probabilidades del alfabeto para textos en ingles.


A .0721
B .0240
C .0394
D .0372
E .1224
F .0272
G .0178
H .0449
I .0779
J .0013
K .0054
L .0426
M .0282
N .0638
O .0681
P .0290
Q .0023
R .0638
S .0728
T .0908
U .0235
V .0094
W .0130
X .0077
Y .0126
Z .0026

Das könnte Ihnen auch gefallen