Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

Векторное квантование

Изучите векторное квантование для сжатия данных и дискретизации в машинном обучении. Узнайте, как оно оптимизирует работу VQ-VAE, векторный поиск и развертывание Ultralytics .

Векторное квантование — это мощный метод сжатия и дискретизации данных, широко применяемый в современном машинном обучении (ML) и цифровой обработке сигналов. В своей основе этот метод заключается в разделении большого набора непрерывных точек или векторов на группы и представлении каждой группы одним «прототипным» вектором, которые в совокупности образуют структуру, известную как словарь кодов. Путем отображения непрерывных многомерных векторов на эти дискретные записи словаря кодов системы могут значительно сократить объем используемой памяти, сохранив при этом основные семантические характеристики данных для эффективного уменьшения размерности.

Роль дискретизации в глубоком обучении

В современном глубоком обучении (DL) эта концепция была широко популяризирована векторно-квантованным вариационным автокодером (VQ-VAE). В отличие от стандартных автокодеров, которые обучаются на непрерывном латентном пространстве для извлечения признаков, VQ-VAE обучаются на дискретном представлении. Это позволяет генеративным моделям обрабатывать изображения, аудио или видео как последовательность дискретных токенов, аналогично тому, как крупные языковые модели (LLM) обрабатывают текстовые входные данные. Вы можете ознакомиться с фундаментальными исследованиями по обучению дискретному представлению, чтобы увидеть, как ранние реализации проложили путь для современных токен-ориентированных систем компьютерного зрения.

Применение в реальном мире

Векторное квантование играет ключевую роль в ряде реальных приложений искусственного интеллекта, где производительность и эффективность использования памяти имеют первостепенное значение:

Различение смежных понятий

Понимание нюансов между векторным квантованием и аналогичными терминами полезно при разработке эффективной архитектуры систем компьютерного зрения (CV):

  • Векторное квантование и квантование моделей: Квантование модели, как правило, подразумевает уменьшение числовой точности весов нейронной сети (например, с 32-разрядной плавающей запятой до 8-разрядного целого числа) с целью ускорения инференса при аппаратном развертывании моделей, таких как Ultralytics . Квантование векторов, однако, группирует векторы данных в фиксированный набор дискретных прототипов.
  • Векторное квантование и векторные базы данных: Векторная база данных — это фактическая инфраструктура, в которой хранятся высокоразмерные данные. Векторное квантование — это базовый алгоритмический прием, часто используемый такими базами данных для минимизации занимаемого ими объема памяти, как подробно описано в объяснении Qdrant по обработке векторов.
  • Векторное квантование и векторный поиск: Векторный поиск — это активный процесс нахождения похожих элементов на основе векторной близости. Квантование выступает в качестве уровня структурной оптимизации, позволяющего сделать этот поиск вычислительно осуществимым в огромных масштабах.

Пример базовой реализации

Чтобы увидеть, как векторное квантование на практике преобразует непрерывные входные данные в дискретные значения, можно использовать PyTorch вычисления евклидовых расстояний и поиска ближайшего прототипа в заранее заданном словаре кодов:

import torch

# Define a continuous input batch and a discrete codebook vocabulary
inputs = torch.randn(4, 128)  # 4 input vectors of dimension 128
codebook = torch.randn(10, 128)  # 10 discrete prototype vectors

# Compute distances and find the nearest codebook index for each input
distances = torch.cdist(inputs, codebook)
quantized_indices = torch.argmin(distances, dim=1)

# Retrieve the discrete quantized vectors corresponding to the inputs
quantized_vectors = codebook[quantized_indices]

Подробнее о встроенных методах вычисления tensor и оптимизации этих операций см. в официальной документацииPyTorch .

Оптимизация рабочих процессов с помощью Ultralytics

Для интеграции оптимизированных вложений в ваш конвейер требуется надежный набор инструментов. Ultralytics предоставляет комплексную среду для подготовки обучающих данных и обучения передовым моделям обработки изображений. Благодаря оптимизации управления данными и упрощению развертывания моделей разработчики могут без труда генерировать высококачественные визуальные признаки, подходящие для векторной квантования, что позволяет ускорить обнаружение объектов и работу крупномасштабных приложений по поиску медиафайлов.

Давайте вместе создадим будущее искусственного интеллекта!

Начните свой путь в будущее машинного обучения