Vous êtes sur la page 1sur 53

BC-0504

Natureza da Informao
Santo Andr Setembro de 2010
Equipe de professores de Natureza da Informao
Mtodos para medir a informao II


Parte 0
Imaginemos que lanamos ao ar uma moeda
um milho de vezes e anotamos o resultado: 1
para cara e zero para coroa, assim:

0101101001010110101100110010100110101

Como a probabilidade de cair cara ou coroa
a mesma, nos temos que a informao de
cada jogada um bit e a informao total
um milho de bits.


E se a moeda estivesse alterada para cair cara uma
vez s em cada 1000 jogadas? Assim..
00000100............000000100000.......0001
Num milho de jogadas, a moeda cairia cara umas
1000 vezes.
Seria possvel utilizar uma codificao mais enxuta
para representar a sequncia anterior? Veremos
nos seguinte slides..

Uma primeira tentativa de codificao
Para identificar um 1 no meio de 1000000 de dgitos
preciso de log
2
(1000000)= 20 bits (ou 20 perguntas bem
formuladas)

Ento para codificar os mil uns que aproximadamente h
na sequncia de 1 milho de dgitos precisaramos:

1000x 20= 20000 bits ou
20000/1000000= 0,02bits por dgito

Seria possvel uma codificao ainda mais enxuta para
codificar a posio dos mil uns?

Uma tentativa mais enxuta de codificao
Ao invs de codificar a posio absoluta de cada 1, poderamos
identificar cada 1 pela distncia de cada 1 para o 1 anterior.



Em mdia a distncia de um 1 para o seguinte 1 de uns mil
dgitos.
Supnhamos que a distncia mxima entre dois uns seja 4000
dgitos, distncia que pode ser codificada com log
2
(4000)=12 bits
Neste caso 12 bits seria o maior nmero de bits para codificar a
distncia entre uns, por exemplo 1230 = 001110011001 em binrio
Para codificar os 1000 uns precisaramos de 1000x12 bits=
12000bits ou 12000/1000000 = 0,012 bits por dgito




00010000....00000001000000.......0000100000......01000000.....0
1230 dgitos 990 dgitos 1121digitos 2346 dgitos
Por tanto passamos de uma codificao de
1000000 de bits para uma com 20000 bits e
depois para uma 12000 bits, conseguindo uma
taxa de compresso de


possvel uma codificao ainda mais enxuta?
% 8 , 98 100
1000000
12000 1000000
=

Parte 1
A frmula de Shannon fornece a quantidade de
informao da codificao mais enxuta possvel
Mesmo que no saibamos como comprimir
mais a sequncia, a frmula de Shannon nos
diz quanta informao existiria na codificao
mais enxuta possvel.
No nosso caso:

( ) ( )
( ) ( )
bits
S
0114 , 0
999 / 1000 log 32 , 3 999 , 0 1000 log 32 , 3 001 , 0
999 / 1000 log 999 , 0 1000 log 001 , 0
1000
999
log
1000
999
1000
1
log
1000
1
10 10
2 2
2 2
=
= + =
= + =
=
|
.
|

\
|
|
.
|

\
|

|
.
|

\
|
|
.
|

\
|
=
Eficincia de um cdigo
Obtm dividindo a entropia de Shanonn S,
pelo nmero de bits por dgito (as vezes se
fala bits por palavra)
No caso da primeira tentativa de codificao


E no caso da segunda tentativa:


Por tanto, a segunda tentativa de codificao
mais eficiente.
5704 , 0
02 , 0
0114 , 0
= = =
L
S
q
95 , 0
012 , 0
0114 , 0
= = =
L
S
q
Parte 2
Cdigos timos Baseados na Entropia
Supe fonte DMS (Discreta sem memria)
Necessrio conhecer as probabilidades de cada
smbolo:
Fornece um cdigo eficiente, ou seja, com


Sendo o comprimento mdio das palavras do
cdigo.
Idia: agrupar smbolos em par de grupos
aproximadamente equiprovveis. Da, a codificao
tima de cada grupo consiste em simplesmente
atribuir um dgito binrio a cada grupo, por exemplo,
0 para o primeiro e 1 para o segundo.
Cdigo de Shannon-Fano
( ) ( ) ( )
k
x P x P x P , ,
2 1
1 ~ =
L
S
q
L
Cdigo de Shannon-Fano
Descrio do algoritmo:
Ordenao: listar os smbolos segundo ordem de
probabilidade decrescente.
Partio: dividir em dois grupos to equiprovveis
quanto possvel.
Atribuir 0 ao primeiro grupo e 1 ao segundo.
Repetir o procedimento at que cada grupo contenha
um nico smbolo.
O cdigo corresponde ao conjunto de dgitos (0 ou 1)
atribudos a cada smbolo.

