Skip to main content

Fonctionnement de l’outil Fusionner des embeddings

L’outil Fusionner des embeddings permet d’agréger des données vectorielles de haute dimension (embeddings) d’une couche source dans une couche surfacique cible. Ce processus est essentiel pour synthétiser des informations complexes et fait le lien entre les embeddings bruts, localisés et les unités géographiques plus larges et significatives telles que les frontières administratives, les bassins versants ou les grilles d’analyse personnalisées.

Comprendre les embeddings dans ArcGIS

Dans les processus modernes de l’IA, un embedding est une représentation dense et de haute dimension d’une entité qui capture la signification sémantique de cette entité.

En savoir plus sur les embeddings

Dans ArcGIS Pro, les embeddings sont stockés dans un champ BLOB (Binary Large Object) tel que décrit dans la rubrique Embeddings en tant que champs BLOB.

Pour garantir les performances et la compatibilité croisée avec Python, C++ et JavaScript, l’outil s’attend à ce que ces BLOB soient sérialisés sous forme de tableaux binaires à virgule flottante 32 bits (float32). Lorsque l’outil s’exécute, il lit ces zones tampons binaires directement en mémoire sous forme de tableaux numériques, effectue une agrégation mathématique et les résérialise pour stockage dans la classe d’entités en sortie.

Lorsque vous générez des embeddings, par exemple à l’aide de modèles de Deep Learning, le vecteur obtenu capture la sémantique d’une localisation. L’outil Fusionner des embeddings permet de déplacer ces vecteurs à différentes échelles géographiques tout en préservant leur intégrité mathématique.

Embeddings dans une vue tabulaire

Comment l’outil traite les données

L’outil suit un processus en quatre étapes pour garantir une précision spatiale et mathématique :

Superposition spatiale

L’outil commence par déterminer la superposition spatiale précise entre la valeur du paramètre Embedding Features (Entités d’embedding) (source) et la valeur du paramètre Target Features (Entités cibles) (destination). Cela garantit que seules les parties des embeddings qui correspondent physiquement à un polygone cible contribuent à son vecteur final. En utilisant une logique d’intersection par paires, l’outil gère plus efficacement les jeux de données très volumineux à forte complexité topologique que les méthodes de superposition standards.

Pour les points, l’outil identifie les points physiquement contenus dans chaque polygone cible. Pour les polygones, l’outil calcule la zone d’intersection, à savoir l’emprise exacte où un polygone d’embedding source est superposé à un polygone cible.

Logique d’agrégation

La fonctionnalité principale de l’outil réside dans sa capacité à fusionner plusieurs vecteurs de haute dimension en un seul vecteur représentatif de la zone ciblée. La méthode de calcul varie en fonction de la géométrie en entrée.

Point vers polygone (moyenne simple)

Point vers polygone

Lors de l’agrégation de points en polygone, l’outil suppose que chaque point représente une observation discrète et pondérée de manière égale. Le vecteur \(E_{\text{target}}\) final est la moyenne arithmétique de tous les vecteurs \((E_i)\) trouvés à l’intérieur de la limite. Cette méthode convient parfaitement pour l’agrégation des embeddings géolocalisés des réseaux sociaux ou des données de capteurs localisées.

\[ E_{target} = \frac{1}{n} \sum_{i=1}^{n} E_i \]
Remarque :

Si un polygone cible ne contient aucun point, le champ Embedding dans la sortie reste nul.

Polygone vers polygone (moyenne pondérée par surface)

Polygon vers polygone

Lorsque les embeddings sources sont des polygones (comme des gabarits provenant d’une image satellite ou de limites de comté), l’outil utilise une interpolation pondérée par surface. Cette logique reconnaît qu’un embedding couvrant 90 % d’un polygone cible devrait avoir une influence significativement plus forte sur le résultat qu’un embedding couvrant seulement 10 %.

L’outil calcule le poids (Wi) pour chaque embedding de superposition en divisant la surface d’intersection (\(Area_i\)) par la surface totale de superposition dans cette cible spécifique.

\[ E_{target} = \sum_{i=1}^{n} E_i \cdot \left(\frac{Area_i}{\sum Area}\right) \]

Calcul vectoriel

À l’aide de la bibliothèque NumPy, l’outil reconstruit les BLOB binaires en tableaux, effectue les calculs pondérés, puis résérialise les résultats dans un format binaire pour stockage.

Génération de la sortie

Les résultats finaux sont écrits dans une nouvelle classe d’entités. Un nouveau champ BLOB, portant par défaut le nom Embedding, est créé. Cette sortie est optimisée pour les outils GeoAI suivants, tels que Recherche de similarité.

Utilisation

Cette section fournit des conseils pratiques et présente les contraintes à prendre en compte pour garantir le bon fonctionnement de l’outil.

Préparation des données

L’outil recherche spécifiquement un champ nommé Embedding. Assurez-vous que les entités sources ont exactement ce nom de champ et que le type de données est défini sur BLOB.

Tous les embeddings de l’entrée doivent être de même longueur (par exemple, tous en 128 dimensions ou tous en 512 dimensions). Si l’outil rencontre des embeddings de longueurs différentes,v il ignore ces enregistrements et émet un avertissement.

Contraintes de l’espace de travail

Parce que les shapefiles et les GeoPackages présentent des limitations techniques concernant le stockage et la récupération de données BLOB volumineuses, la valeur du paramètre Output Embedding Features (Entités d’embedding en sortie) doit être stockée dans une géodatabase fichier, mobile ou d’entreprise.

L’utilisation de l’espace de travail memory ou in_memory est déconseillée pour cet outil en raison de la consommation potentiellement élevée de RAM des jeux de données d’embedding volumineux.

Paramètres d’environnement

Pour les calculs de moyenne pondérée par surface, il est fortement recommandé d’utiliser un système de coordonnées projetées pour l’environnement Output Coordinate System (Système de coordonnées en sortie). L’utilisation d’un système de coordonnées géographiques (WGS84) peut ralentir les performances et diminuer la précision des rapports de surface dans certaines régions.

Troubleshooting (Dépannage)

Si un polygone cible dans la sortie possède un champ Embedding nul, cela signifie qu’aucune entité source n’a intersecté spatialement ce polygone ou que les entités d’intersection contiennent des données BLOB vides.