Différences entre les versions de « Initiation à la création d’un graphe de connaissances »
Ligne 65 : | Ligne 65 : | ||
=== Préparer les données sources avant l'injection === | === Préparer les données sources avant l'injection === | ||
* Préparer les fichiers en CSV | |||
* Convertir les fichiers en UTF8 (utiliser un éditeur de texte du type Notepad++ ou SublimeText) | |||
* Placer les fichiers à un endroit accessible par la base de graphe : | |||
** un stockage en ligne permettant un accès via http | |||
** dans le répertoire import de l'instance Neo4J | |||
{| class="wikitable" | |||
|[[Fichier:Ouvrir Répertoire Neo4J.png|alt=Ouvrir Répertoire Neo4J dans Neo4JDesktop|centré|vignette|Ouvrir Répertoire Neo4J dans Neo4JDesktop]] | |||
|[[Fichier:Ouvrir répertoire Import Neo4J Desktop.png|alt=Ouvrir répertoire Import Neo4J Desktop|centré|vignette|Ouvrir répertoire Import Neo4J Desktop]] | |||
|} | |||
=== Lire des données à partir du Browser Neo4J === | === Lire des données à partir du Browser Neo4J === | ||
La commande pour lire un fichier de données (source en gras) est : | La commande pour lire un fichier de données (source en gras) est : | ||
LOAD CSV WITH HEADERS FROM ''''file:///###'''<nowiki/>' AS row RETURN row | LOAD CSV WITH HEADERS FROM ''''file:///###'''<nowiki/>' AS row RETURN row |
Version du 5 mai 2024 à 12:52
Objectif
L’objectif est de vous initier à la création d’un graphe de connaissances en exploitant la technologie Neo4J. Il s’agit à partir d’un jeu de données de créer un modèle de connaissances et à partir de ces deux éléments de charger la base de graphe.
Préparer son environnement de travail
En local
Télécharger Neo4J Desktop : https://neo4j.com/download/
Dans le nuage (ie Cloud)
La société Neo4J vous permet après inscription d'exploiter une instance de base de donnée gratuitement : https://neo4j.com/cloud/aura/
Concevoir un modèle de connaissances
Premier Jeu de données : Liste des CNPEs
Le premier jeu de données est en lien avec le Parc Nucléaire de Production Français.
A partir de la page wikipédia ci contre et des pages afférentes, on obtient un jeu de données disponible au format csv ici : [1]
Les en-têtes de colonnes sont les suivantes :
- Trigramme_centrale,
- Centrale_nucleaire,
- Commune,
- Département,
- id_reacteur,
- Nom_du_reacteur,
- Rang,
- Palier,
- Puissance_therm_MWt,
- Puissance_brute_MWe,
- Puissance_nette_MWe,
- Debut_construction,
- Raccordement_au_reseau,
- Mise_en_service,
- longitude,
- latitude
Concevoir le modèle de connaissances
A partir d’une analyse des colonnes et de leur contenu il s’agit identifier les types de noeuds que vous souhaitez créer ainsi que les relations liants ces derniers.
Il s’agit d’identifier les objets élémentaires qui vont permettre que votre graphe de connaissance soit une représentation la plus riche possible à partir des données disponibles. Regarder les colonnes et leur contenu est une bonne stratégie. Par exemple, employez Excel pour explorer les données avec les filtres automatiques.
Vous pouvez dessiner votre modèle à la main ou dans un éditeur graphique de votre choix :
- Powerpoint
- Yedgraph : https://www.yworks.com/products/yed
- Mermaid.js : https://mermaid-js.github.io/mermaid-live-editor/
- viz.js : http://viz-js.com/
- Xmind : https://www.xmind.net/
- ….
Indice : Il faut penser des phrases (sujet)(“verbe”)(“complement”) à partir des données disponibles.
Par exemple, à partir des colonnes “commune” et “département” je peux déduire :
Injecter dans la base de graphe
Le langage cypher
La base de graphe se manipule avec le langage Cypher. La synthèse de ce langage est disponible ici : [2]
Préparer les données sources avant l'injection
- Préparer les fichiers en CSV
- Convertir les fichiers en UTF8 (utiliser un éditeur de texte du type Notepad++ ou SublimeText)
- Placer les fichiers à un endroit accessible par la base de graphe :
- un stockage en ligne permettant un accès via http
- dans le répertoire import de l'instance Neo4J
Lire des données à partir du Browser Neo4J
La commande pour lire un fichier de données (source en gras) est :
LOAD CSV WITH HEADERS FROM 'file:///###' AS row RETURN row