Qual è la differenza tra i metodi di compressione globale e universale?


12

Comprendo che i metodi di compressione possono essere suddivisi in due set principali:

  1. globale
  2. Locale

Il primo set funziona indipendentemente dai dati che vengono elaborati, ovvero non si basano su alcuna caratteristica dei dati e quindi non è necessario eseguire alcuna preelaborazione su qualsiasi parte del set di dati (prima della compressione stessa). D'altra parte, i metodi locali analizzano i dati, estraendo informazioni che di solito migliorano il tasso di compressione.

Durante la lettura di alcuni di questi metodi, ho notato che il metodo unario non è universale , il che mi ha sorpreso poiché pensavo che "globalità" e "universalità" si riferissero alla stessa cosa. Il metodo unario non si basa sulle caratteristiche dei dati per produrre la sua codifica (cioè è un metodo globale), e quindi dovrebbe essere globale / universale, no?

Le mie domande principali:

  • Qual è la differenza tra metodi universali e globali?
  • Questi sinonimi di classificazione non sono?

2
Puoi collegarti a / riferimento dove leggi che il metodo unario non è universale? Il contesto può aiutare.
Air

3
Io ... non sono sicuro di come questo si riferisca alla scienza dei dati. Sembra fuori tema per questo scambio di stack. Potresti forse ricollegarlo alla scienza dei dati?
Slater Victoroff,

@SlaterTyranus Anche io ... non ne sono sicuro (e questo mi ha fatto pensare ad altre due domande che ho postato). La mia idea era quella di aggiungere questa domanda poiché i metodi di compressione sono ampiamente utilizzati nel recupero delle informazioni (principalmente durante l'indicizzazione). In generale, lo trovo correlato all'efficienza e potrebbe essere inserito nell'area delle abilità di hacking di questo diagramma di Venn . Ad ogni modo, suppongo che sarebbe bello discutere se questo tipo di domanda è in tema.
Rubens,

@Rubens Sembra una discussione ragionevole, nella mia mente il discorso sull'efficienza si adatta molto più a qualcosa come CS teorico che a capacità di hacking esplicite . Nella mia mente, le abilità di hacking sono molto più legate a cose come database, distribuzione e conoscenza degli strumenti.
Slater Victoroff,

1
@SvanBalen Due punti principali: 1. La teoria dell'informazione è importante in alcuni approcci alla scienza dei dati, ma irrilevante in molti altri. 2. I fondamenti sono intrinsecamente fuori tema, porre una domanda dettagliata sulle statistiche o l'algebra lineare sarebbe allo stesso modo fuori tema anche se entrambi sono strettamente necessari per la scienza dei dati utili.
Slater Victoroff

Risposte:


3

Considera il seguente blocco di dati:

1010010110100101

Universale : si tratta di algoritmi di compressione generici che sono indipendenti dai dati. Una versione grezza della codifica della lunghezza di esecuzione rientra in questa categoria. Il vantaggio è che è molto veloce da comprimere e decomprimere. Il rovescio della medaglia è che potrebbe essere estremamente inefficace in base ai dati da comprimere.

1111111111111111 -> 16 1 (caso fortunato)

1010010110100101 -> 1010010110100101 (caso sfortunato)

Locale : questo metodo prenderebbe in considerazione segmenti più piccoli di una lunghezza fissa, diciamo 4, cercando modelli e comprimendoli. Per esempio. Questi dati contengono solo questi due tipi di pattern: 1010 e 0101. Questi pattern possono essere rappresentati come 0 e 1 e i dati complessivi saranno una tabella che rappresenta i mapping e qualcosa come 0101. Questo ha il potenziale per risultare in un formato molto più piccolo dimensione compressa.

1010010110100101 -> 1010 0101 1010 0101 -> 0101 (0 = 1010,1 = 0101)

Globale : questo metodo esamina tutti i dati e trova i modelli ottimali / molto migliori per comprimere i dati. I dati di esempio contengono solo un modello 10100101 e lo rappresentano come 00 insieme alla tabella di mappatura. Ciò ha il potenziale per ottenere la dimensione compressa più piccola possibile, ma è anche la più pesante dal punto di vista computazionale.

1010010110100101 -> 10100101 10100101 -> 00 (0 = 10100101)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.