L’entropia nella teoria dell’informazione

L’entropia nella teoria dell’informazione

L’entropia nella teoria dell’informazione è una sorta di misuratore di sorpresa. Immagina di avere una scatola piena di palline colorate: alcune rosse, alcune blu, alcune verdi. Se nella scatola ci sono soprattutto palline rosse, e tu peschi una pallina, non sarai molto sorpreso se è rossa. Ma se peschi una pallina blu o verde, sarà più sorprendente, perché ce ne sono meno.

In teoria dell’informazione, l’entropia misura quanto un messaggio (come una stringa di lettere o numeri) è inaspettato. Se tutte le lettere in un messaggio sono le stesse, non c’è sorpresa, quindi l’entropia è bassa. Ma se ogni lettera è diversa e imprevedibile, allora l’entropia è alta.

La relazione tra entropia e informazione

Immagina ora di avere due libri di storie. Il primo libro ha tutte le pagine uguali con la stessa frase ripetuta. Il secondo libro ha ogni pagina diversa, con storie piene di avventure e personaggi interessanti.

Il primo libro è come un messaggio con bassa entropia: è molto prevedibile e non ci sorprende. Dopo aver letto poche pagine, sappiamo già cosa aspettarci dal resto del libro. Quindi, anche se il libro è grande, non ci dà molte informazioni nuove.

Il secondo libro è come un messaggio con alta entropia: è pieno di sorprese e non sappiamo mai cosa aspettarci nella prossima pagina. Ogni pagina ci dà nuove informazioni e storie, quindi il libro è molto più ricco di informazioni.

In teoria dell’informazione, una maggior entropia significa più informazione perché ogni parte del messaggio può dirci qualcosa di nuovo e imprevedibile, proprio come le diverse pagine del secondo libro pieno di storie avvincenti.

Prima e dopo un evento incerto

Immagina due scenari diversi che riguardano una corsa.

Nel primo scenario, c’è un corridore che è molto più veloce di tutti gli altri. Tutti sanno che vincerà, quindi non c’è molta incertezza. Quando lui vince la gara, è esattamente ciò che ti aspettavi, quindi non hai ricevuto molte nuove informazioni. C’è bassa entropia, poiché c’è poca incertezza prima dell’evento (la gara), c’è poca informazione quando l’evento si realizza (il corridore veloce vince).

Nel secondo scenario, tutti i corridori sono quasi della stessa velocità e abilità. Non puoi dire chi vincerà, quindi c’è molta incertezza e eccitazione. Quando finalmente uno dei corridori vince, è una grande sorpresa e impari qualcosa di nuovo – chi è il corridore più veloce in quella particolare gara. Questo è come avere alta entropia: c’è molta incertezza prima dell’evento, quindi quando l’evento si realizza, porta molta informazione.

In sostanza, più un evento è incerto prima che accada, più informazioni fornisce quando si verifica. Al contrario, se già sai cosa accadrà, non impari nulla di nuovo quando accade.

In sintesi per comprendere bene la relazione tra entropia e informazione è necessario valutare un evento aleatorio prima e dopo la sua realizzazione. La quantità di incertezza sul risultato che precede tale evento si concretizza nella quantità di informazione che offrirà il risultato che si realizzerà dopo.

L’informazione nella trasmissione di messaggi

Il ragionamento che faremo è molto simile ai precedenti.
Immagina di avere due linguaggi per scrivere un messaggio. Il primo linguaggio è molto semplice e prevedibile. Usa poche parole e spesso le stesse frasi. È come se avessi un libro di storie dove ogni storia è quasi uguale. In questo linguaggio, poiché le parole e le frasi sono così prevedibili, non c’è molta informazione in ogni nuovo messaggio che leggi. C’è una bassa entropia nel linguaggio: c’è poca incertezza, quindi anche poca informazione.

Il secondo linguaggio è molto complesso e ricco. Ha molte parole diverse e le persone lo usano per esprimere idee complicate e nuove. È come leggere un libro pieno di storie diverse e sorprendenti. In questo linguaggio, ogni messaggio che leggi può contenere molte nuove informazioni, perché non sai mai quali parole o idee verranno usate. Questo è come avere alta entropia nel linguaggio: c’è molta incertezza su cosa verrà detto dopo, quindi ogni messaggio porta molta informazione.

Quindi, è richiesta più informazione quando usiamo un linguaggio complesso e vario (alta entropia), perché ci sono più possibilità e nuove idee in ogni messaggio. Al contrario, un linguaggio semplice e ripetitivo (bassa entropia) richiede meno informazione, perché è più prevedibile.

