Qualité d’un graphe de connaissances : comment contrôler les entités et les relations ?

Un graphe de connaissances peut contenir des millions de nœuds et rester peu fiable.

La qualité ne dépend pas uniquement du volume.

Elle dépend notamment de la capacité du graphe à représenter correctement :

Une seule fusion incorrecte peut créer de nombreuses fausses relations. Une relation ancienne peut présenter une situation passée comme actuelle. Une extraction automatique peut transformer une hypothèse en fait.

La qualité d’un graphe ne se mesure pas au nombre de connexions, mais à la fiabilité et à l’utilité de ces connexions.

Ce guide présente une méthode pour contrôler un graphe de connaissances avant et après son déploiement.

Les principales dimensions de qualité

La qualité d’un graphe peut être analysée selon plusieurs dimensions.

Exactitude

Les entités et relations correspondent-elles à la réalité représentée ?

Complétude

Le graphe contient-il les connaissances nécessaires aux questions prévues ?

Cohérence

Les données respectent-elles le modèle et les contraintes ?

Unicité

Une même entité est-elle représentée une seule fois ?

Fraîcheur

Les relations sont-elles encore valides ?

Provenance

Chaque fait important possède-t-il une source ?

Explicabilité

Le système peut-il montrer les chemins utilisés ?

Utilité

Le graphe permet-il réellement de traiter les cas d’usage ?

Accessibilité

Les droits sont-ils respectés au niveau des nœuds, relations et sources ?

Un graphe peut être exact mais incomplet

Exemple :

Marie → travaille pour → Entreprise Alpha

Cette relation peut être correcte.

Mais si le graphe ne contient pas :

Entreprise Alpha → participe à → Projet Orion

il ne pourra pas répondre à une question sur les collaborateurs du projet Orion.

L’exactitude et la complétude doivent donc être évaluées séparément.

Étape 1 — Définir les questions de référence

La qualité ne peut pas être évaluée sans objectif.

Exemples :

Ces questions définissent :

Exemple

Question :

Quel parcours doit suivre Marie avant la certification SEO ?

Le graphe doit contenir :

Marie → possède → Compétence débutante
Formation intermédiaire → exige → Compétence débutante
Formation intermédiaire → développe → Compétence intermédiaire
Formation avancée → exige → Compétence intermédiaire
Certification SEO → exige → Compétence avancée

Si une seule relation manque, le parcours peut être interrompu.

Étape 2 — Définir un modèle de qualité

Créez une fiche pour chaque type de nœud.

Exemple : personne

node_type: "Personne"

required_properties:
  - id
  - nom

recommended_properties:
  - email
  - organisation

unique_properties:
  - id

forbidden_relations:
  - "EST_UN_PRODUIT"

Exemple : formation

node_type: "Formation"

required_properties:
  - id
  - titre
  - statut

required_relations:
  - type: "DEVELOPPE"
    minimum: 1
    target: "Competence"

Ce modèle permet de construire des contrôles automatiques.

Étape 3 — Contrôler les types de nœuds

Chaque nœud doit posséder un type cohérent.

Exemples :

Marie Dupont → Personne
Entreprise Alpha → Organisation
Toulouse → Ville
Formation SEO → Formation

Erreur de typage

Toulouse → Formateur

Cette erreur peut venir :

Contrôles

Étape 4 — Contrôler les propriétés obligatoires

Exemple :

Une formation doit posséder :

Requête conceptuelle :

Trouver toutes les formations sans statut.

Les résultats doivent être corrigés avant leur utilisation.

Propriétés mal formées

Exemples :

date : "demain"
prix : "beaucoup"
email : "Marie Dupont"

Les types de valeurs doivent être validés.

Étape 5 — Contrôler les relations

Chaque relation doit correspondre à une définition.

Exemple :

ANIME
Sujet : Formateur
Objet : Session

Relation correcte :

Paul → ANIME → Session SEO octobre

Relation incorrecte :

Formation SEO → ANIME → Paul

Dictionnaire des relations

RelationSujetObjetSens
POSSEDEPersonneCompétenceCompétence détenue
DEVELOPPEFormationCompétenceCompétence visée
ANIMEFormateurSessionAnimation
MET_EN_OEUVRESessionFormationProgramme réalisé
JUSTIFIEDocumentRègleSource de la règle

Ce dictionnaire doit être utilisé par :

Étape 6 — Détecter les relations trop vagues

Relations problématiques :

EST_LIE_A
CONCERNE
A_UN_RAPPORT_AVEC

Elles peuvent parfois être nécessaires, mais elles apportent peu d’information.

Préférez :

TRAVAILLE_POUR
APPARTIENT_A
DEVELOPPE
EXIGE
REMPLACE
CITE

