Questions fréquentes

Quel est l'objectif de 3DH ?

3DH permet l'étude de jeu de données à n composantes via :

- la production de métriques adaptées aux données
- la mise en oeuvre de différents algorithmes de clustering (Analyse spectral, HDBSCAN, HAC) ou de recherche de communautés (pour les graphes)
- une représentation 3D interactive de ces données (exportable en vidéo),

Les données peuvent être :

- un ensemble de vecteurs à n dimensions : mesure, population, parc client, etc ...
- un graphe : réseau social, ...

Exemple de représentation et manipulation d'un clustering



Exemple de représentation et manipulation d'un graphe (ici les personnages des Misérables de V.Hugo)

sur les graphes, 3DH délivre

  • la meilleur représentation possible compte tenu des relations existantes entre les noeuds,
  • certaines caractéristiques des noeuds (calcul de centralité notamment)
  • une analyse des communautés, suivant plusieurs algorithmes

Quelles sont les commandes utilisables pour manipuler une représentation 3D

L'originalité de 3DH réside notamment dans sa capacité à manipuler la représentation de vos données en temps réel. Ces manipulations se font par la barre d'outil dans le mode "Preview" ou via le claviez par certains raccourcis, listés ci-dessous :

- 's' et SHIFT+'s' respectivement montre et cache tous les points
- 'm' et SHIFT+'m' opere un filtre sur les points pour les montrer / cacher
- 'c' et SHIFT+'c' opere un filtre sur les clusters pour les montrer / cacher
- 'a' et SHIFT+'a' engage une autorotation du graphique
- 'w' centre la caméra sur l'échantillon pointé par la souris
- 'v' et SHIFT+'v' démarre et stop un enregistrement video au format webm (lisible par vlc ou d'autres lecteurs)
- '+' et '-' écarte/réduit les mesure par changement d'échelle
- 'e' export les données visibles au format CSV dans le presse papier
- 'p' et SHIFT+'p' entoure les clusters visible (patatoides)
- 'x' et SHIFT+'x' propagation des points visibles / cachées
- 'o' entoure les clusters de référence
- 'r' supprime définitivement le bruit (permet d'accéler la navigation)
- 'k' connecte entre eux les points du même nom
- 'click' et 'SHIFT+click' montre / cache le cluster d'appartenance de la mesure
- 'double click' permet d'étudier un cluster en particulier
- 'ALT+click' grossis / réduit les points du même nom
- 'click droit' permet d'enregistrer la visualisation en format image

Dans plusieurs cas, l'usage simultanée de la touche majuscule (SHIFT) inverse l'action de la touche principale

Peut-on utiliser / partager la représentation 3D ?

A tout moment, il est possible :
- d'enregistrer une vidéo de l'affichage 3D et des manipulations effectuées (voir commandes disponibles)
- un click droit sur le graphique permet d'enregistrer une image statique de la représentation affichée
- lorsqu'on on est en affichage plein écran, il est possible d'envoyer le lien présent dans la barre du navigateur. Dans ce cas, le destinataire pourra également manipuler les données.

Comment "charger" un fichier ?

Les données à analyser peuvent être contenu dans plusieurs types de fichier. Pour les données en fichier plat, 3DH reconnait le CSV et Excel.
Pour les graphes, on utilisera le format GraphML (souvent noté par l'extension gml).
Les graphes peuvent également être construit à partir de la matrice d'adjacence (au format CSV ou Excel) ou par un seuil sur la distance euclidienne entre les mesures.

Les données sont récupérées soit directement à partir du client, soit par upload sur le serveur de calcul :
- dans un répertoire public : dans ce cas, tous les utilisateurs de 3DH y ont accès
- dans un répertoire privée, accessible uniquement par mot de passe

Peut on utiliser directement l'API ?

3DH est également directement utilisable sous forme d'API.
Dans ce cas, les paramétres sont directement passé dans l'URL suivant la syntaxe suivante :
Pour les graphes https://server.f80.fr:5500/graph/'nom_du_graph'>/fr?algo_comm='algorithme'&dir=public¬ext=True&nometrics=True&add_property=False&autorotate=True&limit=5000&pca=1&processors=2
Pour les ensembles de données https://server.f80.fr:5500/job/'fichier data'/NO/noparam/graph?filter=&dir=public¬ext=True&nometrics=True&add_property=False&autorotate=True&limit=5000&pca=1&processors=2
Pour utiliser l'API directement, il est recommendé de passer par l'interface cliente qui va générer l'url correspondant à la représentation.

Quel format de données sont acceptés pour l'importation ?

Pour les données en fichier plat, 3DH reconnait le CSV et Excel.

Généralement on utilise la première colonne comme index des points et les colonnes suivantes comme composantes. Les chaines de caractères sont converties par calcul de distance pour être graphiquement représentable. Pour les graphes, on utilisera le format GraphML (souvent noté par l'extension gml).

Les graphes peuvent également être construit à partir de la matrice d'adjacence (au format CSV ou Excel) ou par un seuil sur la distance euclidienne entre les points.

Peut on faire varier les paramétres des algorithme de clustering ?

Il est possible de tester plusieurs combinaisons de paramétrages des algorithmes de clustering en séparant les valeurs des paramètres par une "," (le séparateur de décimal restant le ".")

L'usage de plusieurs paramètres abouti à la représentation 3D de plusieurs modèles.
Ainsi si l'on donne 2 valeurs à 2 paramètres, on abouti à 4 représentations car le système explore toute les combinaisons.

Comment paramétrer la représentation 3D

Plusieurs paramètres impactent la présentation des données.

  • no text: permet de supprimer le texte qui accompagne la représentation graphique
  • no metric : permet de ne pas calculer les métriques notamment pour gagner du temps sur la représentation
  • add property : Ajoute des informations sur chaque point, visibles directement dans le graphique. Si ces informations sont numériques, elles peuvent être utilisées pour modifier le diamètre des sphéres dans la représentation graphique.
  • rotate: va déclencher une rotation du graphique dés son affichage

Quelles sont les principales métriques utilisées pour les graphes et pour le clustering ?

Pour le clustering

On va grossièrement distinguer 2 types de métriques :
  • Le premier type repose sur la silhouette du clustering. Il va combiner l'écartement des clusters et leur densité
  • Le second type va mesurer l'écart avec un cluster de référence (ce qui suppose d'en posséder un).
L'usage des métriques peut être utile pour répondre à la problématique de choix des paramétres des algorithmes.
Ce score est calculé suivant sur la base des métriques disponibles dans la librairie Python SCIKIT-LEARN

Pour les graphes

Les métriques sont nombreuses. Elles peuvent porter sur :
  • Le graphe dans son ensemble
  • Les noeuds (en particulier les métriques de centralité)
  • Les arêtes
Autour de la centralité des noeuds :

Comment les données sont elles stockées ?

Les données sont récupérées soit directement à partir d'un lien internet (dés lors que le fichier est partagé), soit par upload sur le serveur de calcul :
  • dans un répertoire public : dans ce cas, tous les utilisateurs de 3DH y ont accès
  • dans un répertoire privée, accessible uniquement par mot de passe
A tout moment les fichier peuvent être supprimés du serveur.

Comment fonctionne les parametres avancés ?

Certains paramètres permettent d'affiner le fonctionnement de 3DH :

  • Processors : indique le nombre de processeurs disponibles sur le serveur de calcul. L'usage du calcul parallèle peut être interessant pour certains algorithmes complexes
  • Limit : permet de limiter les traitements aux "n" premières données. Ce paramètre est utile quand les traitements portent sur des quantités importantes de données
  • Nb View : permet de visualiser les données sur plus de 3 dimensions en répartissant les composantes sur plusieurs représentations graphiques

Quels sont les algorithmes utilisés par 3DH ?

Pour le clustering, 3DH propose plusieurs algorithmes de la librairie "SCIKIT LEARN", notamment

  • HAC, qui opere les regroupements par classification hiérarchique. Le nombre de clusters est présuposé (voir les métriques pour sa recherche)
  • NEURAL GAS, utilise le principe des cartes auto-adaptatives
  • HDBSCAN, utilise la densité pour trouver les clusters. C'est une évolution de DBSCAN, capable de traiter des densités différentes sur un même jeu de données
  • MEANSHIFT, procéde par décomposition spectrale des données pour opérer les regroupements

L'usage de REDUCE permet de remplacer les données par le barycentre de chaque clusters. Les nouvelles données obtenues sont téléchargeables dans un fichier CSV