Esercizio 26entropia ed efficienza di una sorgente quaternaria e trasformazioni dei simboli (tema d'esame gennaio 2021)
In questa pagina 6
Testo (tema d'esame del 22 gennaio 2021, esercizio 2). Una sorgente emette ogni ms un simbolo appartenente all'alfabeto con probabilità , , . Calcolare:
- (2p) L'entropia e l'efficienza della sorgente.
- (3p) L'alfabeto e l'entropia della sorgente che trasmette i simboli ottenuti da tramite la trasformazione .
- (2p) L'entropia della sorgente che trasmette i simboli ottenuti da tramite la trasformazione .
- (1p) È possibile trovare una codifica di sorgente che permetta di trasmettere l'informazione della sorgente su un canale binario con bit-rate di kbit/s? Perché?
Teoria usata: Informazione ed entropiaL'informazione di un evento di probabilità $p$ è $\log_2\frac1p$ bit; l'entropia $H(x)=\sum p\log_2\frac1p$ è l'informazione media e misura l'incertezza della sorgente: $0\le H\le\log_2M$, con il massimo quando i simboli sono equiprobabili. Per più simboli: $H(x,y)\le H(x)+H(y)$ (uguaglianza se indipendenti), $H(x|y)=H(x,y)-H(y)$. Per una sorgente con $F_s$ simboli al secondo il rate di informazione è $F_sH_s$, il rate nominale $F_s\log_2M$ e l'efficienza $\eta=\frac{H_s}{\log_2M}$.Informazione ed entropia →, Codifica di sorgente - codici a prefisso e teorema di ShannonLa codifica di sorgente riduce il numero di bit mappando le parole della sorgente in parole di lunghezza variabile (più corte per le più probabili), senza perdere informazione. Il codice deve essere decodificabile; i codici a prefisso (nessuna parola è prefisso di un'altra) lo sono. Kraft-McMillan: se il codice è decodificabile $\sum M_y^{-L(b)}\le1$. Teorema di Shannon: $L_y\ge\frac{H(x)}{\log_2M_y}$ e esiste un codice a prefisso con $L_y\le\frac{H(x)}{\log_2M_y}+1$; l'efficienza è $\eta=\frac{H(x)}{L_y\log_2M_y}$.Codifica di sorgente - codici a prefisso e teorema di Shannon →, Codici di Shannon-Fano e di HuffmanIn un codice ottimo le parole più probabili non sono più lunghe di quelle meno probabili e le due parole più lunghe differiscono solo per l'ultimo simbolo. Shannon-Fano costruisce l'albero dall'alto dividendo ripetutamente i simboli in due gruppi di probabilità quasi uguali; Huffman lo costruisce dal basso unendo ogni volta i due simboli meno probabili ed è sempre ottimo tra i codici a prefisso. La lunghezza media $L_y$ è la somma delle probabilità dei nodi uniti, l'efficienza è $\eta=\frac{H}{L_y}$.Codici di Shannon-Fano e di Huffman →.
Dati
La probabilità mancante è (le probabilità devono sommare ).
(1) Entropia ed efficienza
L'alfabeto ha simboli, quindi il massimo è bit (simboli equiprobabili) e l'efficienza è
(2) Trasformazione
La trasformazione è biunivoca (a ogni corrisponde un solo e viceversa): . L'alfabeto è e le probabilità restano (rispettivamente per ). L'entropia dipende solo dalle probabilità, non dai valori dei simboli:
(3) Trasformazione
La trasformazione non è biunivoca: danno e danno . L'alfabeto è con probabilità Fondere simboli riduce l'entropia (): si perde informazione (da non si risale ad ).
(4) Codifica per un canale a kbit/s
La sorgente emette un simbolo ogni ms, cioè simboli/s, e il rate di informazione è Per il teorema di Shannon (Codifica di sorgente - codici a prefisso e teorema di ShannonLa codifica di sorgente riduce il numero di bit mappando le parole della sorgente in parole di lunghezza variabile (più corte per le più probabili), senza perdere informazione. Il codice deve essere decodificabile; i codici a prefisso (nessuna parola è prefisso di un'altra) lo sono. Kraft-McMillan: se il codice è decodificabile $\sum M_y^{-L(b)}\le1$. Teorema di Shannon: $L_y\ge\frac{H(x)}{\log_2M_y}$ e esiste un codice a prefisso con $L_y\le\frac{H(x)}{\log_2M_y}+1$; l'efficienza è $\eta=\frac{H(x)}{L_y\log_2M_y}$.Codifica di sorgente - codici a prefisso e teorema di Shannon →) qualunque codice decodificabile ha una lunghezza media bit per simbolo, cioè richiede almeno bit/s: non è possibile trasmettere l'informazione su un canale binario da kbit/s, qualunque codice si usi (neppure quello di Huffman, che qui ha lunghezze per e bit, quindi bit/s). Servirebbe un canale di almeno kbit/s.
(Verificato con Python: bit, bit, Huffman .)
Errori comuni
- Credere che cambi l'entropia: una trasformazione biunivoca la conserva (dipende solo dalle probabilità).
- Dimenticare di sommare le probabilità dei simboli che si fondono in ( e ).
- Rispondere "sì, con una buona codifica": nessun codice scende sotto l'entropia ( bit/simbolo, cioè kbit/s).
- Calcolare l'efficienza con senza controllare il numero di simboli (, quindi bit).
Versione ripasso
Testo. , , un simbolo al ms: entropia ed efficienza; ; ; codifica per un canale a kbit/s (gennaio 2021).
- Dati: .
- (1) (Informazione ed entropiaL'informazione di un evento di probabilità $p$ è $\log_2\frac1p$ bit; l'entropia $H(x)=\sum p\log_2\frac1p$ è l'informazione media e misura l'incertezza della sorgente: $0\le H\le\log_2M$, con il massimo quando i simboli sono equiprobabili. Per più simboli: $H(x,y)\le H(x)+H(y)$ (uguaglianza se indipendenti), $H(x|y)=H(x,y)-H(y)$. Per una sorgente con $F_s$ simboli al secondo il rate di informazione è $F_sH_s$, il rate nominale $F_s\log_2M$ e l'efficienza $\eta=\frac{H_s}{\log_2M}$.Informazione ed entropia →) bit; .
- (2) è biunivoca: , stesse probabilità: bit.
- (3) fonde : , , bit.
- (4) (Codifica di sorgente - codici a prefisso e teorema di ShannonLa codifica di sorgente riduce il numero di bit mappando le parole della sorgente in parole di lunghezza variabile (più corte per le più probabili), senza perdere informazione. Il codice deve essere decodificabile; i codici a prefisso (nessuna parola è prefisso di un'altra) lo sono. Kraft-McMillan: se il codice è decodificabile $\sum M_y^{-L(b)}\le1$. Teorema di Shannon: $L_y\ge\frac{H(x)}{\log_2M_y}$ e esiste un codice a prefisso con $L_y\le\frac{H(x)}{\log_2M_y}+1$; l'efficienza è $\eta=\frac{H(x)}{L_y\log_2M_y}$.Codifica di sorgente - codici a prefisso e teorema di Shannon →) bit/s e : impossibile (Huffman : kbit/s).
- Errori: biunivoca stessa entropia; probabilità sommate in ; nessun codice sotto .