Indicateur

Mesurez la proportion de relations génériques.

Relations génériques
÷
Relations totales

Un taux élevé peut révéler un modèle insuffisamment précis.

Étape 7 — Détecter les doublons

Un même objet peut apparaître plusieurs fois.

Entreprise Alpha
Alpha SAS
Société Alpha

Ces trois nœuds peuvent représenter :

Signaux de doublon

Faux doublon

Jean Martin

peut désigner plusieurs personnes.

Le nom seul n’est pas suffisant pour fusionner.

Score de correspondance

candidate_pair:
  entity_a: "ORG-001"
  entity_b: "ORG-458"

signals:
  same_website: true
  same_address: true
  same_identifier: true

decision:
  merge: true
  confidence: 0.99

Les fusions importantes doivent être réversibles.

Étape 8 — Contrôler les identifiants

Un identifiant doit être :

Mauvais identifiant :

formation-seo-avancee

s’il change lorsque le titre est modifié.

Identifiant plus stable :

FORMATION-000458

Le libellé peut évoluer sans modifier l’identité.

Étape 9 — Contrôler la provenance

Une relation importante devrait posséder :

Exemple

statement:
  subject: "Formation SEO avancée"
  predicate: "EXIGE"
  object: "Compétence SEO intermédiaire"

source:
  document_id: "REGLEMENT-2.1"
  section: "Prérequis"
  page: 12

extraction:
  method: "manuelle"

validation:
  status: "validé"
  validator: "responsable-pedagogique"

Indicateur de couverture

Relations avec source
÷
Relations totales

Pour les relations critiques, l’objectif peut être de 100 %.

Étape 10 — Contrôler la dimension temporelle

Une relation peut ne plus être vraie.

Exemple :

Marie → travaille pour → Entreprise Alpha

Propriétés nécessaires :

date_debut : 2022-01-01
date_fin : 2026-03-31

Sans date de fin, le graphe peut présenter cette relation comme actuelle.

Questions temporelles

Contrôles

Étape 11 — Distinguer fait, hypothèse et proposition

Toutes les relations ne possèdent pas le même statut.

Voyant rouge → PEUT_INDIQUER → Perte de synchronisation

Cette relation ne doit pas être traitée comme :

Voyant rouge → PROUVE → Perte de synchronisation

Statuts possibles

Confirmé
Probable
Hypothèse
Contesté
Proposé automatiquement
Obsolète

Exemple

predicate: "PEUT_INDIQUER"
confidence: 0.72
status: "hypothèse-validée"

Le système de réponse doit préserver cette nuance.

Étape 12 — Détecter les contradictions

Exemple :

Entreprise Alpha → située à → Toulouse
Entreprise Alpha → située à → Bordeaux

Ce n’est pas forcément une contradiction.

L’entreprise peut :

Il faut examiner :

Contradiction réelle

Contrat 458 → statut → Actif
Contrat 458 → statut → Expiré

à la même date et dans le même contexte.

Processus

Détection
  ↓
Vérification des identités
  ↓
Vérification des dates
  ↓
Vérification des périmètres
  ↓
Comparaison des sources
  ↓
Correction ou coexistence documentée

Étape 13 — Contrôler les contraintes ontologiques

Une ontologie peut définir :

Personne et Organisation sont disjointes.
Une session met en œuvre exactement une formation.
Une formation développe au moins une compétence.

Les contrôles peuvent détecter :

Monde ouvert et validation

Dans certaines ontologies, l’absence d’une relation ne signifie pas nécessairement qu’elle est fausse.

Pour valider que certaines données sont obligatoires, un mécanisme de validation spécifique peut être nécessaire.

Il faut distinguer :

Étape 14 — Mesurer la complétude

La complétude absolue est rarement mesurable.

Il faut la définir par rapport aux questions.

Complétude par type

Proportion des formations possédant au moins une compétence.

Complétude par relation

Proportion des incidents reliés à un produit.

Complétude par cas d’usage

Proportion des questions de référence auxquelles le graphe permet de répondre.

Cette dernière mesure est souvent la plus utile.

Étape 15 — Mesurer la connectivité utile

Un graphe très connecté n’est pas nécessairement meilleur.

Un grand nombre de relations peut venir de liens vagues ou redondants.

Mesures possibles :

Nœuds isolés

Un nœud isolé peut être :

Il faut vérifier s’il doit être relié ou supprimé.

Étape 16 — Tester les parcours

Un graphe est utilisé pour parcourir des relations.

Testez les chemins prioritaires.

Parcours pédagogique

Participant
  → POSSEDE
  → Compétence
  ← EXIGE
  ← Formation
  → DEVELOPPE
  → Compétence suivante

Parcours contractuel

