Introduzione alla compressione. Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a. 2007-20082 Cosa è la compressione? Intuitivamente la compressione.

Slides:



Advertisements
Presentazioni simili
© 2015 Giorgio Porcu - Aggiornamennto 01/12/2015 I STITUTO T ECNICO SECONDO BIENNIO T ECNOLOGIE E P ROGETTAZIONE Rappresentazione dell’ Informazione Sistemi.
Advertisements

La codifica di Huffman adattiva. Perché adattiva? La codifica di Huffman soffre del difetto che il decodificatore deve conoscere le probabilità dei simboli.
Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia
La codifica aritmetica. Come possiamo far meglio di Huffman? - I Come abbiamo visto, il principale svantaggio della codifica di Huffman sono i suoi problemi.
Huffman Canonico: approfondimento. Come abbiamo visto, Huffman canonico ci permette di ottenere una decompressione più veloce e con un uso più efficiente.
I Paradossi di Zenone I paradossi di Zenone costituiscono forse i primi esempi del metodo di dimostrazione noto come dimostrazione per assurdo, usato.
La codifica di Huffman. Codici ottimi - I Un codice è ottimo se ha la lunghezza media di parola L più piccola Si può vedere come un problema di ottimizzazione.
Indici di Posizione Giulio Vidotto Raffaele Cioffi.
Consentono di descrivere la variabilità all’interno della distribuzione di frequenza tramite un unico valore che ne sintetizza le caratteristiche.
Precorso di Statistica per le Lauree Magistrali
Progettazione di una base di dati relazionale
Le Frazioni Prof.ssa A.Comis.
= 2x – 3 x Definizione e caratteristiche
Distribuzioni limite La distribuzione normale
Valutazione dell’incertezza associata alla mappa acustica dinamica di Milano Giovanni Zambon; Roberto Benocci; Maura Smiraglia; H. Eduardo Roman.
Rappresentazione dell’ Informazione Informazione e Comunicazione
Unità di apprendimento 1
La rappresentazione delle informazioni
PEDAGOGIA SPERIMENTALE
Basi di dati multimediali Gabriele Monfardini - a.a
Insiemi e logica Insiemi e operazioni insiemistiche
DISTRIBUZIONI TEORICHE DI PROBABILITA’
Progettazione di una base di dati relazionale
L'ABC della statistica LA MEDIA ARITMETICA
Algoritmi e soluzioni di problemi
Alberi binari Definizione Sottoalberi Padre, figli
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Equazioni differenziali
Equazioni e disequazioni
FUNZIONI MATEMATICHE DANIELA MAIOLINO.
COMUNICHIAMO E CONFRONTIAMOCI CON I MASS MEDIA
Precorso di Statistica per le Lauree Magistrali
Gli enti geometrici fondamentali
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Potenza in corrente alternata monofase
Potenza in corrente alternata monofase
Informatica A.A. 2016/17 Prof. Italo Epicoco
La Statistica Istituto Comprensivo “ M. G. Cutuli”
IL TESTO ESPOSITIVO - INFORMATIVO
© 2007 SEI-Società Editrice Internazionale, Apogeo
Che cosa è un problema matematico
Che cos’e’ l’Informatica
L’analisi monovariata
ANALISI DELLE DISTRIBUZIONI STATISTICHE
Rapporti e proporzioni
K4 è planare? E K3,3 e K5 sono planari? Sì!
Rappresentazione dei Numeri
Indici di variabilità La variabilità è la ragione dell’esistenza della psicologia. Le persone hanno dei comportamenti diversi che non possono essere predetti.
Psicologia dell’apprendimento
L’indagine statistica
Statistica Scienza che studia i fenomeni collettivi.
Programmare.
PROCEDURA per la misura e la relativa stima
Lezione n°6 Prof.ssa Rossella Petreschi
Matrici Definizioni Matrici Rettangolari Quadrate 02/01/2019
SQL per la modifica di basi di dati
Concetti base 1.1.
LESSICO E SINTASSI NEL TESTO POETICO
Definizione di linguaggio di programmazione
Algoritmi e Strutture Dati
© 2007 SEI-Società Editrice Internazionale, Apogeo
ANALISI DI REGRESSIONE
Sistemi Digitali.
Dip. Economia Politica e Statistica
Precorso di Statistica per le Lauree Magistrali
esercitazione su una sorgente markoviana
Integrale Definito Integrale Indefinito Integrale Definito
Dip. Economia Politica e Statistica
Gli Indici di Produttività di Divisia
Modello matematico per la risoluzione dei problemi
Transcript della presentazione:

