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

Семантический поиск

Узнайте, как семантический поиск использует ИИ и вложения для понимания намерений пользователей. Научитесь создавать системы визуального поиска с помощью Ultralytics и нашей платформы.

Семантический поиск — это сложная технология поиска информации, цель которой — понять смысл и контекст запроса пользователя, а не просто найти совпадения с конкретными словами. Благодаря достижениям в области обработки естественного языка (NLP) и машинного обучения (ML), эта технология позволяет системам интерпретировать человеческий язык с большей степенью нюансов. Она является краеугольным камнем современных приложений искусственного интеллекта (AI) , позволяя более интуитивно взаимодействовать людям и машинам, устраняя разрыв между неоднозначными запросами пользователей и релевантными данными.

Как работает семантический поиск

По сути, семантический поиск выходит за рамки буквального сопоставления символов и анализирует взаимосвязь между понятиями. Традиционные поисковые системы могут дать сбой, если пользователь ищет слово «кошачий», а в документах содержится только слово «кошка». Семантический поиск решает эту проблему, преобразуя неструктурированные данные, такие как текст, изображения или аудио, в математические представления, называемые вложениями.

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

Следующий Python демонстрирует, как сгенерировать эти вложения с помощью модели Ultralytics , что является основополагающим шагом для активации визуального семантического поиска.

from ultralytics import YOLO

# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")

# Generate feature embeddings for an image
# This converts the visual content into a numerical vector
results = model.embed("https://ultralytics.com/images/bus.jpg")

# Output the shape of the embedding vector (e.g., length 1280)
print(f"Embedding vector shape: {results[0].shape}")

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

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

  • Электронная коммерция и визуальный поиск: в мире ИИ в розничной торговле семантический поиск обеспечивает функции «shop the look» (покупай стиль). Клиент может загрузить фотографию кроссовок или выполнить поиск по запросу «винтажный летний стиль». Система использует компьютерное зрение для понимания визуального стиля и находит продукты, которые соответствуют эстетике, даже если описания продуктов не содержат именно эти ключевые слова. Часто для этого используются мультимодальные модели, которые могут понимать как текстовые, так и графические входы.
  • Управление знаниями и RAG: Крупные организации используют семантический поиск, чтобы помочь сотрудникам находить внутренние документы. Вместо того, чтобы запоминать точные имена файлов, сотрудник может задать вопрос, например: «Как сбросить настройки сервера?». Система использует Retrieval-Augmented Generation (RAG) для поиска наиболее релевантных документов по политике на основе их значения и передает их в Large Language Model (LLM) для генерации точного ответа.
  • Рекомендации по контенту: Стриминговые платформы используют семантическое понимание для улучшения своей системы рекомендаций. Анализируя краткие описания сюжета и визуальные карты особенностей фильмов, которые нравятся пользователю, платформа может предложить другие фильмы с похожими темами или настроением, удерживая внимание пользователей дольше.

Semantic Search vs. Related Concepts (Семантический поиск в сравнении со смежными концепциями)

Чтобы полностью понять полезность семантического поиска, полезно отличать его от связанных терминов в сфере науки о данных.

  • Векторный поиск: хотя эти термины часто используются как синонимы, между ними есть техническое различие. Векторный поиск — это математический метод вычисления расстояния между векторами (часто с использованием косинусного сходства). Семантический поиск — это более широкое применение, в котором векторный поиск используется для достижения цели понимания намерения пользователя.
  • Поиск по ключевому слову: это традиционный метод, основанный на точном совпадении строк. Он менее затратен с точки зрения вычислений, но нестабилен; он не справляется с синонимами и полисемией (словами с несколькими значениями). Семантический поиск требует большей вычислительной мощности, но обеспечивает значительно более высокую релевантность.
  • Обучение без примеров (Zero-Shot Learning): Это относится к способности модели classify , которые она никогда не видела во время обучения. Семантические поисковые системы часто демонстрируют способности обучения без примеров, поскольку они могут сопоставлять новый, невиданный запрос с существующими кластерами известных концепций в пространстве встраивания без повторного обучения.

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

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас