Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Reranker

Переранжировщик повторно оценивает короткий список результатов ретривера с помощью более медленной, но точной модели, например кросс-энкодера, прежде чем результаты попадут к пользователю или в LLM.

Модель переранжирования получает короткий список кандидатов от быстрого поискового компонента первого этапа, точнее оценивает каждого кандидата относительно запроса и меняет порядок элементов. Поисковые системы, конвейеры генерации с дополнением из найденных источников (RAG) и рекомендательные системы используют этот подход, поскольку самые точные модели релевантности слишком медленны для обработки миллионов документов, но достаточно быстры для нескольких десятков или сотен лучших кандидатов. В текстовом поиске обычно применяют кросс-энкодер — трансформер, который одновременно обрабатывает запрос и одного кандидата и выдаёт единственную оценку релевантности. Nogueira и Cho (2019) дообучили BERT таким образом и возглавили таблицу лидеров MS MARCO по ранжированию фрагментов: значение MRR@10 оказалось на 27% выше предыдущего лучшего результата в относительном выражении.

Как работает схема «поиск, затем переранжирование»#

Первый этап ориентирован на полноту: за миллисекунды он извлекает из всей коллекции несколько сотен потенциально релевантных кандидатов с помощью сопоставления ключевых слов на основе BM25, векторного поиска по заранее вычисленным эмбеддингам или их сочетания. Переранжировщик ориентирован на точность: он выполняет полный проход модели для каждой пары «запрос — кандидат», а пользователю или в контекстное окно LLM попадают только несколько лучших результатов. Поисковым компонентом первого этапа такого типа служит VisualAISearch — решение от Ultralytics: решение создает эмбеддинги изображений из папки с помощью CLIP ViT-B/32, ранжирует изображения по косинусному сходству с текстовым запросом и по умолчанию возвращает до 30 совпадений, сходство которых превышает порог 0.1.

Кросс-энкодеры и би-энкодеры#

Би-энкодер, обычно используемый для поиска, отдельно строит эмбеддинги запроса и каждого документа, поэтому векторы документов можно вычислить один раз и сохранить в векторной базе данных. Эта независимость — одновременно и ограничение: вектор документа фиксируется до того, как становится известен запрос. Кросс-энкодер объединяет запрос и документ в один вход, позволяя механизму самовнимания сопоставить каждое слово запроса с каждым словом документа, но для каждой пары при обработке запроса требуется полный прямой проход. ColBERT занимает промежуточное положение: он хранит один вектор на токен документа и сопоставляет с ними токены запроса посредством отложенного взаимодействия. Класс CrossEncoder в Sentence Transformers запускает модель переранжирования, такую как ms-marco-MiniLM-L6-v2, обученную на поисковых запросах MS MARCO:

from sentence_transformers import CrossEncoder

query = "When was the transformer architecture introduced?"
# Shortlist returned by a fast first-stage retriever, in its original order
candidates = [
    "Transformer models such as GPT and BERT are widely used in natural language processing.",
    "An electrical transformer changes the voltage of an alternating current.",
    "Convolutional neural networks became popular after AlexNet won ImageNet in 2012.",
    "The transformer was introduced in the 2017 paper Attention Is All You Need.",
]

# The cross-encoder reads the query and each candidate together and scores their relevance
reranker = CrossEncoder("cross-encoder/ms-marco-MiniLM-L6-v2")
ranked = reranker.rank(query, candidates)

for hit in ranked:
    print(f"{hit['score']:6.2f}  {candidates[hit['corpus_id']]}")

Фрагмент, содержащий ответ на вопрос, перемещается с последнего места на первое с оценкой 6.97, значительно опережая следующего кандидата с оценкой -4.48. Предложение об электрическом трансформаторе содержит ключевое слово из запроса, но получает оценку -5.29.

Типы моделей переранжирования#

  • Кросс-энкодеры: Компактные трансформеры, дообученные на метках релевантности, например модели MS MARCO MiniLM и семейство bge-reranker от BAAI; также доступны в виде размещённых API для переранжирования.
  • Переранжировщики на основе LLM: Большой языковой модели (LLM) предлагают оценить кандидатов или сразу упорядочить весь список. RankGPT показал, что ChatGPT и GPT-4 могут переранжировать фрагменты, выдавая отсортированный список, а затем сжал ранжирование ChatGPT до небольшой специализированной модели переранжирования.
  • Модели обучения ранжированию: Рекомендательные системы и системы электронной коммерции переранжируют кандидатов с помощью моделей, например деревьев градиентного бустинга, учитывающих такие признаки, как история кликов, цена и актуальность. Их обучают с целевыми функциями ранжирования, например LambdaMART, доступной в LightGBM и XGBoost.
  • Семантический поиск: Поиск по смыслу, обычно с помощью би-энкодера. Переранжировщик может выступать дополнительным вторым этапом.
  • Гибридный поиск: Объединяет списки результатов поиска по ключевым словам и векторного поиска, часто с помощью слияния обратных рангов, которое объединяет позиции результатов без повторного анализа содержимого. Переранжировщик часто обрабатывает объединённый список.
  • Дистилляция знаний: Обучает быстрый поисковый компонент имитировать оценки медленного переранжировщика, перенося часть качества переранжирования на первый этап.
  • Двухэтапные детекторы объектов: Для изображений применяют тот же подход: на первом этапе предлагаются области с кандидатами, а на втором каждая из них повторно оценивается и уточняется, после чего подавление немаксимумов (NMS) удаляет перекрывающиеся дубликаты.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

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

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

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

Компьютерное зрение в сельском хозяйстве

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

Давай вместе строить будущее ИИ!

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