Per collegare la definizione data prima di entropia con quella che quantifica l’informazione di un messaggio possiamo pensare alla scrittura di un messaggio come un evento aleatorio in cui prima di ottenerlo sappiamo solo in quale linguaggio verrà scritto ma non sappiamo cosa dice, mentre dopo averlo ricevuto ogni parola o simbolo risulta determinato. La quantità di incertezza (entropia) che precede il messaggio dipende da quante parole o simboli prevede quel linguaggio e i vari tipi di regole di composizione. Più è ricco il vocabolario e più varie sono le combinazioni possibili di parole e maggiore è l’incertezza sul messaggio finale (alta entropia). Quando otteniamo il messaggio, esso conterrà la quantità d’informazione pari alla quantità di incertezza che ne precedeva la composizione.

L’entropia nei modelli di intelligenza artificiale

L’entropia nei modelli di AI spesso rivela se il modello è soddisfacente o meno. Se per esempio ad una sequenza di parole è associata un alto valore dell’entropia significa che siamo sorpresi ma questo è negativo in quanto ci aspettavamo una cosa diversa..

Nei modelli che lavorano con il linguaggio, l’entropia può dirci quanto bene il modello sta funzionando.

Facciamo un esempio con una macchina che impara a completare le frasi. Se la macchina sta funzionando bene, dovrebbe essere in grado di completare le frasi in modo che abbiano senso, basandosi su quello che ha imparato dalle frasi che ha già visto.

Se la macchina completa una frase in un modo che ci sorprende molto, perché non sembra avere senso o non è quello che ci aspettavamo, allora l’entropia di quella risposta è alta. Questo può significare che il modello non ha imparato bene come funziona il linguaggio o non ha abbastanza informazioni su come completare quella specifica frase.

In altre parole, se un modello di AI produce risposte che sono molto sorprendenti o inaspettate (alta entropia), potrebbe non essere un buon modello per quel compito, perché non sta seguendo le regole o i modelli del linguaggio che ci aspettiamo. D’altra parte, se produce risposte che sono prevedibili e hanno senso (bassa entropia), allora probabilmente sta lavorando meglio.

Approfondimento matematico

Per calcolare l’entropia è importante conoscere la distribuzione di probabilità degli eventi. La distribuzione di probabilità ci dice quanto è probabile che ciascun evento accada.

Riprendiamo l’esempio di una scatola con dentro delle biglie di diversi colori – alcune rosse, alcune blu e alcune verdi. La distribuzione di probabilità in questo caso ti dice quante biglie di ogni colore ci sono, quindi quanto è probabile pescare una biglia di un certo colore.

Se nella scatola ci sono molte biglie rosse e poche biglie blu e verdi, la probabilità di pescare una biglia rossa è alta, mentre quella di pescare una biglia blu o verde è bassa.

L’entropia misura quanto è “sorprendente” o “imprevedibile” la scelta di una biglia dalla scatola, basandosi sulla probabilità di pescare ogni colore. Se tutti i colori hanno la stessa probabilità (cioè se ci sono uguali quantità di biglie di ogni colore), allora l’entropia è alta perché ogni scelta è altrettanto sorprendente. Se invece un colore è molto più probabile degli altri (come nel caso delle molte biglie rosse), allora l’entropia è più bassa perché è meno sorprendente pescare la biglia più comune.

Quindi, conoscere la distribuzione di probabilità degli eventi ti permette di calcolare l’entropia, che è un modo di misurare quanto un risultato sia imprevedibile o sorprendente.

Entropia associata al singolo possibile risultato

Data una distribuzione di probabilità p(x) definita sulla variabile aleatoria X, la funzione matematica che si usa per il calcolo dell’entropia del singolo possibile risultato x è la seguente:

f(x) = -log p(x) se p(x) è nell’intervallo (0,1].
f(x) = 0 se p(x) = 0

Il segno meno rende la funzione decrescente in quanto l’incertezza sul risultato decresce con l’aumentare della probabilità dello stesso.

L’uso del logaritmo rende l’entropia additiva quando si ha a che fare con un evento composto da eventi indipendenti. Se, per esempio i possibili risultati di due eventi indipendenti sono rappresentati da due variabili aleatorie X e Y sappiamo che p(XY) = p(X)p(Y), così che per la nota proprietà dei logaritmi vale: – log p(xy) = – (log x + log y).

inoltre il logaritmo base 2 esprime la quantità in bits, unità di misura dell’informazione.

Entropia associata a tutti i possibili risultati (media pesata)

Si definisce la media pesata sulla distribuzione p(x) delle entropie individuali -log p(x) di tutti i possibili valori della variabile aleatoria X:

Nel caso di una distribuzione multivariata valgono le seguenti:

Attenzione ai concetti

Spesso si dice che l’informazione è quantificata come la riduzione dell’incertezza, ma non significa che un sistema incerto non possa essere informativo, anzi nel momento in cui si verifica un evento tra quelli possibili si ottiene tanta informazione quanta era l’incertezza prima.

Quindi, in questo caso ci stiamo riferendo al concetto che l’informazione è ciò che si ottiene quando si risolve l’incertezza o si risponde a una domanda. Ad esempio, scoprire il risultato di un lancio di moneta riduce l’incertezza da “potrebbe essere testa o croce” a “è testa” o “è croce”.

