Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Base de données vectorielle

Découvrez comment les bases de données vectorielles gèrent les intégrations à haute dimension pour la recherche sémantique. Apprenez à optimiser les applications d'IA avec Ultralytics et la recherche par similarité.

Une base de données vectorielle est un système de stockage spécialisé conçu pour gérer, indexer et interroger des données vectorielles à haute dimension, souvent appelées « embeddings ». Contrairement à une base de données relationnelle traditionnelle, qui organise les données structurées en lignes et en colonnes pour permettre une correspondance exacte des mots-clés, une base de données vectorielle est optimisée pour la recherche sémantique. Elle permet aux systèmes intelligents de trouver des points de données qui sont conceptuellement similaires plutôt qu' identiques. Cette capacité est fondamentale pour l'infrastructure moderne de l' intelligence artificielle (IA) , car elle permet aux applications de traiter et de comprendre des données non structurées, telles que des images, des fichiers audio, des vidéos et des textes, en analysant les relations mathématiques qui existent entre elles. Ces bases de données servent de mémoire à long terme pour les agents intelligents, facilitant des tâches telles que la recherche visuelle et les recommandations personnalisées.

Fonctionnement des bases de données vectorielles

La fonction d'une base de données vectorielle est centrée sur le concept d'espace vectoriel, où les éléments de données sont représentés sous forme de points dans un système de coordonnées multidimensionnel. Le processus commence par l' extraction de caractéristiques, où un modèle d'apprentissage profond (DL) convertit les entrées brutes en vecteurs numériques.

  1. Ingestion : les données sont traitées par un réseau neuronal, tel que le très performant YOLO26, afin de générer des intégrations. Ces vecteurs compressent la signification sémantique de l'entrée en une liste dense de nombres à virgule flottante.
  2. Indexation : afin de garantir une faible latence d'inférence lors de la récupération, la base de données organise ces vecteurs à l'aide d'algorithmes spécialisés. Des techniques telles que Hierarchical Navigable Small World (HNSW) ou Inverted File Index (IVF) permettent au système de naviguer efficacement parmi des milliards de vecteurs sans avoir à analyser chaque entrée.
  3. Requête : lorsqu'un utilisateur soumet une requête de recherche (par exemple, une image d'un modèle de chaussure spécifique), le système convertit la requête en un vecteur et calcule sa proximité avec les vecteurs stockés à l'aide de mesures de distance telles que la similarité cosinus ou la distance euclidienne.
  4. Récupération : la base de données renvoie les « voisins les plus proches », qui représentent les résultats les plus pertinents d'un point de vue contextuel.

Python suivant montre comment générer des représentations à l'aide d'un modèle standard. ultralytics modèle, qui est l'étape préalable au remplissage d'une base de données vectorielle.

from ultralytics import YOLO

# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")

# Generate feature embeddings for an image file
# The 'embed' method creates the vector representation needed for the database
results = model.embed("https://ultralytics.com/images/bus.jpg")

# Output the shape of the resulting embedding vector
print(f"Embedding vector shape: {results[0].shape}")

Applications concrètes

Les bases de données vectorielles sont le moteur de nombreuses applications avancées de vision par ordinateur (CV) et de traitement du langage naturel (NLP) utilisées aujourd'hui dans les environnements d'entreprise.

  • Génération augmentée par la récupération (RAG) : à l'ère de l' IA générative, les bases de données vectorielles permettent aux modèles linguistiques à grande échelle (LLM) d'accéder à une vaste bibliothèque de données privées et actualisées. En récupérant les documents pertinents en fonction de la signification sémantique de la requête d'un utilisateur, le système réduit les hallucinations dans les LLM et fournit des réponses factuelles et adaptées au contexte.
  • Moteurs de recommandation visuelle : dans le domaine de l'IA appliquée au commerce de détail, les plateformes utilisent des bases de données vectorielles pour alimenter les fonctionnalités « acheter des styles similaires ». Si un utilisateur consulte une robe d'été spécifique, le système interroge la base de données pour trouver d'autres images de produits présentant des intégrations visuelles similaires (motifs, coupes et couleurs correspondants), offrant ainsi une meilleure expérience utilisateur qu'un simple filtrage basé sur des balises.
  • Détection des anomalies et des menaces : les systèmes de sécurité exploitent les bases de données vectorielles pour la détection des anomalies. En stockant les intégrations des comportements « normaux » ou du personnel autorisé, le système peut instantanément signaler les valeurs aberrantes qui ne correspondent pas au cluster attendu dans l'espace vectoriel, améliorant ainsi la sécurité des données et la surveillance des installations.

Différencier des concepts connexes

Pour mettre en œuvre efficacement ces systèmes, il est utile de distinguer la base de données vectorielle des technologies connexes dans le domaine des opérations d'apprentissage automatique (MLOps) .

  • Base de données vectorielle vs recherche vectorielle: La recherche vectorielle est l'action ou le processus algorithmique qui consiste à trouver des vecteurs similaires (le « comment »). Une base de données vectorielle est une infrastructure robuste conçue pour stocker les données, gérer l'index et effectuer ces recherches à grande échelle (le « où »).
  • Base de données vectorielle vs magasin de caractéristiques: Un magasin de caractéristiques est un référentiel centralisé permettant de gérer les caractéristiques utilisées dans l'entraînement et l'inférence des modèles, garantissant ainsi leur cohérence. Bien qu'il traite les données de caractéristiques, il n'est pas principalement optimisé pour les requêtes de recherche basées sur la similarité qui définissent une base de données vectorielle.
  • Base de données vectorielle vs lac de données: un lac de données stocke de grandes quantités de données brutes dans leur format natif. Une base de données vectorielle stocke les représentations mathématiques traitées (intégrations) de ces données, optimisées spécifiquement pour la recherche par similarité.

Intégration avec les flux de travail modernes de l'IA

La mise en œuvre d'une base de données vectorielle implique souvent un pipeline dans lequel des modèles tels que l'efficace YOLO26 font office de moteur d'intégration. Ces modèles traitent les données visuelles à la périphérie ou dans le cloud, et les vecteurs qui en résultent sont transférés vers des solutions telles que Pinecone, Milvus ou Qdrant.

Pour les équipes qui cherchent à rationaliser l'ensemble de ce cycle de vie, de la curation des données et l'annotation automatique à la formation et au déploiement des modèles , la Ultralytics offre un environnement complet . En intégrant la formation des modèles à des stratégies de déploiement efficaces, les développeurs peuvent s'assurer que les intégrations qui alimentent leurs bases de données vectorielles sont précises, ce qui se traduit par des résultats de recherche de meilleure qualité et des agents IA plus intelligents .

Rejoindre la communauté Ultralytics

Rejoignez le futur de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

Rejoindre maintenant