Ultralytics YOLO27: Únete a la lista de espera.
Licencia YOLO
Volver al glosario de Ultralytics

Reranker

Un reranker vuelve a puntuar la lista de resultados de un recuperador con un modelo más lento y preciso, como un codificador cruzado, antes de que los resultados lleguen a un usuario o a un LLM.

Un reranker es un modelo que recibe una lista corta de candidatos de un recuperador rápido de primera etapa, puntúa cada candidato con más detalle en relación con la consulta y reordena la lista. Los motores de búsqueda, las canalizaciones de generación aumentada por recuperación (RAG) y los sistemas de recomendación utilizan este patrón porque los modelos de relevancia más precisos son demasiado lentos para procesar millones de documentos, pero lo bastante rápidos para los primeros cientos o decenas de candidatos. En la búsqueda de texto, el reranker estándar es un codificador cruzado: un Transformer que lee juntos la consulta y un candidato y genera una única puntuación de relevancia. Nogueira y Cho (2019) ajustaron BERT de esta forma y encabezaron la clasificación de pasajes de MS MARCO con un MRR@10 un 27 % superior, en términos relativos, al del mejor resultado anterior.

Cómo funciona la recuperación seguida de reranking#

La primera etapa prioriza la exhaustividad: la coincidencia de palabras clave con BM25, la búsqueda vectorial sobre incrustaciones precalculadas, o ambas, recupera en milisegundos unos cientos de candidatos plausibles de toda la colección. El reranker prioriza la precisión: ejecuta una pasada completa del modelo para cada par de consulta y candidato, y solo sus primeros resultados se muestran al usuario o se añaden a la ventana de contexto de un LLM. La solución VisualAISearch de Ultralytics es un recuperador de primera etapa de este tipo: genera incrustaciones de una carpeta de imágenes con CLIP ViT-B/32, las ordena según su similitud coseno con una consulta de texto y devuelve, de forma predeterminada, hasta 30 coincidencias por encima de un umbral de similitud de 0.1.

Codificadores cruzados y codificadores duales#

Un codificador dual, el recuperador habitual, genera por separado las incrustaciones de la consulta y de cada documento, por lo que los vectores de los documentos pueden calcularse una sola vez y almacenarse en una base de datos vectorial. Esa independencia también es su límite: el vector del documento queda fijado antes de conocer la consulta. Un codificador cruzado concatena la consulta y el documento en una sola entrada, de modo que la autoatención puede comparar cada palabra de la consulta con cada palabra del documento; a cambio, requiere una pasada hacia delante completa para cada par en el momento de la consulta. ColBERT se sitúa entre ambos: almacena un vector por cada token del documento y empareja los tokens de la consulta con ellos mediante interacción tardía. La clase CrossEncoder de Sentence Transformers ejecuta un reranker como ms-marco-MiniLM-L6-v2, entrenado con consultas de búsqueda de 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']]}")

El pasaje que responde a la pregunta pasa del último puesto al primero con una puntuación de 6.97, muy por delante del siguiente candidato, que obtiene -4.48. La frase sobre el transformador eléctrico comparte la palabra clave de la consulta, pero recibe una puntuación de -5.29.

Tipos de rerankers#

  • Codificadores cruzados: Transformers compactos ajustados con etiquetas de relevancia, como los modelos MiniLM de MS MARCO y la familia bge-reranker de BAAI, también disponibles como API de reranking alojadas.
  • Rerankers basados en LLM: Se pide a un modelo de lenguaje grande (LLM) que puntúe los candidatos o que ordene de una vez una lista completa. RankGPT demostró que ChatGPT y GPT-4 pueden reordenar pasajes generando una lista ordenada y destiló las clasificaciones de ChatGPT en un reranker pequeño y especializado.
  • Modelos de aprendizaje de ordenación: Los sistemas de recomendación y comercio electrónico reordenan candidatos con modelos como árboles potenciados por gradiente, que utilizan características como el historial de clics, el precio y la actualidad, y se entrenan con objetivos de ordenación como LambdaMART, disponible en LightGBM y XGBoost.
  • Búsqueda semántica: Busca por significado, normalmente con un recuperador de codificador dual. Un reranker puede añadirse como segunda etapa.
  • Búsqueda híbrida: Combina listas de resultados de palabras clave y vectores, a menudo mediante fusión recíproca de posiciones, que combina los rangos sin volver a leer el contenido. A menudo, se aplica un reranker a la lista combinada.
  • Destilación de conocimiento: Entrena un recuperador rápido para que imite las puntuaciones de un reranker lento y traslada parte de la calidad del reranking a la primera etapa.
  • Detectores de objetos de dos etapas: Siguen el mismo patrón con imágenes: una etapa de propuestas de regiones sugiere cajas candidatas y una segunda etapa vuelve a puntuar y refina cada una antes de que la supresión no máxima (NMS) elimine los duplicados superpuestos.

Explora las soluciones

Visión artificial en el deporte

Visión artificial en el deporte

Descubre cómo Ultralytics YOLO impulsa la visión artificial en el deporte con el seguimiento de jugadores y balones, analíticas de rendimiento, información útil para entrenadores y rehabilitación de deportistas.
Más información
Visión artificial para imágenes aéreas

Visión artificial para imágenes aéreas

Convierte imágenes aéreas y de drones en información útil en tiempo real para la agricultura, la acuicultura, la conservación y el análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en el sector aeroespacial

Visión artificial en el sector aeroespacial

Aplica la visión artificial en el sector aeroespacial con Ultralytics YOLO para inspeccionar aeronaves, detectar objetos extraños en pistas, gestionar operaciones en tierra y detectar defectos en materiales compuestos.
Más información
Visión artificial en seguridad

Visión artificial en seguridad

Protege todas tus instalaciones con los modelos Ultralytics YOLO. La IA visual permite supervisar perímetros, detectar amenazas, reconocer matrículas y mejorar la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Potencia máquinas más inteligentes con los modelos Ultralytics YOLO. La IA visual en robótica impulsa la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Agiliza la logística con modelos Ultralytics YOLO. La IA visual permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad del almacén en tiempo real.
Más información
Visión artificial en el comercio minorista

Visión artificial en el comercio minorista

Reinventa el comercio minorista con modelos Ultralytics YOLO. La IA visual permite realizar el seguimiento del inventario, supervisar estanterías, gestionar colas y obtener información más útil sobre los clientes.
Más información
Visión artificial en el sector sanitario

Visión artificial en el sector sanitario

Desarrolla soluciones sanitarias con modelos Ultralytics YOLO. La IA visual en el sector sanitario permite acelerar el diagnóstico por imagen, mejorar los diagnósticos y supervisar a los pacientes.
Más información
Visión artificial en la fabricación

Visión artificial en la fabricación

Optimiza la fabricación con modelos Ultralytics YOLO. La IA visual mejora el control de calidad, la detección de defectos, el cumplimiento de las normas de uso de EPI y la automatización de las líneas de montaje.
Más información
Visión artificial en la automoción

Visión artificial en la automoción

Aplica la visión artificial al sector de la automoción con modelos Ultralytics YOLO. La IA visual mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para lograr carreteras más inteligentes.
Más información
Visión artificial en la agricultura

Visión artificial en la agricultura

Incorpora la IA de visión a la agricultura inteligente con modelos Ultralytics YOLO. Impulsa la monitorización de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas más abundantes e inteligentes.
Más información

¡Construyamos juntos el futuro de la IA!

Inicia tu recorrido hacia el futuro del aprendizaje automático