Skip to content
Busque para obtener información sobre los productos y soluciones de InterSystems, las oportunidades de carrera y más.
Abstract data representation

¿Qué es la búsqueda vectorial? Todo lo que debe saber

Explore la búsqueda vectorial: la tecnología revolucionaria que impulsa la IA y el aprendizaje automático. Descubra cómo funciona y transforma la recuperación de datos con InterSystems IRIS.

La búsqueda vectorial es una potente técnica de recuperación de información que utiliza representaciones matemáticas de datos denominadas vectores. Los vectores encuentran elementos similares basándose en el significado semántico y no en coincidencias exactas.

El campo de la Recuperación de informaciónes tan antiguo como la historia de los ordenadores, y la búsqueda vectorial se utiliza desde hace más de 20 años. Sin embargo, últimamente está experimentando un enorme auge. En la era de la IA generativa y el big data, la búsqueda vectorial se ha vuelto crucial para varias aplicaciones. Entre ellas se incluyen (pero no se limitan a):

Lo que hace que la búsqueda vectorial funcione tan bien es su captación inherente del contexto y el significado, y su capacidad para encontrar coincidencias aproximadas en lugar de sólo exactas. Esto permite a los usuarios encontrar información relevante incluso cuando su consulta no coincide exactamente con los datos almacenados. Otra gran ventaja es que la búsqueda vectorial puede utilizarse con muchos tipos de datos, como texto, imágenes, audio, datos estructurados e incluso genomas.

Si tiene curiosidad por saber cómo funciona la búsqueda vectorial y cómo puede ayudar a su empresa, está en el lugar adecuado.

