Embeddings
Узнай, как эмбеддинги связывают данные людей и логику машин. Научись создавать векторные представления для задач ИИ с помощью Ultralytics YOLO26 и исследуй Ultralytics Platform.
Эмбеддинги — это плотные, низкоразмерные, непрерывные векторные представления дискретных переменных, выполняющие роль фундаментального переводчика между человеческими данными и машинной логикой. В сфере Искусственного интеллекта (ИИ) компьютеры не могут интуитивно понимать хаотичные неструктурированные данные, такие как текст, изображения или аудио. Эмбеддинги решают эту проблему, преобразуя эти входные данные в списки действительных чисел, известные как векторы, которые существуют в многомерном математическом пространстве. В отличие от традиционных кодировок, которые могут просто присваивать объекту случайный идентификатор, эмбеддинги изучаются в процессе обучения, гарантируя, что семантически похожие элементы — такие как слова «король» и «королева» или изображения двух разных кошек — располагаются близко друг к другу в векторном пространстве.
Как работают эмбеддинги#
Создание эмбеддинга включает в себя подачу исходных данных в нейронную сеть, предназначенную для извлечения признаков. Во время обучения модель учится сжимать основные характеристики входных данных в компактную числовую форму. Например, модель Компьютерного зрения (CV), анализирующая фотографию, видит не просто пиксели; она сопоставляет формы, текстуры и цвета с определенной координатой на многомерном графике. При измерении сходства системы вычисляют расстояние между этими координатами, используя такие метрики, как косинусное сходство или евклидово расстояние. Эта математическая близость позволяет алгоритмам выполнять сложные задачи, такие как классификация и кластеризация, с высокой эффективностью.
Реальные приложения#
Эмбеддинги выступают в качестве движка для многих интеллектуальных функций, используемых в современных программных продуктах.
- Семантический поиск: Традиционные поисковые системы часто полагаются на точное сопоставление ключевых слов, которое не срабатывает, если пользователь запрашивает «авто», а документ содержит «машина». Эмбеддинги улавливают смысл, стоящий за словами. Представляя поисковый запрос и документы базы данных в виде векторов, система может извлекать результаты, соответствующие намерению пользователя, даже если конкретные слова различаются.
- Рекомендательные системы: Потоковые сервисы и сайты электронной коммерции используют эмбеддинги для персонализации пользовательского опыта. Если пользователь смотрит научно-фантастический фильм, система определяет вектор эмбеддинга этого фильма и ищет другие фильмы с близкими векторами в базе данных. Это позволяет давать точные рекомендации на основе сходства контента, а не просто на основе ручных тегов или категорий.
- Обучение на нулевых примерах (Zero-Shot Learning): Передовые модели используют совместные эмбеддинги для связи различных модальностей, таких как текст и изображения. Это позволяет системе распознавать объекты, которые она никогда явно не видела во время обучения, путем связывания эмбеддинга изображения с эмбеддингом текста названия объекта.
Генерация эмбеддингов с помощью Python#
State-of-the-art models like YOLO26 can be used to generate robust image embeddings efficiently. The following example demonstrates how to extract a feature vector from an image using the ultralytics Python package.
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Generate embeddings for an image
# The embed() method returns the feature vector representing the image content
embedding_vector = model.embed("https://ultralytics.com/images/bus.jpg")
# Print the shape of the embedding (e.g., a vector of length 1280)
print(f"Embedding shape: {embedding_vector[0].shape}")Эмбеддинги и связанные понятия#
Для эффективного внедрения ИИ-решений полезно отличать эмбеддинги от близких технических терминов.
- Эмбеддинги против Векторного поиска: Сам эмбеддинг — это представление данных (список чисел). Векторный поиск — это последующий процесс запроса к базе данных для поиска ближайших соседей к этому эмбеддингу. Специализированные инструменты, известные как векторная база данных, часто используются для хранения и поиска этих эмбеддингов в больших масштабах.
- Эмбеддинги против Токенизации: В Обработке естественного языка (NLP) токенизация является предварительным шагом разбиения текста на более мелкие фрагменты (токены). Эти токены затем сопоставляются с эмбеддингами. Таким образом, токенизация подготавливает данные, в то время как эмбеддинги представляют смысл данных.
- Эмбеддинги против Глубокого обучения: Глубокое обучение — это более широкая область машинного обучения, основанная на нейронных сетях. Эмбеддинги представляют собой конкретный вывод или слой в архитектуре глубокого обучения, часто выступая в качестве моста между исходными данными и слоями принятия решений модели.
Developers looking to manage the lifecycle of their datasets, including annotation and model training for generating custom embeddings, can utilize the Ultralytics Platform. This comprehensive tool simplifies the workflow from data management to deployment, ensuring that the embeddings powering your applications are derived from high-quality, well-curated data. Whether using frameworks like PyTorch or TensorFlow, mastering embeddings is a crucial step in building sophisticated pattern recognition systems.