Client
  → POSSEDE
  → Contrat
  → COUVRE
  → Produit
  → CONCERNE
  → Incident

Cas de test

question: "Quelle formation Marie peut-elle suivre ?"

expected_path:
  - "Marie"
  - "POSSEDE"
  - "SEO débutant"
  - "EXIGE_PAR"
  - "Formation SEO intermédiaire"

Le test doit contrôler le chemin, pas uniquement la réponse finale.

Étape 17 — Tester les requêtes négatives

Le graphe doit également éviter de produire certains résultats.

Exemple :

Marie possède le niveau débutant.

Elle ne doit pas être recommandée directement pour une formation exigeant le niveau avancé.

Test

Résultat interdit :
Formation expert.

Les tests négatifs détectent les connexions ou règles trop permissives.

Étape 18 — Évaluer l’extraction automatique

Si un LLM ou un système NLP construit le graphe, mesurez :

Exemple

Passage :

La procédure ne s’applique pas aux modèles fabriqués avant 2024.

Extraction incorrecte :

Procédure → S_APPLIQUE_A → Modèles avant 2024

L’erreur inverse le sens.

Les négations doivent donc faire l’objet de tests spécifiques.

Étape 19 — Contrôler les fusions produites par un LLM

Un modèle peut rapprocher :

Alpha

et :

Alpha Technologies

sans preuve suffisante.

Toute fusion doit conserver :

Étape 20 — Contrôler les suppressions

Supprimer une entité peut supprimer indirectement de nombreuses relations.

Avant suppression, identifiez :

Une entité peut être marquée comme inactive plutôt que supprimée.

Étape 21 — Évaluer la fraîcheur

Indicateurs possibles :

Exemple

IndicateurRésultat
Relations révisées depuis moins d’un an78 %
Relations expirées actives34
Sources sans date12 %
Entités sans responsable7 %

Étape 22 — Évaluer l’utilité

Un graphe techniquement correct peut rester inutile.

Mesurez :

Test d’ablation

Retirez temporairement le graphe et comparez les résultats avec :

Si la qualité reste identique, le graphe peut être disproportionné.

Étape 23 — Construire un tableau de qualité

DimensionIndicateurObjectif
ExactitudeRelations validées98 %
ProvenanceRelations avec source100 %
UnicitéDoublons confirmés0
FraîcheurRelations expirées actives0
CohérenceViolations de contraintes0
ComplétudeQuestions de référence couvertes90 %
ExplicabilitéRéponses avec chemin95 %

Les seuils dépendent du niveau de risque.

Étape 24 — Organiser les contrôles automatiques

Contrôles quotidiens ou à chaque import :

Contrôles périodiques

Étape 25 — Organiser la correction

Une erreur doit être traitée selon un processus.

Signalement
  ↓
Classification
  ↓
Analyse de l’impact
  ↓
Correction
  ↓
Validation
  ↓
Réexécution des tests
  ↓
Publication

Classification des erreurs

Erreur d’entité
Erreur de type
Erreur de relation
Erreur de source
Erreur temporelle
Erreur de fusion
Erreur d’extraction
Erreur de règle
Erreur d’accès

Checklist de qualité

Nœuds

Relations

Identités

Provenance et temps

Cas d’usage

Erreurs fréquentes

Mesurer uniquement le nombre de nœuds

Le volume ne garantit pas la qualité.

Considérer chaque relation extraite comme vraie

Une extraction automatique reste une proposition.

Fusionner selon le nom

Les homonymes créent de fausses connexions.

Oublier les dates

Le graphe mélange présent et passé.

Ne pas conserver les passages sources

Les relations deviennent impossibles à vérifier.

Utiliser trop de relations vagues

Le graphe paraît connecté sans apporter de sens.

Tester uniquement les nœuds

La valeur se trouve souvent dans les chemins.

Ne pas mesurer la couverture des questions

Le graphe peut être cohérent mais inutile.

À retenir

  1. La qualité d’un graphe possède plusieurs dimensions.
  2. L’exactitude et la complétude sont différentes.
  3. Les types et propriétés doivent être contrôlés.
  4. Les relations doivent être précises et documentées.
  5. Les identifiants doivent rester stables.
  6. La résolution d’entités constitue un risque majeur.
  7. Les sources doivent être conservées au niveau des faits.
  8. Les dates permettent de distinguer présent et passé.
  9. Les hypothèses ne doivent pas être transformées en certitudes.
  10. Les contraintes détectent les incohérences.
  11. Les chemins doivent être testés sur des questions réelles.
  12. Un graphe doit démontrer une valeur supérieure à une solution plus simple.

Continuer

Apprendre à créer un graphe de connaissances

Comparer une ontologie et un graphe

Mettre en place une gouvernance des connaissances