Veja o exemplo a seguir
Exemplo de Cd. de Shannon-Fano
S = 2,36 bits/smbolo
L = 2,38 bits/smbolo
Eficincia = S/L = 0,99
[Coleo Schaum, Hwei Hsu]
Exerccio:
No jogo do truco tente criar um sistema de
codificao mais enxuto pelo mtodo de
Shannon-Fano
Mais alguns exemplos de
codificao
Parte 3
Tambm supe fonte DMS e, tambm,
necessrio se conhecer as probabilidades dos
smbolos.
Em geral, fornece o cdigo timo:


Idia: atribuir mais bits para os smbolos menos
provveis usando uma rvore binria.
Pelo fato de seguir uma rvore binria, sempre
fornece um cdigo de prefixo.
Cdigo de Huffman
1 = =
L
S
q
Cdigo de Huffman
Descrio do algoritmo:
Ordenao: listar os smbolos segundo ordem de
probabilidade decrescente.
Reduo: agrupar os dois smbolos menos provveis e
reordenar, novamente, segundo probabilidades
decrescentes. (Esse o passo de reduo 1.)
Repetir a reduo at que haja apenas dois grupos.
Codificao: a partir da ltima reduo, atribuir 0 ao
primeiro dgito de todos os smbolos do primeiro grupo e
1 queles do segundo grupo.
Repetir o procedimento anterior at alcanar a primeira
coluna.

Veja o exemplo a seguir
Exemplo de Cd. de Huffman
[Coleo Schaum,
Hwei Hsu]
S= 2,36 bits/smbolo
L = 2,38 bits/smbolo
Eficincia = S/L = 0,99
Parte 4
Cdigo de Lempel-Ziv
Na prtica, normalmente, no conhecemos as
probabilidades dos smbolos da fonte.
Alm disso, fontes prticas no so DMS. Por
exemplo, na codificao de texto, a letra Q quase
nunca seguida de outra letra Q.
O cdigo proposto por Lempel e Ziv adaptativo:
reconhece padres de bits que aparecem com mais
frequncia nos dados.
Cria codebook (livro de cdigo) com os padres mais
frequentes que aparecem nos dados.
Padres de bits correspondentes a sequncias
improvveis (como QQ) no so includos no
codebook.

Cdigo de Lempel-Ziv (Cont.)
Para uma longa sequncia de dados, o cdigo de
Lempel-Ziv converge assintoticamente para o cdigo
timo.
Para codificao de texto, supera a eficincia do cd.
de Huffman porque leva em conta a dependncia
entre os smbolos.
Usado pelo programa de compresso de dados 7zip
para o formato .7z (www.7-zip.org).
(Semelhante ao formato .zip)
Exerccio
1. [1, Ex.10.34, p.278] Uma fonte discreta sem memria (DMS) emite cinco smbolos,
s
1
, s
2
, s
3
, s
4
e s
5
, com probabilidades P(s
1
)=0.4, P(s
2
)=0.19, P(s
3
)=0.16,
P(s
4
)=0.15 e P(s
5
)=0.1. Pede-se:

a) Construa um cdigo de Shannon-Fano.
b) Calcule a entropia da fonte, o comprimento mdio do cdigo do item
anterior e a sua eficincia.
c) Construa um cdigo de Huffman.
d) Calcule o comprimento mdio do cdigo do item anterior e a sua
eficincia.
e) Compare a eficincia alcanada nas duas formas de codificao.


Resp.: a) 00, 01, 10, 110, 111 (ateno: h outras solues possveis); b) 2.15, 2.25, 95.6%; c) 1, 000,
001, 010, 011 (ateno: h outras solues possveis); d) 2.2; e) A eficincia do cd. de Huffman
maior do que a obtida usando Shannon-Fano.

Parte 5
Medida da informao transmitida
Lembremos da Charada de Maxwell
Maxwell apresentou esta charada para Boltzmann
O diabo abria a comporta (sem atrito e por tanto sem exercer
trabalho) para que as molculas mais rpidas e quentes (vermelhas)
ficassem de um lado e as molculas mais frias e lentas (azuis) do
outro.
Assim a entropia diminui sem custo, e o sistema poderia acumular
energia de graa, pudendo ser usado como um perpetuum mobile

