Jaka jest różnica między globalnymi a uniwersalnymi metodami kompresji?

12

Rozumiem, że metody kompresji można podzielić na dwa główne zestawy:

  1. światowy
  2. lokalny

Pierwszy zestaw działa niezależnie od przetwarzanych danych, tzn. Nie opierają się na żadnej charakterystyce danych, a zatem nie muszą wykonywać żadnego przetwarzania wstępnego w żadnej części zestawu danych (przed samą kompresją). Z drugiej strony lokalne metody analizują dane, wyodrębniając informacje, które zwykle poprawiają stopień kompresji.

Czytając o niektórych z tych metod, zauważyłem, że metoda jednoargumentowa nie jest uniwersalna , co mnie zaskoczyło, ponieważ myślałem, że „globalność” i „uniwersalność” odnoszą się do tego samego. Jednolita metoda nie opiera się na charakterystyce danych w celu uzyskania ich kodowania (tj. Jest to metoda globalna), a zatem powinna być globalna / uniwersalna, prawda?

Moje podstawowe pytania:

  • Jaka jest różnica między metodami uniwersalnymi a globalnymi?
  • Czy te synonimy klasyfikacji nie są synonimami?
Rubens
źródło
2
Czy możesz link do / odniesienia, w którym czytasz, że metoda jednoargumentowa nie jest uniwersalna? Kontekst może pomóc.
Air
3
Nie jestem pewien, jak to się ma do nauki o danych. Wydaje się nie na temat tej wymiany stosów. Czy możesz powiązać to z nauką danych?
Slater Victoroff
@SlaterTyranus Ja ... też nie jestem pewien (i to sprawiło, że pomyślałem o dwóch innych zadanych przeze mnie pytaniach). Moim pomysłem było dodanie tego pytania, ponieważ metody kompresji są w dużej mierze wykorzystywane w wyszukiwaniu informacji (głównie podczas indeksowania). Ogólnie rzecz biorąc, uważam to za związane z wydajnością i może być umieszczone w obszarze umiejętności hakowania na tym schemacie Venna . W każdym razie miło by mi było porozmawiać, czy tego rodzaju pytanie dotyczy tematu.
Rubens
@Rubens To wydaje się być rozsądną dyskusją, moim zdaniem rozmowa o wydajności pasuje bardziej do czegoś w rodzaju teoretycznej CS niż umiejętności hakowania . Moim zdaniem umiejętności hakerskie są znacznie bardziej związane z takimi rzeczami, jak bazy danych, wdrażanie i znajomość narzędzi.
Slater Victoroff
1
@SvanBalen Dwa główne punkty: 1. Teoria informacji jest ważna w niektórych podejściach do nauki danych, ale nieistotna w wielu innych. 2. Podstawy są z natury nie na temat, zadawanie szczegółowych pytań na temat statystyki lub algebry liniowej również byłoby nie na temat, nawet jeśli oba są ściśle wymagane do użytecznej analizy danych.
Slater Victoroff,

Odpowiedzi:

3

Rozważ następujący fragment danych:

1010010110100101

Uniwersalny - są to ogólne algorytmy kompresji, które są niezależne od danych. Surowa wersja kodowania długości przebiegu mieściłaby się w tej kategorii. Zaletą jest to, że bardzo szybko kompresuje i dekompresuje. Minusem jest to, że może być bardzo nieskuteczne w zależności od danych do skompresowania.

1111111111111111 -> 16 1 (szczęśliwy przypadek)

1010010110100101 -> 1010010110100101 (nieszczęśliwy przypadek)

Lokalny - ta metoda uwzględnia mniejsze segmenty o stałej długości, powiedzmy 4, szuka wzorców i je kompresuje. Na przykład. Te dane zawierają tylko te dwa typy wzorców - 1010 i 0101. Wzorce te mogą być reprezentowane jako 0 i 1 s, a ogólne dane będą tabelą reprezentującą odwzorowania i czymś w rodzaju 0101. Może to skutkować znacznie mniejszą liczbą skompresowany rozmiar.

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

Globalny - ta metoda sprawdzałaby całe dane i znajdowałaby optymalne / znacznie lepsze wzorce do kompresji danych. Przykładowe dane zawierają tylko jeden wzorzec 10100101 i reprezentują go jako 00 wraz z tabelą odwzorowań. Ma to potencjał uzyskania najmniejszego możliwego rozmiaru skompresowanego, ale jest również najcięższe obliczeniowo.

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

doodhwala
źródło