Векторные представления (embeddings)
Узнайте, что такое embeddings и как они поддерживают AI, фиксируя семантические связи в данных для NLP, рекомендаций и компьютерного зрения.
Векторные представления (embeddings) являются краеугольным камнем современного машинного обучения (ML), представляя собой мощный метод преобразования многомерных данных, таких как слова, изображения или даже пользователи, в значимые, плотные и низкоразмерные числовые векторы. Основная цель векторного представления состоит в том, чтобы зафиксировать семантические взаимосвязи и основной контекст исходных данных. В этом векторном пространстве элементы со схожими значениями или характеристиками располагаются ближе друг к другу. Это позволяет моделям ИИ выполнять сложные задачи рассуждения и определения сходства, которые были бы невозможны с необработанными, неструктурированными данными.
Как создаются эмбеддинги?
Векторные представления обычно изучаются автоматически моделью глубокого обучения в процессе обучения. Нейронная сеть, часто построенная с использованием таких фреймворков, как PyTorch или TensorFlow, обучается на соответствующей задаче, такой как прогнозирование следующего слова в предложении или классификация изображения. Один из скрытых слоев в этой сети затем используется в качестве слоя векторного представления. По мере того как модель учится выполнять свою задачу, она корректирует веса в этом слое, эффективно учась сопоставлять каждый входной элемент с вектором, который заключает в себе его наиболее важные характеристики. Этот процесс является формой снижения размерности, сжимающей огромные объемы информации в компактный и полезный формат.
Приложения и примеры
Векторные представления фундаментальны для широкого спектра приложений ИИ, от обработки естественного языка (NLP) до компьютерного зрения.
- Механизмы рекомендаций в электронной коммерции: Системы рекомендаций используют embeddings для представления как пользователей, так и продуктов. Если пользователь часто покупает или просматривает товары с похожими embeddings (например, различные виды экипировки для бега), система может идентифицировать другие продукты в этом векторном окружении (например, энергетические гели или гидраторы) и рекомендовать их. Это гораздо эффективнее, чем простое сопоставление ключевых слов.
- Семантический поиск и поиск изображений: Вместо того, чтобы полагаться на теги или метаданные, системы семантического поиска используют embeddings (векторные представления) для поиска результатов на основе концептуального значения. Пользователь может искать «летние фотографии с отпуска», и система извлечет изображения пляжей, гор и туристических сцен, даже если этих точных слов нет в описании изображения. Это обеспечивается такими моделями, как CLIP, которые генерируют согласованные embeddings как для текста, так и для изображений, обеспечивая мощные возможности мультимодальной модели. Этот же принцип позволяет осуществлять мощный визуальный поиск, ключевую функцию во многих современных приложениях. Вы даже можете создать свой собственный с помощью нашего руководства по поиску похожих изображений.
Другие приложения включают открытие лекарств, где молекулы встраиваются для прогнозирования взаимодействий, и сервисы потоковой передачи музыки, которые рекомендуют песни с похожими аудиохарактеристиками.
Эмбеддинги в сравнении со смежными концепциями
Полезно различать embeddings и связанные с ними термины:
- Эмбеддинги vs. Извлечение признаков: Эмбеддинги — это сложная, часто автоматизированная форма извлечения признаков, достигаемая с помощью глубокого обучения. В то время как традиционная разработка признаков может включать ручное определение признаков (например, цветовые гистограммы для изображений), эмбеддинги изучают релевантные признаки непосредственно из данных во время обучения.
- Эмбеддинги vs. Векторный поиск / Векторные базы данных: Эмбеддинги — это векторные представления элементов данных. Векторный поиск — это процесс запроса коллекции эмбеддингов для поиска наиболее похожих (близких) к вектору запроса, часто с использованием алгоритмов приблизительного ближайшего соседа (ANN) для повышения эффективности. Векторные базы данных (например, Pinecone или Milvus) — это специализированные базы данных, оптимизированные для хранения, индексации и выполнения быстрого векторного поиска по большим объемам эмбеддингов.
- Эмбеддинги vs. Токенизация: Токенизация — это процесс разбиения текста на более мелкие единицы (токены). Затем эти токены сопоставляются с эмбеддингами. Таким образом, токенизация является предварительным шагом перед созданием или извлечением представления эмбеддинга. Знаковые модели NLP, такие как BERT и GPT-4, полагаются на этот двухэтапный процесс.
Векторные представления предоставляют мощный способ представления данных для моделей машинного обучения, позволяя им понимать семантическое сходство и сложные закономерности в различных типах данных. Они являются неотъемлемой частью возможностей современных платформ ML, таких как Ultralytics HUB, которая упрощает создание передовых моделей ИИ для таких задач, как обнаружение объектов и классификация изображений.