I
Entropia inicial: S
1
Entropia final: S
2
E lembremos que a diferencia entre as entropias das duas
situaes era justamente a informao que o diabo arrecadava
para abrir ou fechar a porta
S
1
= S
2
+I I= S
1
-S
2

Parte 6
Fonte fria
Fonte quente
Fonte de
calor
Q
1
Q
2
Trabalho
Fonte fria
Fonte quente
Fonte de
calor
Q
1
Q
2
Trabalho
Fonte fria
Fonte quente
Fonte de
calor
Q
1
Q
2
Trabalho
s
S
S
s
I
Parte 7
Informao transmitida, I

E a diferencia entre o grau de entropia ou
imprevisibilidade inicial (S) e a
imprevisibilidade final S
m

35
I
S
S
m
1. Codificao frequncial
S, I e S
m
so entropias
A entropia S chamada tambm entropia da
fonte de informao. Representa a capacidade
potencial de informao que pode ser
fornecida por um determinado arranjo ou
dispositivo no instante inicial.
I a chamada Informao transmitida ou
entropia do canal.
S
m
a entropia final, depois do mensagem
m ter sido transmitido.
Exemplo:
Trata-se de jogar uma bola
de numa matriz com 16
possveis posies. Qual
seria a entropia inicial e
qual a entropia final, no
caso de querermos lanar
uma outra bola de gude.
Qual seria a quantidade de
informao fornecida pela
bola?
Exemplo:
Entropia inicial:
S=log2(16)=4


Exemplo:
Entropia final:
S=log
2
(15)=3,9

Informao transmitida
pela bola de gude:



0.0931
15
16
log
15 log 16 log
2
2 2
=
|
.
|

