Vector Search
Explora cómo la búsqueda vectorial utiliza incrustaciones para encontrar datos similares. Aprende a generar vectores de alta calidad con Ultralytics YOLO26 para una recuperación de información precisa.
La búsqueda vectorial es un método sofisticado de recuperación de información que identifica elementos similares dentro de un conjunto de datos basándose en sus características matemáticas en lugar de coincidencias exactas de palabras clave. A diferencia de la búsqueda por palabras clave tradicional, que se basa en encontrar cadenas de caracteres específicas, la búsqueda vectorial analiza el significado semántico subyacente de los datos. Esta técnica es fundamental para las aplicaciones modernas de inteligencia artificial (IA) porque permite a las computadoras comprender las relaciones entre conceptos abstractos, procesando datos no estructurados como imágenes, archivos de audio y texto en lenguaje natural con una precisión notable.
Cómo funciona la búsqueda vectorial#
El núcleo de la búsqueda vectorial implica transformar datos sin procesar en vectores numéricos de alta dimensión conocidos como incrustaciones. Este proceso asigna elementos a puntos en un espacio multidimensional donde los elementos conceptualmente similares se encuentran cerca unos de otros.
-
Vectorization: A deep learning (DL) model processes the input data—for example, an image of a dog—and outputs a feature vector. Advanced models like YOLO26 are often used to generate these rich feature representations efficiently.
-
Indexación: Para realizar búsquedas rápidamente, estos vectores se organizan utilizando algoritmos especializados, a menudo almacenados en una base de datos vectorial dedicada.
-
Cálculo de similitud: Cuando un usuario envía una consulta, el sistema convierte dicha consulta en un vector y mide la distancia a los vectores almacenados utilizando métricas como la similitud de coseno o la distancia euclidiana.
-
Recuperación: El sistema devuelve los "vecinos más cercanos", que representan los resultados contextualmente más relevantes.
Ejemplo en Python: Generación de embeddings#
Para implementar la búsqueda vectorial, primero debes convertir tus datos en vectores. El siguiente fragmento de código demuestra cómo generar mapas de características e incrustaciones a partir de una imagen utilizando el paquete ultralytics y un modelo YOLO26 previamente entrenado.
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Generate feature embeddings for an image URL
# The 'embed' method returns the high-dimensional vector representation
results = model.embed("https://ultralytics.com/images/bus.jpg")
# Print the shape of the resulting embedding vector
print(f"Embedding vector shape: {results[0].shape}")Aplicaciones en el mundo real#
La búsqueda vectorial es el motor detrás de muchas características intuitivas en el ecosistema de software actual, cerrando la brecha entre la visión por computadora (CV) y la intención del usuario.
- Sistemas de recomendación visual: En el sector de la IA en el comercio minorista, la búsqueda vectorial impulsa funciones de "compra el estilo". Si a un cliente le gusta un bolso específico, el sistema encuentra elementos con vectores visuales similares—coincidiendo en forma, textura y estilo—creando un sistema de recomendación personalizado.
- Generación Aumentada por Recuperación (RAG): Para mejorar los Modelos de Lenguaje Grande (LLMs), los desarrolladores utilizan la búsqueda vectorial para recuperar documentos relevantes de una base de conocimiento. Esto proporciona contexto a la IA, reduciendo las alucinaciones y mejorando la precisión en las interacciones de chatbots.
- Detección de anomalías: Al agrupar vectores de operaciones "normales", los sistemas pueden identificar valores atípicos que se desvían demasiado del grupo. Esto es fundamental para la detección de anomalías en el control de calidad de fabricación y la seguridad de datos.
Distinguir conceptos relacionados#
Es útil diferenciar la búsqueda vectorial de términos similares para comprender el flujo de trabajo completo de aprendizaje automático (ML).
- Búsqueda vectorial frente a búsqueda semántica: La búsqueda semántica es la aplicación más amplia de comprender la intención del usuario (el "qué"). La búsqueda vectorial es el método algorítmico específico utilizado para lograr esto mediante el cálculo de la proximidad vectorial (el "cómo").
- Búsqueda vectorial frente a base de datos vectorial: Una base de datos vectorial es la infraestructura diseñada para almacenar y gestionar incrustaciones a escala. La búsqueda vectorial es el proceso de consultar esa base de datos para recuperar información.
- Búsqueda vectorial frente a búsqueda por palabras clave: La búsqueda por palabras clave coincide con cadenas de texto exactas (p. ej., "manzana" coincide con "manzana"). La búsqueda vectorial coincide con el significado, por lo que "manzana" podría coincidir con "fruta" o "rojo", incluso si las palabras son diferentes.
Integración con la plataforma Ultralytics#
Para los equipos que construyen sistemas de búsqueda de similitud, la gestión de conjuntos de datos y el entrenamiento de modelos de incrustación es un primer paso crucial. La Ultralytics Platform simplifica este flujo de trabajo al proporcionar herramientas para la gestión de datos, entrenamiento en la nube y despliegue de modelos. Al garantizar que tus modelos base—ya sea para detección de objetos o clasificación—tengan un alto rendimiento, te aseguras de que los vectores resultantes proporcionen resultados de búsqueda precisos y significativos.






