Co je bezeztrátová komprese dat?
Bezeztrátová komprese dat je počítačová metoda ukládání souborů a jejich kombinování do archivů, které zabírají v paměti méně fyzického prostoru, než by soubory jinak neztratily žádné informace, které data v procesu obsahují. Ztráta komprese naopak snižuje velikost souboru s aproximací dat a obnova je blízkou faksimile k původnímu obsahu souboru. Algoritmy používané pro bezeztrátovou kompresi dat jsou v podstatě souborem zjednodušených pravidel nebo instrukcí pro kódování informací pomocí méně bitů paměti při zachování schopnosti obnovit data do jejich původního formátu beze změn.
Některé běžné typy souborů, které používají bezeztrátovou kompresi dat, zahrnují archivy souborů ZIP počítače založené na počítačích International Business Machines (IBM) a počítače založené na počítačích Unix. Používají se také formáty obrazových souborů, jako je například formát grafické výměny (GIF), přenosná síťová grafika (PNG) a bitmapové (BMP) soubory. Algoritmy komprese dat se také liší v závislosti na typu komprimovaného souboru, s běžnými variantami textových, zvukových a spustitelných programových souborů.
Dvě hlavní kategorie algoritmů pro bezeztrátovou kompresi dat jsou založeny na statistickém modelu vstupních dat a mapovacím modelu bitových řetězců v datovém souboru. Mezi běžné statistické algoritmy patří Burrows-Wheelerova transformace (BWT), algoritmus Abraham Lempel a Jacob Ziv (LZ77) publikovaný v roce 1977 a metoda predikce pomocí částečného porovnávání (PPM). Mezi často používané mapovací algoritmy patří kódovací algoritmus Huffman a aritmetické kódování.
Některé z bezeztrátových algoritmů komprese dat jsou nástroje s otevřeným zdrojovým kódem a jiné jsou patentované a patentované, ačkoli patenty na některé již nyní vypršely. To může vést k tomu, že metody komprese jsou někdy použity na nesprávný formát souboru. Vzhledem k tomu, že určité metody komprese dat nejsou vzájemně kompatibilní, může ukládání smíšených souborů často degradovat součást souboru. Například obrazový soubor s komprimovaným textem může vykazovat degradaci čitelnosti textu po obnovení. Skenery a software využívající indukci gramatiky mohou extrahovat význam z textu uloženého spolu s obrazovými soubory aplikací tzv. Latentní sémantické analýzy (LSA).
Další formou metody mapovacího algoritmu pro bezeztrátovou kompresi dat je použití univerzálního kódu. Flexibilnější použití než Huffmanovo kódování, nevyžaduje předem znalost maximálních celých hodnot předem. Huffmanovo kódování a aritmetické kódování však produkují lepší kompresní rychlost dat. Probíhá také úsilí o vytvoření metod univerzální komprese dat, které by vytvořily algoritmy, které dobře fungují pro různé zdroje.