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

Reranker

Узнайте, как [reranker](ultralytics) уточняет результаты поиска и обнаружения для максимальной точности. Узнайте, как оптимизировать рабочие процессы [YOLO26](ultralytics) и конвейеры RAG уже сегодня.

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

Как работают реранкеры

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

  • Первый этап поиска: легкая модель сканирует всю базу данных, чтобы найти большой набор кандидатов (например, 100 лучших документов). На этом этапе приоритет отдается поиску, чтобы не пропустить ни одного релевантного элемента, часто с помощью быстрых алгоритмов, таких как приблизительный поиск ближайшего соседа.
  • Переранжировка второго этапа: переранжировщик обрабатывает найденные кандидаты. В отличие от поисковой системы, которая может использовать простое векторное сходство, переранжировщик часто использует кросс-кодер или мощную архитектуру Transformer. Он анализирует полное взаимодействие между запросом и кандидатом, улавливая тонкие нюансы и контекст, которые упускают более простые модели. Результатом является переупорядоченный список, в котором наиболее релевантные элементы отображаются вверху.

Переранкеры против ретриверов

Хотя оба компонента нацелены на поиск релевантных данных, они служат разным целям в рабочих процессах машинного обучения (ML).

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

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

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

Генерация с расширением поиска (RAG)

В режиме RAG (Retrieval-Augmented Generation) LLM отвечает на вопросы на основе внешних данных. Если на этапе поиска LLM получает нерелевантные документы, модель может давать неверные ответы или ответы, не имеющие отношения к заданному вопросу . Ранкер действует как фильтр качества, обеспечивая отправку только наиболее релевантных фрагментов текста в генератор. Это повышает фактическую правильность ответа и снижает использование контекстного окна

Обнаружение объектов и подавление не максимальных значений

В компьютерном зрении концепция, аналогичная переранжированию, используется во время вывода. Модели, такие как YOLO26, генерируют тысячи кандидатов в ограничительные рамки для объектов на изображении. Процесс, называемый немаксимальным подавлением (NMS), действует как переранжировщик. Он сортирует рамки по их показателям достоверности и устраняет избыточные, перекрывающиеся прогнозы с помощью пересечения над объединением (IoU). Это гарантирует, что конечный результат содержит только одно лучшее обнаружение для каждого объекта.

Следующий Python показывает, как NMS функционируют в качестве фильтра переранжирования во время вывода с помощью ultralytics.

from ultralytics import YOLO

# Load the state-of-the-art YOLO26 model
model = YOLO("yolo26n.pt")

# Run inference with NMS settings acting as the 'reranker'
# 'iou' controls the overlap threshold for suppressing duplicate candidates
# 'conf' sets the minimum confidence score required to be considered
results = model.predict("https://ultralytics.com/images/bus.jpg", iou=0.5, conf=0.25)

# Show the filtered, high-relevance detections
results[0].show()

Персонализация электронной коммерции

Крупные интернет-магазины, такие как Amazon, используют реранкеры для настройки результатов поиска. Если пользователь ищет «кроссовки», поисковая система находит тысячи моделей обуви. Затем реранкер сортирует их на основе истории покупок пользователя, текущих тенденций и прибыльности, размещая товары, которые пользователь с наибольшей вероятностью купит, в верхней части страницы.

Оптимизация рабочих процессов переранжирования

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

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

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

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

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