Quando parliamo di alta entropia che indica alta incertezza, ci riferiamo alla varietà e imprevedibilità delle possibili informazioni prima che vengano rivelate. Un sistema con alta entropia (come un lancio di moneta perfettamente bilanciato) ha molti esiti possibili che sono equamente probabili e quindi massimizza l’incertezza prima che l’informazione venga rivelata.

La differenza chiave qui è tra l’informazione effettivamente rivelata da un evento particolare e il potenziale di informazione in un sistema. Un evento in un sistema ad alta entropia (come il lancio di una moneta bilanciata) può non rivelare molta informazione in sé (è solo testa o croce), ma il sistema nel suo complesso ha un alto potenziale di informazione a causa della sua imprevedibilità.

Una distribuzione di probabilità quasi uniforme (dove ogni esito è ugualmente probabile) rappresenta la situazione di massima incertezza possibile prima dell’osservazione di un evento. Questo è perché, prima di osservare l’esito, abbiamo il minor numero di indizi possibili su ciò che accadrà. Una volta che l’evento si verifica, l’informazione rivelata riduce questa incertezza.

Unità di misura dell’informazione: il bit

Ricordiamo in breve la relazione tra numeri binari e decimali e alcuni aspetti del sistema di codifica binario

es : log2 (1/6) = -2.584962500721156
quindi -log2 (1/6) = log2 6 = 2.584962500721156 bits

L’entropia, misurata in bit, rappresenta la quantità di informazione necessaria, in media, per descrivere o codificare gli eventi del sistema. In un sistema con alta incertezza, occorrono più bit per codificare adeguatamente ogni evento perché non si può fare affidamento su schemi prevedibili. Al contrario, con bassa incertezza (o alta prevedibilità), si possono utilizzare meno bit perché gli eventi seguono schemi facilmente descrivibili.

Esempio: bits necessari per rappresentare i risultati del lancio di un dado non truccato

H(x) = -∑(1/6)log2 (1/6) = -log2 (1/6) = 2.584962500721156 bits

si approssima a 3 bits

esempio di codifica dei risultati usando 3 bits

001 -> 1
010 -> 2
011 -> 3
100 -> 4
101 -> 5
110 -> 6

000 e 111 non vengono impiegati per via dell’approssimazione per eccesso a 3bits

Nella teoria dell’informazione di Shannon, l’obiettivo è di trovare il modo più efficiente per codificare l’informazione. L’entropia fornisce un limite teorico inferiore sulla quantità di bit necessaria per codificare gli eventi di una fonte di dati senza perdere informazioni.

Calcolare l’entropia associata al lancio di una moneta è un esercizio classico nella teoria dell’informazione. Assumeremo che la moneta sia perfettamente bilanciata, il che significa che la probabilità di ottenere testa (T) è uguale alla probabilità di ottenere croce (C), entrambe 1/2​.

La formula per l’entropia H(X) è:

quindi 1 bit

Questo valore è inferiore a 1 bit, che era l’entropia per la moneta bilanciata. Questo dimostra che una distribuzione di probabilità meno uniforme (più sbilanciata) porta a meno incertezza e, di conseguenza, a meno informazione per ogni lancio della moneta. In altre parole, poiché uno degli esiti (croce) è più probabile dell’altro, ogni lancio della moneta sbilanciata è in media meno informativo rispetto a un lancio di una moneta bilanciata.

Esempio con una distribuzione bivariata

Supponiamo di avere un sistema con due variabili casuali: il colore di un semaforo (Rosso, Giallo, Verde) e l’azione dei pedoni (Fermarsi, Attendere, Camminare). L’entropia condizionata H(Azione|Colore) misurerebbe quanta incertezza rimane sull’azione dei pedoni sapendo il colore del semaforo. Se i pedoni rispettassero rigorosamente il semaforo, questa entropia sarebbe bassa; se il comportamento dei pedoni fosse meno prevedibile, l’entropia sarebbe più alta.

Scenario 1: Alta prevedibilità

Scenario 2: Minore prevedibilità

H(Azione∣Colore)=−[13×(0.7log⁡0.7+0.3log⁡0.3)+13×(0.5log⁡0.5+0.5log⁡0.5)+13×(0.9log⁡0.9+0.1log⁡0.1)] = 0.7834288309399913

In questo caso, l’entropia condizionata sarà maggiore di zero, riflettendo l’incertezza nelle azioni dei pedoni quando si conosce il colore del semaforo.

L’entropia condizionata H(Azione∣Colore) nel secondo scenario, dove c’è minore prevedibilità nel comportamento dei pedoni rispetto ai colori del semaforo, è di circa 0.783 bit.

Questo valore riflette l’incertezza maggiore nelle azioni dei pedoni: a differenza del primo scenario, dove l’entropia era 0 (nessuna incertezza), qui c’è una certa imprevedibilità nel comportamento dei pedoni anche conoscendo il colore del semaforo.