Векторная квантизация ( VQ ) — это классический метод квантования из обработки сигналов , который позволяет моделировать функции плотности вероятности с помощью распределения векторов-прототипов. Разработанный в начале 1980-х годов Робертом М. Греем , он изначально использовался для сжатия данных . Он работает путем деления большого набора точек ( векторов ) на группы, имеющие примерно одинаковое количество ближайших к ним точек. Каждая группа представлена своей точкой центроида , как в k-средних и некоторых других алгоритмах кластеризации . Проще говоря, векторная квантизация выбирает набор точек для представления большего набора точек.
Свойство соответствия плотности векторного квантования является мощным, особенно для определения плотности больших и многомерных данных. Поскольку точки данных представлены индексом их ближайшего центроида, часто встречающиеся данные имеют низкую ошибку, а редкие данные — высокую ошибку. Вот почему VQ подходит для сжатия данных с потерями . Его также можно использовать для коррекции данных с потерями и оценки плотности .
Векторная квантизация основана на парадигме конкурентного обучения , поэтому она тесно связана с моделью самоорганизующейся карты и моделями разреженного кодирования, используемыми в алгоритмах глубокого обучения, таких как автоэнкодер .
Простейший алгоритм обучения векторному квантованию: [1]
Более сложный алгоритм уменьшает смещение в оценке соответствия плотности и обеспечивает использование всех точек за счет включения дополнительного параметра чувствительности [ необходима ссылка ] :
Желательно использовать график охлаждения для получения сходимости: см. Имитация отжига . Другой (более простой) метод — LBG , основанный на K-средних .
Алгоритм можно итеративно обновлять с использованием «живых» данных, а не путем выбора случайных точек из набора данных, но это внесет некоторую погрешность, если данные будут временно коррелировать по многим образцам.
Векторная квантизация используется для сжатия данных с потерями, исправления данных с потерями, распознавания образов, оценки плотности и кластеризации.
Исправление данных с потерями, или прогнозирование, используется для восстановления данных, отсутствующих в некоторых измерениях. Это делается путем поиска ближайшей группы с доступными измерениями данных, а затем прогнозирования результата на основе значений отсутствующих измерений, предполагая, что они будут иметь то же значение, что и центроид группы.
Для оценки плотности площадь/объем, которые находятся ближе к определенному центроиду, чем к любому другому, обратно пропорциональны плотности (из-за свойства соответствия плотности алгоритма).
Векторная квантизация, также называемая «блочной квантизацией» или «квантизацией сопоставления с образцом», часто используется при сжатии данных с потерями . Она работает путем кодирования значений из многомерного векторного пространства в конечный набор значений из дискретного подпространства меньшей размерности. Вектору с меньшей размерностью требуется меньше места для хранения, поэтому данные сжимаются. Благодаря свойству соответствия плотности векторной квантизации сжатые данные имеют ошибки, которые обратно пропорциональны плотности.
Преобразование обычно выполняется путем проекции или с использованием кодовой книги . В некоторых случаях кодовая книга может также использоваться для энтропийного кодирования дискретного значения на том же этапе, генерируя префиксно-кодированное кодированное значение переменной длины в качестве своего выхода.
Набор дискретных уровней амплитуды квантуется совместно, а не каждый образец квантуется отдельно. Рассмотрим k -мерный вектор уровней амплитуды. Он сжимается путем выбора ближайшего совпадающего вектора из набора n -мерных векторов , где n < k .
Все возможные комбинации n -мерного вектора образуют векторное пространство , которому принадлежат все квантованные векторы.
Вместо квантованных значений отправляется только индекс кодового слова в кодовой книге. Это экономит место и обеспечивает большее сжатие.
Двойное векторное квантование (VQF) является частью стандарта MPEG-4 , касающегося квантования векторов с весовым коэффициентом во временной области.
Использование видеокодеков, основанных на векторном квантовании, значительно сократилось в пользу тех, которые основаны на предсказании с компенсацией движения в сочетании с кодированием с преобразованием , например, тех, которые определены в стандартах MPEG , поскольку низкая сложность декодирования векторного квантования стала менее актуальной.
VQ также использовался в восьмидесятых годах для распознавания речи [5] и говорящего . [6] В последнее время он также использовался для эффективного поиска ближайшего соседа [7] и распознавания подписей в режиме онлайн. [8] В приложениях распознавания образов для каждого класса (каждый класс является пользователем в биометрических приложениях) создается одна кодовая книга с использованием акустических векторов этого пользователя. На этапе тестирования искажение квантования тестового сигнала обрабатывается с помощью всего набора кодовых книг, полученных на этапе обучения. Кодовая книга, которая обеспечивает наименьшее искажение векторного квантования, указывает на идентифицированного пользователя.
Главным преимуществом VQ в распознавании образов является его низкая вычислительная нагрузка по сравнению с другими методами, такими как динамическое изменение времени (DTW) и скрытая марковская модель (HMM). Главным недостатком по сравнению с DTW и HMM является то, что он не учитывает временную эволюцию сигналов (речь, подпись и т. д.), поскольку все векторы перемешаны. Для того чтобы преодолеть эту проблему, был предложен подход с использованием многосекционной кодовой книги. [9] Многосекционный подход заключается в моделировании сигнала с несколькими секциями (например, одна кодовая книга для начальной части, другая для центра и последняя кодовая книга для конечной части).
Поскольку VQ ищет центроиды как точки плотности близлежащих образцов, его можно также напрямую использовать как метод кластеризации на основе прототипов: каждый центроид затем связывается с одним прототипом. Стремясь минимизировать ожидаемую квадратичную ошибку квантования [10] и вводя уменьшающийся выигрыш в обучении, удовлетворяющий условиям Роббинса-Монро, множественные итерации по всему набору данных с конкретным, но фиксированным числом прототипов сходятся к решению алгоритма кластеризации k-средних инкрементальным образом.
VQ использовался для квантования слоя представления признаков в дискриминаторе генеративно-состязательных сетей . Метод квантования признаков (FQ) выполняет неявное сопоставление признаков. [11] Он улучшает обучение GAN и обеспечивает улучшенную производительность на различных популярных моделях GAN: BigGAN для генерации изображений, StyleGAN для синтеза лиц и U-GAT-IT для неконтролируемого перевода изображения в изображение.
Подтемы
Похожие темы
Часть этой статьи изначально была основана на материалах из Free On-line Dictionary of Computing и используется с разрешения GFDL.