Principales conclusiones

  • Los motores de búsqueda vectorial permiten recuperar información de forma intuitiva y contextualizada en grandes y diversos conjuntos de datos.
  • Lo que hace que la búsqueda vectorial sea importante es su base para aplicaciones avanzadas de IA y aprendizaje automático en diversos sectores.
  • La búsqueda vectorial funciona con muchos tipos diferentes de contenidos, lo que se denomina multimodalidad.
  • InterSystems IRIS ofrece funciones de búsqueda vectorial de alto rendimiento integradas con la gestión de datos tradicional, lo que proporciona una mayor precisión y un procesamiento en tiempo real.

    Comprender la búsqueda vectorial

    ¿Cómo funciona el buscador vectorial? Comprender sus mecanismos internos le ayudará a obtener el máximo valor del espacio vectorial.

    ¿Qué es un vector?

    Puede que recuerdes los vectores de tus clases de álgebra del instituto. En informática, los vectores son simplemente listas de números, donde cada número representa una característica o dimensión diferente.

    Mientras que los vectores que estudiaste en el colegio probablemente tenían dos o tres dimensiones, los sistemas modernos basados en vectores suelen utilizar cientos o miles de dimensiones. Puede parecer complejo, pero considéralo una extensión del mundo tridimensional que conocemos. Imagine que añade más y más características para describir algo, y cada una de ellas se convierte en una nueva dimensión de su vector.

    Por ejemplo, un vector que represente la palabra "gato" podría tener este aspecto:

    [0,2, -0,5, 0,8, 0,1, -0,3, ...]

    Aunque estos números puedan parecer abstractos, captan varios aspectos semánticos del concepto "gato" que permiten la comparación matemática con otros vectores. La palabra "felino" termina con un vector muy similar a la palabra "gato", porque las palabras utilizadas cerca de ellas serán muy parecidas.

    ¿Qué es la búsqueda vectorial?

    La búsqueda vectorial, en esencia, es un método para encontrar elementos similares en un gran conjunto de datos comparando sus representaciones vectoriales. A diferencia de la búsqueda tradicional basada en palabras clave -que busca coincidencias exactas de palabras o frases-, los vectores tratan de comprender el significado subyacente o el contexto.

    Resulta que al convertir el texto en vectores, éstos incluyen más del significado que otras representaciones, porque las palabras utilizadas en combinación con otras palabras proporcionan el contexto que permite encontrar el significado detrás de las palabras.

    Convertir los datos en vectores es el primer paso de la búsqueda vectorial. Esto suele ocurrir siempre que se añaden nuevos datos a un sistema. Cuando un usuario realiza una consulta, ésta también se convierte en un vector. A continuación, la búsqueda consiste en encontrar los elementos del conjunto de datos cuyos vectores sean más similares al vector de consulta.

    Este enfoque permite realizar búsquedas más matizadas. Por ejemplo, en una búsqueda vectorial basada en texto:

    • Una búsqueda de "coche" también puede arrojar resultados sobre "automóvil" o "vehículo", aunque no se utilicen esas palabras exactas.
    • Una consulta sobre "técnicas de análisis de datos" podría devolver resultados relevantes sobre "métodos estadísticos en big data"

    La búsqueda vectorial es una tecnología clave para las arquitecturas de tejidos de datos inteligentes.

    Búsqueda vectorial frente a búsqueda semántica tradicional

    La búsqueda tradicional basada en palabras clave y la búsqueda vectorial difieren en su enfoque y capacidades:

    1. Método de búsqueda: La búsqueda por palabras clave busca coincidencias exactas de palabras o frases. La búsqueda vectorial busca significados o conceptos similares comparando la dirección y la magnitud de distintos vectores, y siempre es aproximada y no exacta.
    2. Comprender el contexto: la búsqueda de palabras clave suele tener problemas con el contexto y los sinónimos. La búsqueda vectorial puede entender el contexto y encontrar contenidos semánticamente relacionados.
    3. Tratamiento de la ambigüedad: la búsqueda por palabra clave puede arrojar resultados irrelevantes cuando las palabras tienen varios significados. La búsqueda vectorial a menudo puede desambiguar basándose en el contexto general de la consulta.  
    4. Capacidad multilingüe: la búsqueda por palabras clave suele requerir índices separados para los distintos idiomas. La búsqueda vectorial a menudo puede encontrar resultados relevantes en varios idiomas si se entrena con datos multilingües.
    5. Tratamiento de errores ortográficos y variaciones: La búsqueda de palabras clave puede perder resultados debido a pequeños errores ortográficos. La búsqueda vectorial es más robusta a las variaciones y a menudo puede encontrar resultados relevantes a pesar de errores menores.

    Cómo se generan los vectores

    La generación de vectores, también conocida como incrustación, es un paso crucial en la búsqueda de vectores. Según el tipo de datos, se utilizan técnicas diferentes:

    1. Datos de texto: las incrustaciones de palabras (p. ej., Word2Vec, GloVe) convierten palabras individuales en vectores, mientras que las incrustaciones de frases o documentos (p. ej., BERT, Universal Sentence Encoder) crean vectores para fragmentos de texto más grandes. Estos modelos suelen preentrenarse con grandes volúmenes de texto y pueden ajustarse a ámbitos específicos.
    2. Datos de imágenes: las redes neuronales convolucionales (CNN) se utilizan a menudo para generar representaciones vectoriales de imágenes. Estas redes aprenden a extraer características relevantes de las imágenes durante el entrenamiento.
    3. Datos de audio: técnicas como los coeficientes cepstrales de frecuencia Mel (MFCC) o los modelos de aprendizaje profundo pueden convertir el audio en representaciones vectoriales.
    4. Datos multimodales: algunos modelos avanzados pueden crear vectores que representan combinaciones de distintos tipos de datos, como imágenes con leyendas.

    También hay tipos de datos más avanzados y especializados que pueden representarse como vectores. Esto incluye información genómica y proteómica en biología, estructuras químicas y relaciones gráficas.

    ¿Qué representan las dimensiones de un vector?

    Las dimensiones de un vector en el contexto de la búsqueda representan diferentes características de los datos:

    1. Características semánticas: cada dimensión puede corresponder a un concepto semántico o atributo concreto de los datos.
    2. Representaciones aprendidas: En muchos casos, especialmente con modelos de aprendizaje profundo, el significado exacto de cada dimensión no se define explícitamente, sino que es aprendido por el modelo durante el entrenamiento. El término "latent semantic model" estaba de moda y es esencialmente una representación aprendida.
    3. Información contextual: en el caso de los datos de texto, las dimensiones suelen capturar patrones de uso contextual de palabras o frases.
    4. Conceptos abstractos: algunas dimensiones pueden representar conceptos abstractos que no son fácilmente interpretables por el ser humano, pero que son útiles para que el modelo comprenda los datos.puede que no sean conceptos en el sentido al que usted está acostumbrado, por ejemplo, un conjunto común de estructura subyacente en diferentes imágenes es un concepto que una máquina verá y los humanos no.

    Aunque un mayor número de dimensiones permite captar más información y realizar distinciones más precisas, también aumenta los requisitos informáticos.

    Por lo tanto, a menudo hay que encontrar un equilibrio entre el número de dimensiones y consideraciones prácticas como la velocidad de búsqueda o los requisitos de almacenamiento.

    reflection of an app developer in his computer screen

    Algoritmos y métodos de búsqueda vectorial

    ¿Qué es un motor de búsqueda vectorial?

    Un motor de búsqueda vectorial convierte datos (como texto, imágenes o audio) en vectores numéricos y encuentra elementos similares midiendo la distancia entre estos vectores en un espacio de alta dimensión.

    A diferencia de la búsqueda semántica tradicional, que se basa en la concordancia de palabras clave y técnicas estadísticas, la búsqueda vectorial puede captar relaciones y similitudes más matizadas entre elementos, lo que permite obtener resultados más precisos y contextualmente relevantes, sobre todo para consultas complejas o contenidos multimedia.

    ¿Qué algoritmos o métodos se utilizan en la búsqueda vectorial?

    La búsqueda vectorial se basa en varios algoritmos para encontrar vectores similares en espacios de alta dimensión. Algunos de los enfoques más comunes son:

    1. Búsqueda del vecino más próximo exacto (NN): este método encuentra los vectores más próximos a un vector de consulta. Aunque es preciso, puede ser costoso desde el punto de vista informático para grandes conjuntos de datos.
    2. Búsqueda por aproximación al vecino más cercano (RNA): los algoritmos RNA sacrifican parte de la precisión a cambio de mejoras significativas en la velocidad. Entre los algoritmos de RNA más conocidos se encuentran:

      • Hashing sensible a la localidad (LSH)
      • Gráficos de mundos pequeños navegables jerárquicamente (HNSW)
      • Cuantización del producto (PQ)
    3. Métodos basados en árboles: Algoritmos como los árboles KD o los árboles de bolas organizan los vectores en una estructura de árbol para agilizar la búsqueda. Pueden ser eficaces para datos de baja dimensión, pero pueden tener problemas con vectores de alta dimensión.
    4. Métodos basados en gráficos: estos algoritmos construyen un gráfico en el que los nodos son vectores y las aristas conectan elementos similares. Algunos ejemplos son los gráficos HNSW (mencionado anteriormente) y Navigable Small World (NSW).

    Similitud de coseno en la búsqueda vectorial

    La similitud coseno es vital en la búsqueda vectorial porque mide eficazmente la similitud entre vectores basándose en su orientación en lugar de en su magnitud, lo que permite realizar comparaciones precisas en espacios de alta dimensión.

    Esto la hace especialmente eficaz para tareas como la búsqueda semántica, los sistemas de recomendación y la agrupación de documentos, donde la relación entre elementos es más importante que sus valores absolutos.

    Puntos clave sobre la similitud coseno:

    1. Rango: Los valores de similitud del coseno van de -1 a 1, donde:

      • 1 indica vectores que apuntan en la misma dirección (más similares)
      • 0 indica vectores ortogonales (no relacionados)
      • -1 indica vectores que apuntan en direcciones opuestas (más disímiles)
    2. Independencia de la magnitud: la similitud del coseno se centra en la dirección de los vectores, no en su magnitud, por lo que resulta útil para comparar documentos de distinta longitud.
    3. Cálculo: La fórmula de la similitud coseno es: cos(θ) = (A - B) / (||A|| * ||B||)Donde A - B es el producto punto de los vectores A y B, y ||A|| y ||B|| son sus magnitudes.
    4. Eficacia: La similitud del coseno puede calcularse de forma eficaz, especialmente cuando los vectores están normalizados.

    La similitud del coseno es especialmente importante porque:

    • Capta bien la similitud semántica, especialmente para los datos de texto.
    • Es eficiente desde el punto de vista computacional, lo que permite cálculos rápidos de similitud en espacios de alta dimensión.
    • Es intuitivo de entender e interpretar.

    La similitud del coseno en acción: una ilustración

    Imagine que es un chef en una cocina bulliciosa y que cada receta es un vector en un vasto "espacio de sabores". Las dimensiones de este espacio incluyen el dulzor, el salado, el picante, el umami, etc. Tu plato estrella es como un punto concreto en este espacio de sabores, y lo que quieres es encontrar recetas similares o crear platos de fusión que complementen tu estilo.

    La similitud del coseno es como una "brújula del sabor" especial que mide lo cerca que se alinean otras recetas con el perfil de sabor de tu plato estrella. Una receta muy parecida a la suya apuntaría casi en la misma dirección en la brújula del sabor (alta similitud coseno, cerca de 1).

    Un plato algo parecido podría apuntar en una dirección relacionada, pero no idéntica (similitud coseno moderada, alrededor de 0,7). Un tipo de cocina completamente diferente apuntaría en dirección perpendicular en su brújula de sabores (similitud de coseno de 0, lo que indica que no hay relación de sabores). Y lo que es más importante, la intensidad de los sabores (magnitud vectorial) no importa: un curry suave y otro intenso podrían ser muy similares en cuanto a la dirección de su sabor.

    En esta analogía culinaria, un buscador vectorial actúa como un sous chef increíblemente eficiente. Puede consultar al instante esta brújula de sabores para cada receta de un vasto recetario global, encontrando rápidamente platos que armonicen con su perfil de sabor característico, independientemente de su origen o intensidad.

    Artificial intelligence brain in network node

    Otras métricas de distancia utilizadas en la búsqueda vectorial

    Aunque la similitud coseno es ampliamente utilizada, se pueden emplear otras métricas de distancia en la búsqueda de vectores:

    1. Distancia euclidiana: Mide la distancia en línea recta entre dos puntos en el espacio euclidiano. Esto es útil cuando la magnitud de los vectores es importante.
    2. Distancia Manhattan: También conocida como distancia L1 o distancia entre manzanas. Calcula la suma de las diferencias absolutas de las coordenadas y resulta útil en determinados problemas de tipo cuadrícula o cuando se trabaja con datos dispersos.
    3. Producto escalar: multiplicación simple de los elementos correspondientes de dos vectores, a menudo utilizada cuando los vectores están normalizados.
    4. Similitud de Jaccard: Mide la similitud entre conjuntos de muestras finitas, lo que resulta útil para datos binarios o categóricos.
    5. Distancia de Hamming: mide el número de posiciones en las que los símbolos correspondientes de dos vectores son diferentes; se utiliza a menudo con datos binarios o para la detección de errores.

    Aplicaciones de la búsqueda vectorial

    La búsqueda vectorial ha cobrado cada vez más importancia en diversos sectores gracias a su capacidad para comprender el contexto y encontrar información relevante más allá de la simple coincidencia de palabras clave.

    Sanidad y ciencias de la vida

    • Búsqueda de bibliografía médica: los investigadores pueden encontrar estudios relevantes aunque varíe la terminología.
    • Cotejo de historiales de pacientes: identificación de casos de pacientes similares para planes de tratamiento personalizados.
    • Descubrimiento de fármacos: Encontrar compuestos químicos con propiedades o efectos similares.

    Más información sobre Sanidad y Ciencias de la Vida

    Comercio electrónico y venta al por menor

    • Recomendaciones de productos: sugerir artículos basándose en la similitud semántica y no sólo en la coincidencia de categorías.
    • Búsqueda visual: permite a los clientes encontrar productos similares a una imagen cargada.
    • Detección de fraudes: identificación de patrones inusuales en los datos de las transacciones.

    Más información sobre comercio electrónico y venta al por menor

    Servicios financieros

    • Evaluación de riesgos: Análisis de documentos financieros para identificar posibles riesgos.
    • Análisis de tendencias de mercado: encontrar correlaciones entre diversos indicadores económicos.
    • Segmentación de clientes: Agrupación de clientes basada en patrones de comportamiento complejos.

    Más información sobre servicios financieros

    Medios de comunicación y entretenimiento

    • Recomendación de contenidos: Sugerir películas, música o artículos en función de las preferencias del usuario.
    • Detección de plagios: identificación de contenidos similares en grandes bases de datos.
    • Búsqueda de audio y vídeo: encontrar momentos concretos en los medios de comunicación a partir de transcripciones o características visuales.

    Fabricación y cadena de suministro

    • Control de calidad: detección de anomalías en los datos de producción.
    • Gestión de inventarios: optimización de los niveles de existencias en función de patrones de demanda complejos.
    • Mantenimiento predictivo: identificación de equipos susceptibles de fallar basándose en patrones de datos de sensores.

    Más información sobre Fabricación y cadena de suministro

    Tecnología de la información y ciberseguridad

    • Análisis de registros: detección de patrones inusuales en los registros del sistema para detectar amenazas a la seguridad.
    • Búsqueda de código similar: Encontrar fragmentos de código similares para su depuración u optimización.
    • Análisis del tráfico de red: identificación de posibles fallos de seguridad basándose en los patrones de tráfico.

    Tecnologías y plataformas de búsqueda vectorial

    A medida que la búsqueda vectorial gana protagonismo en diversos sectores, han surgido una serie de tecnologías y plataformas que permiten su aplicación.

    Bases de datos vectoriales: Una base de datos vectorial está diseñada para almacenar y consultar datos vectoriales de forma eficiente. Algunos ejemplos son Faiss (Facebook AI Similarity Search) y Annoy (Approximate Nearest Neighbors Oh Yeah).

    Aprendizaje automático frameworks: TensorFlow y PyTorch ofrecen bibliotecas para crear y manipular incrustaciones vectoriales. Estos marcos pueden utilizarse para entrenar modelos de incrustación personalizados para dominios específicos.

    NLP Libraries: Bibliotecas como spaCy y Hugging Face's Transformers proporcionan modelos preentrenados para la incrustación de texto. Pueden utilizarse para generar representaciones vectoriales de datos de texto para aplicaciones de búsqueda.

    Servicios de búsqueda vectorial basados en la nube: los principales proveedores de servicios en la nube ofrecen servicios gestionados de búsqueda vectorial que pueden integrarse en las aplicaciones. Estos servicios suelen proporcionar una infraestructura escalable para operaciones de búsqueda vectorial a gran escala.

    Motores de búsqueda de código abierto: Algunos motores de búsqueda tradicionales ofrecen ahora capacidades de búsqueda vectorial. Pueden ser útiles para organizaciones que deseen añadir la búsqueda vectorial a la infraestructura de búsqueda existente.

    ¿Cómo incorporan la búsqueda vectorial los principales motores de búsqueda y bases de datos?

    Buscadores web: Los principales buscadores, como Google, han incorporado técnicas de búsqueda vectorial para mejorar la comprensión semántica de las consultas. Utilizan modelos de redes neuronales para generar representaciones vectoriales tanto de las consultas como de las páginas web.

    Búsqueda en el comercio electrónico: las plataformas de venta en línea utilizan la búsqueda vectorial para mejorar el descubrimiento de productos, a menudo combinándola con la búsqueda tradicional por palabras clave para obtener resultados óptimos.

    Soluciones de búsqueda para empresas: muchas plataformas de búsqueda para empresas ofrecen ahora funciones de búsqueda vectorial. Estas soluciones suelen utilizar enfoques híbridos, que combinan la búsqueda vectorial con los métodos de búsqueda tradicionales.

    Sistemas de gestión de bases de datosalgunos sistemas de bases de datos relacionales han empezado a incorporar funciones de búsqueda vectorial, lo que permite realizar búsquedas por similitud junto con las consultas SQL tradicionales. Esta integración permite realizar consultas flexibles de datos estructurados y no estructurados dentro del mismo sistema.

    Plataformas de datos en la nube: los proveedores de servicios en la nube ofrecen cada vez más búsquedas vectoriales como parte de sus servicios. Esto permite una integración perfecta de las capacidades de búsqueda vectorial en aplicaciones basadas en la nube y flujos de trabajo de datos.

    Young woman using mobile phone against futuristic holographic background

    Aproveche la potencia de la búsqueda vectorial con InterSystems IRIS

    La búsqueda vectorial y la representación vectorial han surgido como una tecnología revolucionaria en el mundo de la recuperación de información y el análisis de datos. Al representar los datos como vectores de alta dimensión, la búsqueda vectorial permite experiencias de búsqueda más intuitivas, conscientes del contexto y ricas desde el punto de vista semántico.

    A lo largo de este artículo, hemos desvelado los conceptos fundamentales que subyacen a la búsqueda vectorial y sus aplicaciones en diversos sectores. Hemos visto cómo la búsqueda vectorial destaca en la comprensión del contexto, el manejo de consultas multilingües y la búsqueda de resultados relevantes incluso cuando no hay coincidencias exactas de palabras clave.

    Sin embargo, también hemos reconocido las demandas computacionales y las complejidades de la gestión de datos de alta dimensión a escala. Aquí es donde InterSystems IRIS destaca como una potente solución. InterSystems IRIS ofrece una plataforma completa y unificada que integra a la perfección las capacidades de búsqueda vectorial con las funciones tradicionales de gestión de datos.

    Entre sus principales ventajas se incluyen:

    1. Integración perfecta: las funciones de búsqueda vectorial están totalmente integradas en la plataforma IRIS de InterSystems, lo que permite combinarlas fácilmente con consultas SQL y otras tareas de procesamiento de datos.
    2. Escalabilidad: InterSystems IRIS está diseñado para gestionar operaciones de búsqueda vectorial a gran escala, y admite computación distribuida para mejorar el rendimiento.
    3. Flexibilidad: La compatibilidad con diversas técnicas de incrustación y métricas de distancia hace que InterSystems IRIS sea versátil para diferentes aplicaciones de búsqueda vectorial.
    4. Integración avanzada de NLP: InterSystems IRIS puede combinarse con sofisticadas técnicas de procesamiento del lenguaje natural para mejorar la comprensión de las consultas y la relevancia de los resultados.
    5. Personalización específica del dominio: la plataforma admite modelos de incrustación personalizados, lo que permite soluciones a medida en campos especializados como la sanidad o las finanzas.
    6. Gestión unificada de datos: InterSystems IRIS elimina la necesidad de disponer de varios sistemas independientes, lo que reduce la complejidad y las posibles incoherencias de los datos.
    TEMAS RELACIONADOS

    Solicite una demostración de búsqueda vectorial

    No se pierda esta oportunidad de mejorar sus capacidades de búsqueda y análisis. Comience su prueba gratuita de InterSystems IRIS y descubra cómo la búsqueda vectorial puede transformar sus estrategias de datos.

    Solicitar una demostración

    Contenido relacionado

    Fundamentals
    ¿Qué son las incrustaciones vectoriales? Todo lo que debe saber
    Desmitifique las incrustaciones vectoriales: aprenda qué son, cómo funcionan y por qué son cruciales para la IA.
    mar. 28, 2024
    Cree aplicaciones de IA generativa con funciones de búsqueda vectorial integradas en InterSystems IRIS. Busque datos estructurados y no estructurados, añada semántica y supere las limitaciones de los LLM.
    mar. 26, 2024
    Esta integración facilitará la creación de aplicaciones que utilicen IA generativa para completar tareas complejas en una amplia gama de casos de uso y ofrecer respuestas actualizadas basadas en datos propios procesados por InterSystems.
    mar. 21, 2024
    InterSystems IRIS Data Platform 2024.1 presenta Vector Search, una nueva y potente función que le permite añadir fácilmente capacidades de búsqueda semántica e inteligencia artificial generativa a sus aplicaciones.

    Dé el siguiente paso

    Nos encantaría hablar. Rellene algunos datos y nos pondremos en contacto con usted.
    *Campos obligatorios
    Highlighted fields are required
    *Campos obligatorios
    Highlighted fields are required
    ** Al seleccionar "sí", usted da su consentimiento para que se le contacte para noticias, actualizaciones y otros fines de marketing relacionados con productos y eventos actuales y futuros de InterSystems. Además, usted da su consentimiento para que la información de contacto de su empresa se introduzca en nuestra solución de CRM que está alojada en Estados Unidos, pero que se mantiene de acuerdo con las leyes de protección de datos aplicables.