Introduzione alla compressione

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Cosa è la compressione? Intuitivamente la compressione è un metodo per “comprimere qualcosa in uno spazio minore”. Nel nostro ambito una definizione migliore è “rendere l'informazione più breve”

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Alcune domande fondamentali Cos'è l'informazione? Come è possibile misurare la quantità di informazione? Perché la compressione è utile? Come si può comprimere l'informazione? Quanto riusciamo a comprimere?

4 Cos'è l'informazione? - I Comunemente il termine informazione si riferisce alla conoscenza di fatti, circostanze o pensieri Per esempio possiamo pensare che le informazioni in un giornale siano le notizie sintassi lettere, punteggiatura, spazi bianchi, regole grammaticali... semantica significato delle parole e delle frasi

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Cos'è l'informazione? - II Per noi l'informazione è costituita soltanto dalla sintassi, cioè siamo interessati soltanto ai simboli dell'alfabeto utilizzati per esprimere l'informazione Prima di dare una definizione matematica dell'informazione sono necessari alcuni principi di Teoria dell'Informazione

6 Un concetto fondamentale Un concetto fondamentale in Teoria dell'Informazione è che l'informazione è legata alla casualità Quale informazione ci fornisce una moneta truccata, la cui uscita è sempre testa? E per quanto riguarda un'altra moneta truccata, la cui uscita è testa con il 90% di probabilità? Abbiamo bisogno di misurare quantitativamente la quantità di informazione secondo un qualche criterio matematico

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Incertezza (uncertanty) - I Sia X una variabile casuale e x uno dei suoi possibili valori, che essa assume con probabilità p(x)‏ The units are given by the base of the logarithms Base 2 bits Base 10 nats

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Incertezza (uncertanty) - II Supponiamo che la variabile casuale abbia uscita in {0,1} p(0) = p(1) = 0.5, ogni uscita ci dà 1 bit diinformazione p(0) = 1, p(1) = 0, 0 non ci dà informazione, 1 informazione infinita

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Entropia Ancora più utile è il concetto di entropia di una variabile casuale X a valori in uno spazio X L'entropia è una misura dell'incertezza media della variabile casuale

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Entropia - esempi Consideriamo di nuovo una variabile casuale a valori in {0,1}

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Compressione e perdita Senza perdita (lossless) il messaggio decompresso è una copia esatta dell'originale. Adatto per la compression del testo Con perdita (lossy)‏ Nel messaggio decompresso una parte dell'informazione è andata persa. Adatto per la compressione di immagini, video e audio Ignoriamo per un momento la compressione con perdita

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Definizioni - I Un codice sorgente ottenuto a partire da una variabile casuale X è un mapping dall'insieme X all'insieme D* delle stringhe di lunghezza finita da un alfabeto di D simboli C(x), parola di codice per x l(x), lunghezza di C(x)

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Definizioni - II codice non singolare (... triviale...)‏ ogni elemento di X corrisponde ad una differente stringa di D* codice univocamente decodificabile la sua estensione è univocamente decodificabile

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Definizioni - III codice prefisso (meglio senza prefisso) o istantaneo nessuna parola di codice è un prefisso di un'altra il vantaggio è che la decodifica non ha bisogno di “aspettare il seguito” (look-ahead)‏ 110 b 11 a parole di codice... 11?...

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Esempi codice 4codice 3codice 2codice 1 singolare non singolare, ma non univocamente decodificabile univocamente decodificabile ma non istantaneo istantaneo

16 Disuguaglianza di Kraft - I Teorema (Disuguaglianza di Kraft)‏ Per ogni codice istantaneo su un alfabeto di dimensione D, le lunghezze delle parole di codice l 1,l 2,...,l m devono soddisfare Al contrario, dato un insieme di parole di codice la cui lunghezza soddisfa questa disuguaglianza, esiste un codice istantaneo con queste lunghezze di parola

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Disuguaglianza di Kraft - II Consideriamo un albero D-ario completo a livello k ci sono D k nodi un nodo a livello p < k ha D k-p discendenti che sono nodi a livello k livello 0 livello 1 livello 2 livello 3