\
|
=
= =
= =
m
S S I
Introduo as probabilidades
Probabilidades condicionais.
Teorema da probabilidade total.
Parte 8
Clculo da informao
transmitida, I, via probabilidades
m
1
, m
2
,...m
i
,..
r
1
, r
2
,...r
j
,..
I
Mensagens Respostas
( ) )) ( log( ) ( )) ( ( log ) ( )) ( ( log
1 2 1 2 n n j
j
j
r P r P r P r P r P r P S = =

( )
)) / ( log( ) / ( )) / ( ( log ) / (
)) / ( ( log /
1 2 1
2
i n i n i i
i j
j
i j m
m r P m r P m r P m r P
m r P m r P S
i

= =

S
m
a mdia dos Sm
i
( ) ( )
( )
( ) )) / ( ( log ) / (
)) / ( ( log ) / (
)) / ( ( log ) / (
2
,
2
2
i j i j
j i
i
i
i j i j
j
i
j
i j i j
i
i m
i
i m m
m r P m r P m P
m r P m r P m P
m r P m r P m P S m P S S
i i


=
= =
= = =
Medida da informao, I, calculada com probabilidades
m
S S I =
Medida de informao, I, calculada com
probabilidades
44
( ) ( ) ( ) ( ) ( )
i j i j
j i
i j
j
j
m
m r P m r P m P r P r P
S S I
/ log / ) ( log ) (
2
,
2
+
= =
( ) ( ) ( )
i j
i
i j
m r P m P r P /

=
Tendo em considerao que:
Obtemos:
( ) ( ) ( ) ( ) ( ) ( )
( )
( )
|
|
.
|

\
|
=
= + =


) (
/
log / ) (
/ log / ) ( log / ) (
2
,
2
,
2
j
i j
j i
i j i
i j i j
j i
i j i j
j
i
r P
m r P
m r P m P
m r P m r P m P r P m r P m P I
Parte 9
Exemplo de clculo de
informao transmitida
Maria espera um email de Jlio (que muito importante pra ela). Por isso o
comportamento C de Maria est hoje muito imprevisvel, com dois tipos de
reaes:
C=c
ruim
: preocupada e chateada.
C=c
bom
: alegre e feliz (como sempre)

9 , 0 ) | (
1 , 0 ) | (
= = =
= = =
b b
b r
m M c C P
m M c C P
As amigas de Maria que esto estudando a disciplina Natureza da Informao
decidem estimar a imprevisibilidade de Maria perante os dois possveis
mensagens de Jlio:
M = m
b
= e-mail bom
M = m
r
= e-mail ruim
cujas probabilidades so:






Conhecendo muito bem Maria, as amigas calculam as probabilidades de Maria
estar alegre ou preocupada, dependendo do e-mail ser bom ou ruim.



2 , 0 ) / (
8 , 0 ) / (
= = =
= = =
r b
r r
m M c C P
m M c C P
9 , 0 ) (
1 , 0 ) (
=
=
r
b
m P
m P
9 , 0 ) | (
1 , 0 ) | (
= = =
= = =
b b
b r
m M c C P
m M c C P
Qual a incerteza inicial sobre o estado de Maria depois do email,
agora que sabemos que a mensagem vir? Podemos obter esse
resultado pelo teorema da probabilidade total.



2 , 0 ) / (
8 , 0 ) / (
= = =
= = =
r b
r r
m M c C P
m M c C P
bits
C Entropia
841 , 0 551 , 0 331 , 0
) 27 , 0 log( 27 , 0 ) 73 , 0 log( 73 , 0 ) (
= +
= =
( ) ( ) ( ) ( ) ( )
27 , 0 9 , 0 2 , 0 1 , 0 9 , 0 = + =
= + =
r r b b b b b
m P m c P m P m c P c P
( ) ( ) ( ) ( ) ( )
73 , 0 9 , 0 8 , 0 1 , 0 1 , 0 = + =
= + =
r r r b b r r
m P m c P m P m c P c P
Qual seria a imprevisibilidade prevista de Maria se o e-mail for bom -
(abuso de notao: P(M=m
b
) escrito como P(m
b
))





Qual seria a imprevisibilidade prevista de Maria se o e-mail for ruim




( )
47 , 0 9 , 0 log 9 , 0 1 , 0 log 1 , 0
)) | ( log( ) | ( )) | ( ( log ) | (
)) | ( ( log |
2
2
= =
= =
= =

b b b b b r b r
b j
j
b j
b
m
m c P m c P m c P m c P
m c P m c P S
( )
72 , 0 2 , 0 log 2 , 0 8 , 0 log 8 , 0
)) | ( log( ) | ( )) | ( ( log ) | (
)) | ( ( log |
2
2
2
= =
= =
= =

r b r b r r r r
r j
j
r j
r
m
m c P m c P m c P m c P
m r P m r P S
Na verdade o e-mail ainda no foi encaminhado. Ento a
imprevisibilidade mdia de Maria prevista pelas amigas dela uma
mdia ponderada pelas probabilidades da mensagem:





Portanto a informao prevista transmitida pelo e-mail :



( ) ( ) ( )
69 , 0 72 , 0 9 , 0 47 . 0 1 , 0 = + =
= + = = =
mr r
b
m b m
i
i m m
S m P S m P S m P S S
i i
146 , 0 695 , 0 841 , 0 = = =
m
S S I

ATENO: Isto previsto! No sabemos qual ser a mensagem!
Por isso aparece a mdia ponderada!

Podemos escrever Entropia(C|M) = 0,69
Definio: Entropia Condicional (Conditional Entropy)
Significa A entropia de C dado que sabemos M
Considera todos os possiveis valores de M, no um valor especfico de M
o S
m
que mostramos no slides anteriores.




No caso de sabermos o contedo do email, como:
Maria recebeu um e-mail bom! entropia final seria:





... e a quantidade de Informao realmente transmitida
seria.

Podemos escrever: Entropia(C|M=m
b
)=0,47 bits
A entropia dado um valor especfico para M.

bits
m M c C m M c C P
m M c C m M c C P S
b b b b
b r b r mb
47 , 0 ) 9 , 0 ( log ) 9 , 0 ( ) 1 , 0 ( log 1 , 0
) | ( log ) | (
) | ( log ) | (
2 2
2
2
= =
= = = = =
= = = = =
bits S S I
mb
371 , 0 47 , 0 841 , 0 = = =
Exemplos de clculo da quantidade de
Informao
Se a Maria no est nem a pro Jlio, C no
muda com a mudana da mensagem.



A informao seria:

53
) ( ) | (
j i j
c P m c P =
( )
( )
( )
( )
0
) (
log | ) (
) (
|
log | ) (
2
,
2
,
=
|
|
.
|

\
|
=
|
|
.
|

\
|
=

j
j
j i
i j i
j
i j
j i
i j i
c P
c P
m c P m P
c P
m c P
m c P m P I
1. Codificao frequncial

Vous aimerez peut-être aussi