Glosario

Búsqueda vectorial

Descubre cómo la búsqueda vectorial revoluciona la IA al permitir la similitud semántica en la recuperación de datos para la PNL, la búsqueda visual, los sistemas de recomendación, ¡y mucho más!

Entrena los modelos YOLO simplemente
con Ultralytics HUB

Saber más

La búsqueda vectorial es una potente técnica utilizada en inteligencia artificial (IA) y aprendizaje automático (AM) para encontrar elementos de datos basándose en su similitud conceptual en lugar de en coincidencias exactas de palabras clave. En lugar de buscar texto que contenga palabras concretas, la búsqueda vectorial permite a los sistemas recuperar información -como imágenes, documentos o sonidos- que esté semánticamente relacionada o sea contextualmente similar a una consulta. Este método es fundamental para muchas aplicaciones modernas de IA, ya que permite una recuperación de la información más intuitiva y similar a la humana.

Comprender las incrustaciones vectoriales

El concepto central de la búsqueda vectorial son las incrustaciones vectoriales. Los datos, ya sean texto, imágenes, audio u otros tipos, se transforman en representaciones numéricas llamadas vectores mediante modelos de incrustación. Estos vectores existen en un espacio de alta dimensión en el que los elementos con significados o características similares se sitúan cerca unos de otros. Por ejemplo, en el procesamiento del lenguaje natural (PLN), modelos como el BERT convierten las frases en vectores, garantizando que las frases que transmiten ideas similares tengan representaciones vectoriales cercanas. Del mismo modo, en visión por ordenador (VC), modelos como Ultralytics YOLO pueden generar vectores de características para imágenes, permitiendo comparaciones visuales de similitud. Una vez incorporados los datos, los algoritmos de búsqueda vectorial utilizan métricas de distancia, como la similitud coseno o la distancia euclídea, para cuantificar la "cercanía" entre vectores. Una consulta (convertida también en vector) se compara con los vectores de la base de datos, y los elementos correspondientes a los vectores más cercanos se devuelven como resultados de la búsqueda.

Cómo funciona la búsqueda vectorial

La implementación de la búsqueda vectorial suele implicar estos pasos:

  1. Generación de incrustaciones: Convierte tu conjunto de datos (imágenes, texto, etc.) en incrustaciones vectoriales utilizando un modelo preentrenado o entrenado a medida.
  2. Indexación: Almacena estos vectores en una base de datos vectorial especializada o en un índice diseñado para la búsqueda eficiente de similitudes. Algunos ejemplos son Pinecone y Milvus.
  3. Consulta: Convierte la consulta de búsqueda (por ejemplo, una imagen o una frase de texto) en un vector utilizando el mismo modelo de incrustación.
  4. Búsqueda: Utiliza un algoritmo como la búsqueda del Vecino más Cercano Aproximado (RNA) para encontrar de forma eficiente los vectores del índice más cercanos al vector de consulta en función de la métrica de distancia elegida.
  5. Recuperación: Devuelve los datos originales correspondientes a los vectores más cercanos encontrados.

Aplicaciones de la búsqueda vectorial

La búsqueda vectorial permite una amplia gama de sofisticadas aplicaciones de IA:

  • Sistemas de recomendación: Plataformas como Netflix o Spotify representan a los usuarios y los artículos (películas, canciones) como vectores. La búsqueda vectorial encuentra artículos cuyos vectores están próximos al vector de un usuario (que representa sus preferencias), lo que da lugar a recomendaciones personalizadas.
  • Búsqueda visual: Los sitios de comercio electrónico permiten a los usuarios subir una imagen de un producto que les gusta. El sistema convierte la imagen en un vector y utiliza la búsqueda vectorial para encontrar productos visualmente similares en el inventario. Esto depende en gran medida de incrustaciones eficaces de reconocimiento de imágenes. Las herramientas de plataformas como Ultralytics HUB pueden ayudar a gestionar los conjuntos de datos utilizados para entrenar modelos para tales tareas.
  • Búsqueda semántica: Mejora de los motores de búsqueda o chatbots para que comprendan el significado que hay detrás de las consultas. En lugar de hacer coincidir palabras clave, la búsqueda vectorial encuentra documentos o respuestas que son contextualmente relevantes. Esto es crucial para funciones como el Explorador deUltralytics , que permite buscar conjuntos de datos utilizando lenguaje natural.
  • Detección de anomalías: En ciberseguridad o detección de fraudes, los patrones normales de comportamiento pueden representarse como clusters de vectores. La búsqueda de vectores puede identificar puntos de datos (anomalías potenciales) que quedan muy lejos de estos conglomerados.
  • Sistemas de respuesta a preguntas: Encontrar pasajes relevantes en una gran base de conocimientos para responder a las preguntas de los usuarios, a menudo utilizados como parte de los sistemas de Generación Mejorada de Recuperación (RAG ).

Búsqueda vectorial vs. Búsqueda semántica

Aunque a menudo se utilizan juntos, la Búsqueda Vectorial y la Búsqueda Semántica son conceptos distintos. La Búsqueda Semántica se refiere al objetivo de comprender la intención del usuario y el significado contextual de su consulta para ofrecer resultados relevantes. La Búsqueda Vectorial es un método o mecanismo utilizado frecuentemente para implementar la búsqueda semántica. Consigue la relevancia semántica encontrando elementos que están "cerca" en el espacio vectorial, donde la cercanía representa la similitud semántica. Por tanto, la búsqueda vectorial es el motor que impulsa muchas aplicaciones de búsqueda semántica al operar sobre las incrustaciones vectoriales que capturan el significado. Los modelos avanzados como YOLO aprovechan estos conceptos para la detección de objetos de vocabulario abierto.

Leer todo