18 Disuguaglianza di Kraft - III Dimostrazione Si consideri un albero D-ario (non necessariamente completo) che rappresenta il codice, con ogni percorso dalla radice a rappresentare una sequenza di simboli, e ogni foglia (con il suo percorso unico) una parola di codice. Sia l max la parola di codice più lunga. Ogni parola di codice di lunghezza l i ≤ l max, essendo una foglia, implica che a livello l max ci siano D l max -l i nodi mancanti

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Disuguaglianza di Kraft - IV Il numero totale di nodi al livello l max è D l max Sommando su tutte le parole di codice Dividendo per D l max

20 Disuguaglianza di Kraft - V Dimostrazione Supponiamo (senza perdita di generalità) che le parole di codice siano ordinate per lunghezze, ossia Consideriamo un albero D-ario e cominciamo ad assegnare ogni parola di codice ad un nodo del suo livello, partendo dalla prima Data una generica parola i con lunghezza l i e consideriamo l'insieme K di parole di codice di lunghezza l k ≤ l i, tranne i stessa.

21 Disuguaglianza di Kraft - VI Supponiamo che ad un certo punto non ci siano più nodi disponibili a livello i, ossia ma questo implica che ossia che il che è assurdo. Ossia si riesce a costruire un codice prefisso con le lunghezze di parola date

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Modelli e codificatori Il modello fornisce le probabilità dei simboli (o dei gruppi di simboli, come vedremo più avanti)‏ Il codificatore/decodificatore codifica e decodifica a partire da queste probabilità modell o codificator e decodificator e messaggio messaggio compresso

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Un buon modello è fondamentale Cosa accade se le probabilità vere dei simboli da codificare sono {p i } ma si utilizzano invece le probabilità {q i }? Semplice, il messaggio compresso sarà più lungo, ossia il numero medio di bit per simbolo sarà maggiore E' possibile calcolare la differenza in bit/simbolo a partire dai due insiemi di probabilità {p i } e {q i }, e tale differenza è nota come entropia relativa

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Modelli a contesto finito p(x i = u) = 0.02 in lingua inglese ma p(x i = u|x i-1 = q) = 0.95 Un modello a contesto finito di ordine m utilizza gli m simboli precedenti per costruire la predizione Modello più accurato, ma abbiamo bisogno di stimare molte più probabilità

25 Modelli a stato finito Sebbene in teoria siano più espressivi (per esempio si può modellare se ci siano state un numero apri o dispari di a consecutive), non godono di molta popolarità. Ovviamente il decodificatore utilizza lo stesso modello del codificatore, in modo da andare incontro agli stessi stati 12 a 0.5 a 0.99 b 0.01 b 0.5

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Modelli statici Un modello è statico se impostiamo una distribuzione di probabilità è poi essa è usata per codificare l'intero testo. Scarse performance in caso di parti di tipo differente (testo, dati finanziari...)‏ Una soluzione è avere K modelli differenti ed inviare l'indice del modello utilizzato... ma si veda il libro “Gadsby” by E. V. Wright

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Modelli adattivi (o dinamici)‏ Per risolvere il problema della modellazione statica, i modelli dinamici o adattivi iniziano con una distribuzione di probabilità generale, che viene raffinata mano a mano che sono noti più simboli del messaggio sorgente Il codificatore ed il decodificatore hanno la stessa distribuzione iniziale e le stesse regole per modificarla Sono possibili modelli adattivi di ogni ordine m>0

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Il problema della frequenza zero (zero-frequency problem)‏ La situazione in cui un simbolo è predetto con probabilità zero è da evitare in quanto non può essere codificato Una possibile soluzione: il numero totale di simboli del messaggio originale è aumentato di 1. Questa probabilità 1/numero_totale è divisa fra tutti i simboli mai visti Un'altra soluzione: far partire da uno il contatore di ogni simbolo Sono state proposte diverse altre soluzioni... Quale è la migliore? Purché il testo sia sufficientemente lungo il livello di compressione che si ottiene è simile

Gabriele Monfardini - Corso di Basi di Dati Multimediali - a.a Modelli basati sui simboli e modelli basati su un dizionario L'insieme di tutti i possibili simboli che possono essere emessi da una sorgente è detto alfabeto I modelli basati sui simboli (symbolwise) stimano la probabilità di uscita di ogni simbolo dell'alfabeto I modelli basati su un dizionario (dictionary), al contrario, sostituiscono stringhe del testo con parole di codice che le identificano in una collezione di stringhe, detta dizionario (dictionary, codebook)‏