В чем разница между глобальным и универсальным методами сжатия?

12

Я понимаю, что методы сжатия можно разделить на два основных набора:

  1. Глобальный
  2. местный

Первый набор работает независимо от обрабатываемых данных, т. Е. Они не зависят от какой-либо характеристики данных и, следовательно, не требуют какой-либо предварительной обработки какой-либо части набора данных (до самого сжатия). С другой стороны, локальные методы анализируют данные, извлекая информацию, которая обычно улучшает степень сжатия.

Читая о некоторых из этих методов, я заметил, что унарный метод не универсален , что удивило меня, так как я думал, что «глобальность» и «универсальность» относятся к одному и тому же. Унарный метод не полагается на характеристики данных для получения их кодирования (т. Е. Это глобальный метод), и поэтому он должен быть глобальным / универсальным, не так ли?

Мои основные вопросы:

  • В чем разница между универсальными и глобальными методами?
  • Разве эти классификации не являются синонимами?
Рубенс
источник
2
Можете ли вы ссылаться на / ссылку, где вы читаете, что унарный метод не является универсальным? Контекст может помочь.
Air
3
Я ... не уверен, как это относится к науке о данных. Это кажется не по теме для этого обмена стека. Не могли бы вы связать это обратно с наукой о данных?
Слэйтер Викторофф
@SlaterTyranus Я ... я тоже не уверен (и это заставило меня задуматься о двух других моих вопросах). Моя идея состояла в том, чтобы добавить этот вопрос, поскольку методы сжатия в основном используются при поиске информации (в основном при индексации). В целом, я считаю, что это связано с эффективностью, и это может быть включено в область навыков хакерства на этой диаграмме Венна . Во всяком случае, я думаю, было бы неплохо обсудить, относится ли этот вопрос к теме.
Рубенс
@Rubens Это кажется разумным обсуждением, на мой взгляд, разговор об эффективности гораздо больше вписывается в нечто вроде теоретического CS, чем в явные навыки взлома . На мой взгляд, навыки взлома гораздо больше связаны с такими вещами, как базы данных, развертывание и знание инструментов.
Слейтер Викторофф
1
@SvanBalen Два основных момента: 1. Теория информации важна в некоторых подходах к науке о данных, но не имеет значения во многих других. 2. Основы по своей сути не по теме, поэтому задавать подробный вопрос о статистике или линейной алгебре было бы не по теме, даже если оба они строго необходимы для полезной науки о данных.
Слейтер Викторофф

Ответы:

3

Рассмотрим следующий фрагмент данных:

1010010110100101

Универсальные - это универсальные алгоритмы сжатия, которые не зависят от данных. Необработанная версия кодирования длины серии попадает в эту категорию. Преимущество заключается в том, что он очень быстро сжимается и распаковывается. Недостатком является то, что он может быть крайне неэффективным в зависимости от данных, которые будут сжаты.

1111111111111111 -> 16 1 (счастливый случай)

1010010110100101 -> 1010010110100101 (неудачный случай)

Локальный - этот метод будет рассматривать меньшие сегменты фиксированной длины, скажем, 4, искать шаблоны и сжимать их. Например. Эти данные содержат только эти два типа паттернов - 1010 и 0101. Эти паттерны могут быть представлены как 0 и 1, и общие данные будут представлять собой таблицу, отображающую сопоставления, и что-то вроде 0101. Это может привести к гораздо меньшему сжатый размер.

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

Глобальный - этот метод будет смотреть на все данные и находить оптимальные / гораздо лучшие шаблоны для сжатия данных. Данные примера содержат только один шаблон 10100101 и представляют его как 00 вместе с таблицей сопоставления. Это имеет потенциал для получения наименьшего возможного сжатого размера, но также является в вычислительном отношении самым тяжелым.

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

doodhwala
источник