Esercizio - canale binario non simmetrico, informazione mutua, Huffman ed Elias sulle coppie e canale a cancellazione (compito del 10 febbraio 2021, es. 123)
In questa pagina 6
Testo (compito del 10 febbraio 2021, esercizio 123). Si consideri una sorgente di simboli indipendenti e identicamente distribuiti , con ms. I simboli vengono trasmessi su un canale senza memoria che, in corrispondenza di , presenta in uscita il simbolo . La matrice di transizione del canale sia dove la prima e la seconda riga corrispondono a e , rispettivamente, mentre la prima e la seconda colonna corrispondono a e , rispettivamente, e l'elemento generico della matrice contiene per i corrispondenti valori di ingresso e uscita.
- (2p) Dire se il canale è a) binario e/o b) simmetrico, motivando la risposta.
- (2p) Calcolare l'informazione mutua tra e , assumendo .
- (2p) Trovare la densità di probabilità di che massimizza l'entropia di .
- (3p) I simboli in uscita vengono raggruppati a coppie nel vettore , che viene codificato con un codice di sorgente che ha parole di codice con alfabeto binario. Assumendo , trovare un codice di sorgente ottimo. [variante: Assumendo , trovare il codice di Elias.] Calcolare la lunghezza media delle parole di codice.
- (2p) Trovare la capacità del canale senza memoria con ingresso , uscita , e matrice di transizione
Teoria usata: Tasso d'informazione, capacità di canale e teorema di ShannonUna sorgente che emette un simbolo ogni $T$ secondi ha tasso d'informazione $R=\frac{H_s}T$ [bit/s] ($H_s$ entropia per simbolo); un canale ha tasso $R(g)=\frac{I_s(x;y)}T\le R(x)$. La capacità è il massimo del tasso del canale su tutte le statistiche d'ingresso, $C=\max_{p_x}\frac{I(x;y)}T$ per un canale senza memoria. Teorema di Shannon: se il tasso nominale della sorgente è $R\le C$ esiste un codice di canale con probabilità d'errore piccola a piacere, se $R>C$ no. Capacità: BSC $C=\frac1T[1-h(P_{bit})]$, canale a cancellazione $C=\frac{1-\alpha}T$, AWGN reale $C=\frac1{2T}\log_2\left(1+\frac{E_s}{\sigma^2}\right)$; canali in parallelo sommano le capacità.Tasso d'informazione, capacità di canale e teorema di Shannon → (punti 1, 3, 5), Entropia congiunta e condizionata e informazione mutuaPer due variabili aleatorie discrete $x,y$ l'entropia congiunta è $H(x,y)=E\left[\log_2\frac1{P_{x,y}(x,y)}\right]$ e vale $\max{H(x),H(y)}\le H(x,y)\le H(x)+H(y)$, con l'uguaglianza a destra se e solo se $x$ e $y$ sono indipendenti e $H(x,y)=H(x)$ se $y=f(x)$. L'entropia condizionata $H(x|y)=E_y[H(x|y=y)]$ soddisfa la regola della catena $H(x,y)=H(x|y)+H(y)=H(y|x)+H(x)$. L'informazione mutua $I(x;y)=H(x)+H(y)-H(x,y)=H(x)-H(x|y)=H(y)-H(y|x)$ è simmetrica, $0\le I\le\min{H(x),H(y)}$, nulla per variabili indipendenti.Entropia congiunta e condizionata e informazione mutua → (punto 2), Codici di Shannon, Huffman ed Elias e codifica aritmeticaIl codice di Shannon(-Fano) assegna alla parola $i$ lunghezza $l_i=\lceil-\log_{M_y}p_i\rceil$, soddisfa Kraft-McMillan e ha $H\le L_y<H+1$; è ottimo solo se le probabilità sono potenze di $\frac1{M_y}$. Il codice ottimo (lunghezza media minima) dà parole più lunghe ai simboli meno probabili e ha almeno due parole di lunghezza massima che differiscono solo nell'ultimo simbolo: lo costruisce la procedura di Huffman, che unisce a ogni passo i due nodi meno probabili. Il codice di Elias prende le prime $l_i=\lceil-\log_2p_i\rceil+1$ cifre del punto medio dell'intervallo di ampiezza $p_i$ in $[0,1)$: è a prefisso ma subottimo ($H+1\le L_y<H+2$), e si adatta alla codifica aritmetica adattativa.Codici di Shannon, Huffman ed Elias e codifica aritmetica → (punto 4), Formula delle probabilità totali e formula di BayesSe (A_i) è una partizione di Ω, P(B) = Σ P(B ∣ A_i) P(A_i) (probabilità totali); la formula di Bayes inverte il condizionamento: P(A_k ∣ B) = P(B ∣ A_k) P(A_k) / P(B).Formula delle probabilità totali e formula di Bayes →. Un esercizio simile sul calcolo di entropie di una sorgente quaternaria: Esercizio 26 · entropia ed efficienza di una sorgente quaternaria e trasformazioni dei simboli (tema d'esame gennaio 2021).
(1) Il canale è binario? È simmetrico?
- a) Binario: ingresso e uscita hanno entrambi due valori. Sì.
- b) Simmetrico: un canale binario è simmetrico se per i due ingressi (cioè la probabilità d'errore è la stessa per i due simboli, e la matrice è simmetrica). Qui chiamando "errore" lo scambio dell'uscita attesa: ma . Non è simmetrico.
(2) Informazione mutua con
- Densità di (formula delle probabilità totali):
- : bit.
- : per le uscite hanno probabilità , quindi ; per : , . Mediando con e :
- Informazione mutua: .
(La capacità di questo canale, ottenuta massimizzando numericamente su , è bit per uso per : con si resta sotto.)
(3) Densità di che massimizza
L'entropia di una variabile binaria è massima ( bit) quando le due uscite sono equiprobabili: . Con : La densità è , , con bit. Attenzione: massimizzare non è lo stesso che massimizzare , perché per un canale non simmetrico dipende da : con si ha e bit, minore della capacità bit (che si ottiene per ).
(4) Codice ottimo e codice di Elias per le coppie di uscite
Con si ha , (punto 2). Poiché i simboli sono indipendenti e il canale è senza memoria, anche le uscite sono indipendenti, quindi le coppie hanno probabilità prodotto:
| Coppia | |
|---|---|
(somma ✓).
Huffman. Si uniscono (coppie e ), poi (con ), poi . Il codice è controllo con i nodi interni: ✓. L'entropia della coppia è bit, quindi ✓.
Variante, codice di Elias. Si dispongono le coppie nell'ordine e si divide in segmenti di ampiezza pari alle probabilità; lunghezze (Codici di Shannon, Huffman ed Elias e codifica aritmeticaIl codice di Shannon(-Fano) assegna alla parola $i$ lunghezza $l_i=\lceil-\log_{M_y}p_i\rceil$, soddisfa Kraft-McMillan e ha $H\le L_y<H+1$; è ottimo solo se le probabilità sono potenze di $\frac1{M_y}$. Il codice ottimo (lunghezza media minima) dà parole più lunghe ai simboli meno probabili e ha almeno due parole di lunghezza massima che differiscono solo nell'ultimo simbolo: lo costruisce la procedura di Huffman, che unisce a ogni passo i due nodi meno probabili. Il codice di Elias prende le prime $l_i=\lceil-\log_2p_i\rceil+1$ cifre del punto medio dell'intervallo di ampiezza $p_i$ in $[0,1)$: è a prefisso ma subottimo ($H+1\le L_y<H+2$), e si adatta alla codifica aritmetica adattativa.Codici di Shannon, Huffman ed Elias e codifica aritmetica →):
| Coppia | Intervallo | Parola | |||
|---|---|---|---|---|---|
Conversione di (raddoppiando e prendendo la parte intera): , , : le prime cifre sono . Lunghezza media: Le parole dipendono dall'ordine in cui si dispongono le coppie (la soluzione del corso ne riporta altre, con lo stesso insieme di lunghezze ), ma la lunghezza media è bit in ogni caso: quasi il doppio di quella di Huffman ().
(5) Capacità del canale a cancellazione
La matrice ha, per ciascun ingresso, l'uscita corretta (che coincide con l'ingresso) con probabilità e un terzo simbolo con probabilità , uguale per i due ingressi: è un canale binario con cancellazione con probabilità di cancellazione . La sua capacità, con ingresso uniforme, è (Tasso d'informazione, capacità di canale e teorema di ShannonUna sorgente che emette un simbolo ogni $T$ secondi ha tasso d'informazione $R=\frac{H_s}T$ [bit/s] ($H_s$ entropia per simbolo); un canale ha tasso $R(g)=\frac{I_s(x;y)}T\le R(x)$. La capacità è il massimo del tasso del canale su tutte le statistiche d'ingresso, $C=\max_{p_x}\frac{I(x;y)}T$ per un canale senza memoria. Teorema di Shannon: se il tasso nominale della sorgente è $R\le C$ esiste un codice di canale con probabilità d'errore piccola a piacere, se $R>C$ no. Capacità: BSC $C=\frac1T[1-h(P_{bit})]$, canale a cancellazione $C=\frac{1-\alpha}T$, AWGN reale $C=\frac1{2T}\log_2\left(1+\frac{E_s}{\sigma^2}\right)$; canali in parallelo sommano le capacità.Tasso d'informazione, capacità di canale e teorema di Shannon →) Perché: non dipende dall'ingresso, mentre , e è massima per . (Controllo numerico: massimizzando su si ottiene bit per uso in .)
(Verificato con Python: , , , , Huffman , Elias con parole , capacità del canale a cancellazione bit per uso.)
Errori comuni
- Dire che il canale è simmetrico perché è binario: serve che .
- Calcolare senza pesare con le due entropie delle righe.
- Massimizzare e chiamare il risultato "capacità": per i canali non simmetrici l'ingresso ottimo per è diverso.
- Per le coppie, usare (la probabilità condizionata a ) invece di .
- In Elias, usare senza il .
- Per il canale con tre uscite, non riconoscere la cancellazione: le righe sono "identità più una colonna costante".
Versione ripasso
Testo. iid, ms; matrice . Binario/simmetrico?; con ; che massimizza ; coppie di : Huffman (variante Elias) e ; capacità del canale .
- (1) (Tasso d'informazione, capacità di canale e teorema di ShannonUna sorgente che emette un simbolo ogni $T$ secondi ha tasso d'informazione $R=\frac{H_s}T$ [bit/s] ($H_s$ entropia per simbolo); un canale ha tasso $R(g)=\frac{I_s(x;y)}T\le R(x)$. La capacità è il massimo del tasso del canale su tutte le statistiche d'ingresso, $C=\max_{p_x}\frac{I(x;y)}T$ per un canale senza memoria. Teorema di Shannon: se il tasso nominale della sorgente è $R\le C$ esiste un codice di canale con probabilità d'errore piccola a piacere, se $R>C$ no. Capacità: BSC $C=\frac1T[1-h(P_{bit})]$, canale a cancellazione $C=\frac{1-\alpha}T$, AWGN reale $C=\frac1{2T}\log_2\left(1+\frac{E_s}{\sigma^2}\right)$; canali in parallelo sommano le capacità.Tasso d'informazione, capacità di canale e teorema di Shannon →) Binario sì; simmetrico no ().
- (2) (Entropia congiunta e condizionata e informazione mutuaPer due variabili aleatorie discrete $x,y$ l'entropia congiunta è $H(x,y)=E\left[\log_2\frac1{P_{x,y}(x,y)}\right]$ e vale $\max{H(x),H(y)}\le H(x,y)\le H(x)+H(y)$, con l'uguaglianza a destra se e solo se $x$ e $y$ sono indipendenti e $H(x,y)=H(x)$ se $y=f(x)$. L'entropia condizionata $H(x|y)=E_y[H(x|y=y)]$ soddisfa la regola della catena $H(x,y)=H(x|y)+H(y)=H(y|x)+H(x)$. L'informazione mutua $I(x;y)=H(x)+H(y)-H(x,y)=H(x)-H(x|y)=H(y)-H(y|x)$ è simmetrica, $0\le I\le\min{H(x),H(y)}$, nulla per variabili indipendenti.Entropia congiunta e condizionata e informazione mutua →) ; ; ; bit.
- (3) , ().
- (4) (Codici di Shannon, Huffman ed Elias e codifica aritmeticaIl codice di Shannon(-Fano) assegna alla parola $i$ lunghezza $l_i=\lceil-\log_{M_y}p_i\rceil$, soddisfa Kraft-McMillan e ha $H\le L_y<H+1$; è ottimo solo se le probabilità sono potenze di $\frac1{M_y}$. Il codice ottimo (lunghezza media minima) dà parole più lunghe ai simboli meno probabili e ha almeno due parole di lunghezza massima che differiscono solo nell'ultimo simbolo: lo costruisce la procedura di Huffman, che unisce a ogni passo i due nodi meno probabili. Il codice di Elias prende le prime $l_i=\lceil-\log_2p_i\rceil+1$ cifre del punto medio dell'intervallo di ampiezza $p_i$ in $[0,1)$: è a prefisso ma subottimo ($H+1\le L_y<H+2$), e si adatta alla codifica aritmetica adattativa.Codici di Shannon, Huffman ed Elias e codifica aritmetica →) Coppie ; Huffman , . Elias: , , bit.
- (5) Cancellazione con : bit/s.
- Dettagli (2). ; ; ; . La capacità (massimo numerico) è con .
- Dettagli (3). . Massimizzare non dà la capacità: con è .
- Dettagli (4). Le sono indipendenti (ingressi indipendenti, canale senza memoria): coppie , , . Huffman: , , radice; ; ; . Elias (ordine ): con danno ; .
- Dettagli (5). Righe e : cancellazione con , , , massimo a .
- Errori: simmetria presa per binarietà; per le coppie; massimo di chiamato capacità.