Hypersolid User Guide

Laurent Oliversen · Copyright 2026, Laurent Oliversen. All rights reserved. · Build 2026-09-09

Cette application web est un outil d'exploration de polytopes et d'analyse de jeux de données multidimensionnelles, le tout propulsé par une interface 3D intuitive.
Ce guide explique les concepts mathématiques et les fonctionnalités de l'application Hypersolid.

Vous pouvez télécharger cette documentation au format PDF sur :
https://hypersolid.app/docs/hypersolid-user-guide-fr-light.pdf

1. Prise en main

1.1. Organisation de l'interface

L'application s'organise en onglets, listés dans la barre supérieure.

À gauche, les onglets de travail :

À droite, les onglets de service : User Guide (ce document), Upgrade, Contact.

1.2. Le panneau flottant du Workspace

Dans l'onglet Workspace, tous les réglages sont regroupés dans un panneau flottant que l'on peut déplacer en le saisissant par son en-tête, et replier avec le bouton de réduction. Il se découpe en cinq sections, sélectionnables par les onglets en haut du panneau :

Chaque section conserve l'état plié ou déplié de ses dossiers lorsque l'on navigue entre elles.

Certains onglets d'analyse proposent en outre une bascule vers la vue scène, qui affiche la scène 3D en gardant le panneau du module à portée de main.

1.3. Modes utilisateur

Un sélecteur, en haut à droite, choisit le mode utilisateur. Le mode ne change rien aux calculs : il masque simplement les onglets et les formes hors de son périmètre, pour alléger l'interface.

Les onglets Workspace, Data, Stats, Advanced Stats et Export sont visibles dans tous les modes.

1.4. Forfaits et verrouillage

Chaque fonctionnalité est rattachée à un forfait : Guest, Free, Hyper, Pro. Chaque forfait contient strictement le précédent.

Une fonctionnalité qui n'est pas couverte par votre forfait n'est pas masquée : elle apparaît grisée, suffixée d'un cadenas 🔒, et le survol indique le forfait requis. Vous voyez donc toujours ce que l'application sait faire, même sans y avoir accès.

Le détail des forfaits — quotas de lignes et de colonnes compris — se trouve dans l'onglet Upgrade.

2. Noyau Géométrique

2.1. Solid Gen

L'application génère des formes géométriques définies par leurs sommets et leurs arêtes dans un espace à N dimensions. L'application prend en charge les formes suivantes. Notez que les sphères sont traitées comme des polytopes pour les besoins de la visualisation, bien qu'elles soient techniquement des variétés lisses.
Le pipeline de génération et de projection comporte les étapes suivantes :

L'ordre des transformations se fait bien dans cette ordre : 1) rotation, 2) cisaillement, 3) projection.

Les axes dimensionnelles sont notées ainsi :

2.1.1. Polygons (polygones, 2D)

Note : Circle et Ellipse sont des quadriques plates. Un cercle unique n'ayant ni parallèles ni méridiens à tracer, ils n'exposent que le tracé Mesh et le réglage Resolution.

2.1.2. Polyhedra (polyèdres, 3D)

Note : Sphere, Ellipsoid et Torus sont des quadriques et disposent à ce titre des réglages de tracé décrits en 2.1.6.

2.1.3. Polychora (polychores, 4D)

2.1.4. N-Polytopes (N > 4)

Pour tous les polytopes généralisés, un slider Dimension permet de choisir le nombre d'axes spatiaux.

2.1.5. Special

Cette catégorie réunit des structures qui ne relèvent d'aucune famille régulière.

Note : contrairement aux sphères que l'on peut tracer comme une fibration, ces trois dernières formes sont la fibration. Elles sont toujours construites à la dimension de leur algèbre (ℂ→4, ℍ→8, 𝕆→16).

2.1.6. Réglages des quadriques (sphères, ellipsoïdes, tores)

Les formes quadriques — sphères, ellipsoïdes, tores et fibrations — ne sont pas décrites par une liste de sommets mais par des familles de courbes. Elles partagent le groupe de réglages suivant.

Mode de tracé

Familles de cercles
Trois sliders comptent les cercles tracés. Leur nom change selon la forme sélectionnée, car ce qu'ils comptent n'est pas le même objet :

FormeSlider 1Slider 2Slider 3
Sphères, ellipsoïdes, glomesParallelsMeridiansHypermeridians
Torus (tore de révolution 3D)ParallelsMeridiansVillarceau
Toratope / N-Torus — CliffordRing 1Ring 2Extra Rings
Toratope — TigerRing 1Ring 2Tube Circles
Toratope — SpheritorusParallelsMeridiansHypermeridians
Toratope — TorisphereParallelsMeridiansTube Circles
Toratope — DitorusOuter RingInner RingTube Circles
Fibrations ℍ et 𝕆Fiber Density 1Fiber Density 2Fiber Density 3

Sur les fibrations quaternionique et octonionique, les trois sliders ne comptent pas des familles distinctes : chacun pilote un sous-ensemble arbitraire des directions de fibres, et le découpage change avec le Fiber Mode. Les libellés numérotés sont donc les seuls honnêtes.

Stratification

Mode hybride (dimension > 4)

Hyperméridiens et fibres

Tores

Étirements
Les formes étirables (ellipse, ellipsoïdes, boîtes, tores) disposent des réglages Scale X, Scale Y, Scale Z et Scale W, qui étirent la figure dans les dimensions souhaitées. Au-delà de la dimension 4 s'y ajoutent :

Note : seules les quadriques tracées en mode maillage (Mesh) sont éligibles à la tessellation.

2.1.7. Opérateurs de graphe

Quatre opérateurs transforment le graphe sommets/arêtes du solide sélectionné. Leur éligibilité dépend de la forme exacte : la troncature exige une figure de sommet régulière, l'alternation un graphe biparti, le composé un solide non centralement symétrique.

À cela s'ajoutent deux réglages généraux du groupe Generator :

2.1.8. Tessellation (Pavage)

2.1.8.1. Tiling Types (types de pavages)

Enable Tessellation active le pavage. Pour remplir l'espace en répliquant les polytopes, vous pouvez ensuite choisir entre différents modes d'agencement via Tiling Type :

2.1.8.2. Prism (prisme)

Les prismes sont définis par un polytope de base répliqué dans une seule direction. Les sommets correspondants de chaque réplique sont reliés entre eux.

2.1.8.3. Honeycomb (nid d'abeille)

Seules certaines formes sont éligibles au pavage de type « nid d'abeilles », comme les cubes ou les hexagones. Contrairement aux autres assemblages (prismes et essaims), ces pavages sont compacts et remplissent parfaitement l'espace sans vide.

Les pavages 2D (du plan XY) disposent de deux réglages supplémentaires pour entrer dans la troisième dimension (ensembles disjoints de tranches dans la direction Z) :

2.1.8.4. Swarm (essaim)

Les essaims sont une généralisation des prismes et nids d'abeille. Ils sont les plus flexibles et personnalisables. Ce sont des tranches de répliques disjointes dans toutes les directions, pouvant être connectées par des nexus (arêtes qui relient les sommets correspondants de chaque réplique).
En termes de réglages, l'essaim réunit ceux des prismes et des nids d'abeille :

À cela s'ajoutent les réglages propres aux prismes : Slice Shear X, Slice Shear Y, Slice Shear Z, Flat Base, Tile Rotation et Rotation Factor.

2.1.8.5. Réseaux personnalisés

Certains polytopes ont des réseaux prédéfinis, proposés dans Tiling Type lorsque la forme correspondante est sélectionnée. Par exemple :

Pour les cubes :

Pour l'Elysion Vault :

2.2. Solid Style

L'application utilise un système de coloration automatique pour aider à identifier les dimensions.
Les arêtes sont colorées en fonction de leur alignement sur les axes principaux dans l'espace d'origine en haute dimension.
Par défaut :

À noter que ces couleurs sont déterminées de manière systématique pour les structures ayant des arêtes parallèles aux axes du repère. Cela s'applique donc aux hypercubes. Pour les figures ayant des arêtes inclinées dans plusieurs dimensions, la gestion des couleurs est plus subtile.

Les réglages stylistiques sont rangés dans quatre dossiers : Vertices (sommets), Edges (arêtes), Faces et Background (arrière-plan). Les effets de profondeur ne forment pas un dossier à part : chaque famille d'objets porte les siens, à la suite de ses réglages de style.

2.2.1. Vertices (sommets)

2.2.1.1. Style de base
2.2.1.2. Profondeur des sommets

L'activation des effets de profondeur se fait en cochant la case Vertex Depth. On peut alors contrôler l'opacité ("Alpha") des éléments géométriques en fonction de leur profondeur dans l'espace 4D/3D. Ces commandes se trouvent juste sous la case Vertex Depth. Selon l'objet dessiné, la profondeur est évaluée différemment :

Note : Le système crée automatiquement un dégradé linéaire d'opacité entre les éléments extérieurs et intérieurs. Si Outer Alpha < Inner Alpha, le dégradé est désactivé et la valeur Outer Alpha est appliquée uniformément à toutes les profondeurs.

2.2.2. Edges (arêtes)

Les arêtes disposent des réglages suivants :

La coche Edge Colors permet de définir une couleur par type d'arête. Si elle est décochée, alors toutes les arêtes portent la couleur définie par Edge Default Color.
Si elle est cochée, alors le réglage suivant permet de gérer les couleurs pour des arêtes dont l'orientation n'est pas parallèle aux axes.

2.2.2.1. Color Tie Break (gestion des égalités)

Vous pouvez définir les 5 couleurs associés à chaque axe du repère :

Ces couleurs sont, selon certains objets, utilisés différemment (typiquement pour les sphères).

La liste Color Tie Break (gestion des égalités) :
Lorsqu'une arête n'est pas parfaitement alignée avec un seul axe (ex: arêtes diagonales d'un triangle), la couleur est déterminée par une règle de départage (choix entre 3 règles) :

Cette règle s'applique à la plupart des polytopes. Les rendus sont difficiles à anticiper, mais ils permettent généralement de distribuer les couleurs de manière différente.

Pour les sphères, d'autres techniques sont proposées :
Pour les sphères/ellipsoïdes en mode Mesh/Stratified Edges :

Pour les sphères/ellipsoïdes en mode Hopf Fibration (complex, quaternionic, octonionic) :

2.2.2.2. Contours des sphères

Comme les sphères sont générées différemment, elles utilisent une logique de colorisation spécifique qui dépend de son mode de tracé (Tracing Mode) :
Cas des Mesh Edges/Circles (maillages) : Les couleurs du maillage sont définie par les couleurs de la section Edges :

Cas de Hopf Fibration (fibration de Hopf)
Cette visualisation avancée utilise l'application de Hopf pour projeter la 3-Sphère (S³) comme un faisceau de cercles (dits "fibres") au-dessus d'une 2-Sphère (S²).

Stratified Mode (équateur & pôles)
Dans ce mode, la 3-Sphère est décomposée en une série de coques 3D parallèles (collection de sphères classiques), de la même manière qu'un globe est tranché par des lignes de latitude. Les couleurs dépendent de la position de la coque dans l'imbrication.

Note : Artéfact de stratification en mode perspective
Pourquoi les coques intérieures semblent-elles parfois plus grandes que les coques extérieures ?

Lors de l'utilisation de la Projection Perspective, les objets plus proches de la caméra 4D apparaissent significativement plus grands. Si la 4D Distance est petite (caméra proche de l'objet) :

Les couleurs restent correctes (car elles sont basées sur le rang) :

Si vous voyez une coque Z/W apparaître plus grande qu'une coque X/Y, il s'agit d'une pure illusion d'optique causée par la perspective 4D. Solution : modifier la 4D Distance ou passer en Projection Orthographique pour restaurer la hiérarchie visuelle intuitive.

2.2.2.3. Profondeur des arêtes

L'activation des effets de profondeur se fait en cochant la case Edge Depth.

Les arêtes disposent des mêmes réglages que les sommets pour gérer la profondeur : Depth Quantiles, Outer Alpha, Inner Alpha, Invert Alpha, Alpha Cutoff . Voir les réglages de profondeur des sommets pour plus de détails.

2.2.2.4. Profondeur dans des sphères

On opère une distinction entre les arêtes (droites) et les coques (courbes).

Objets avec arêtes (polytopes et sphères utilisant le mode de tracé de type Mesh Edges)
L'opacité est calculée par distance sommet/arête par rapport à l'origine dans l'espace 3D projeté (pas l'espace 4D d'origine). Les distances sont triées et réparties dans N compartiments de quantiles. Chaque compartiment reçoit une valeur alpha interpolée linéairement entre Outer Alpha et Inner Alpha :

Note sur la profondeur de la 2/3-Sphère :
Même si tous les points d'une 3-sphère sont équidistants de l'origine 4D par définition, la projection 4D→3D brise cette isotropie. En projection perspective, les cercles proches du pôle W (grand W) sont compressés vers l'origine 3D, tandis que les cercles équatoriaux (petit W) sont projetés plus loin. En projection orthographique, un parallèle proche du pôle nord se situe près de l'origine 3D, tandis qu'un parallèle équatorial se trouve à une distance unitaire (la plus grande. Le dégradé de profondeur sur un Glome en mode Mesh Edges est donc réel et physiquement significatif : il reflète la structure de profondeur 4D telle qu'elle est vue à travers la projection.

Sphères avec coques (Stratified Edges et Stratified Circles)
La profondeur est évaluée structurellement en fonction de l'index mathématique de la coque (de 1 pour l'équateur géométrique à N pour le pôle). Comme les coques sont naturellement des topologies imbriquées, le dégradé alpha est continu et exact. Note : le réglage Depth Quantiles ne s'applique pas aux coques.

Fibration de Hopf : profondeur basée sur les coques (sans arêtes)
La Fibration de Hopf est rendue comme un ensemble de *cercles de fibres*imbriqués topologiquement (boucles fermées), et non comme des arêtes discrètes entre sommets. Chaque cercle appartient à une coque mathématique (une couche de tore), numérotée du tore le plus externe à la fibre centrale la plus interne. L'alpha de profondeur est calculé directement à partir de l'index de la coque ; aucun tri de distance Z en 3D n'est nécessaire. La formule est la même que celle utilisée pour les objets Stratifiés/Coques. Comme les fibres de Hopf sont générées dans un ordre topologique strict (extérieur → intérieur), la structure mathématique encode intrinsèquement la profondeur. Cela rend la gestion de la profondeur exacte, continue et parfaitement cohérente avec les commandes Inner/Outer Alpha, sans aucune heuristique géométrique.

Limitations - Mesh Circles uniquement
Dans le mode de tracé Mesh Circles pour la 2/3-Sphère, toute la géométrie des cercles est fusionnée en un seul maillage combiné sans shader de profondeur par cercle. L'alpha de profondeur ne s'applique pas aux cercles, seulement aux sommets. En revanche, le mode Mesh Edges pour les Sphères prend bien en charge la profondeur car un shader GPU évalue profondeur = distance par sommet au moment du rendu.

2.2.3. Faces

La bascule Show Faces superpose des polygones remplis sur le fil de fer du polytope. Le moteur prend en charge deux modes fondamentaux pour la détection et la génération des faces :

2.2.3.1. Méthodes de détection des faces

L'application utilise des générateurs algorithmiques spécialisés pour identifier les véritables faces géométriques du polytope. La méthode utilisée dépend de la famille du polytope. Les techniques utilisées sont :

2.2.3.2. Rendu des faces
2.2.3.3. Echantillonnage des faces

Pour les objets complexes ou de haute dimension où la détection topologique est trop coûteuse, le moteur peut échantillonner de manière stochastique des paires de sommets pour former des triangles (ou des quadrilatères/pentagones).
Dans le paragraphe suivant : une face est dite petite (respectivement grande) lorsque les sommets qui la délimitent sont, en moyenne, à une distance inférieure (respectivement supérieure) à une valeur donnée. La notion de distance se réfère à la distance euclidienne entre un sommet et l'origine du polytope (le barycentre dans la plupart des cas).

L'échantillonnage s'active avec Face Sampling. Les réglages associés sont les suivants :

Note pour les Polytopes Réguliers : Pour les polytopes parfaitement réguliers (Cubes, Tesseracts) où tous les sommets sont équidistants du barycentre, la population "Small" est mathématiquement vide car le seuil de distance normalisé est constant. Dans ce cas, seul l'échantillonnage des faces "Large" produira des résultats.

2.2.3.4. Profondeur des faces

L'activation des effets de profondeur se fait en cochant la case Face Depth.
Z-Sorting & Alpha (Algorithme du Peintre)
Pour appliquer la profondeur aux faces, le moteur réorganise dynamiquement les faces de l'arrière vers l'avant à chaque image. Cela permet l'utilisation de dégradés de transparence basés sur la profondeur :

Exemple d'usage : régler Back Face Alpha = 1.0 et Front Face Alpha = 0.2 vous permet de voir l'intérieur solide de la structure à travers une couche externe translucide.

Couverture par type de polytope :
✅ Solides Platoniciens (3D) : triangles, carrés, pentagones
✅ Archimédiens / Catalan (cuboctaèdre, dodécaèdre rhombique) : types de polygones mixtes
✅ Polychores 4D : via détection de cycles par graphe
✅ N-Simplexe / N-Cube / N-Orthoplexe : jusqu'à la résolution disponible
❌ Sphère / Glome : Non applicable, rendu sous forme de cercles
✅ Gosset K.21 dim=5 (D5) : triangles + carrés, nombre gérable
❌ Gosset K.21 dim≥6 (E6, E7, E8) : les polytopes de Gosset E6, E7, E8 possèdent un nombre de 2-faces (faces planes) qui croît de manière exponentielle. Pour E6, le calcul des faces est rapide, mais projeter 2160 faces qui se chevauchent depuis la 6D crée un maillage opaque illisible sans gain visuel. Pour E7 et E8, le calcul prendrait plusieurs secondes et le résultat est tout aussi illisible. Seul le D5 (dim=5, ~40 sommets) expose ses faces, comme un compromis pratique entre l'information visuelle et la performance.

2.2.4. Arrière-plan

Cette section permet d'afficher des éléments de fond ou en surimpression.

2.2.4.1. Couleur et dégradé du fond

Le dégradé se règle ensuite avec :

2.2.4.2. Halo

Le halo est une source lumineuse diffuse peinte dans le fond, indépendante du dégradé. Il sert à détacher le solide de l'arrière-plan sans éclairer la scène 3D.

2.2.4.3. Grille d'alignement

L'option Alignment Grid affiche une grille tangente aux sommets périphériques, afin d'ajuster les alignements lors des rotations par exemple.

2.2.4.4. Axes et plans de repère

Localisation : onglet Workspace, section Exp, dossier Scene Markers. Ces marqueurs décrivent la scène et non le solide, mais ils accompagnent aussi bien la géométrie que les données projetées.

Axes
Les axes permettent de se repérer dans les dimensions spatiales.

Plans

2.3. Projection

La projection s'effectue dans cet ordre :

Dans l'interface, les réglages sont répartis par typologie d'opérations mathématiques : rotation, cisaillement, projection (avec distance focale). Mais conceptuellement, les dimensions sont traitées en cascade.

2.3.1. Views

Cette section permet d'applique des visualisations mathématiques spécifiques. Ces valeurs de rotation révèlent des projections caractéristiques pour chaque polytope.
Les vues ci-dessous permettent de capturer les éléments suivants :

2.3.1.1. Mode de projection unifiée

Les trois boutons ci-dessous permettent d'affecter tous les modes de projection (ND-4D, 4D-3D et Caméra) d'un seul coup :

2.3.1.2. Projection Front et Petrie

Ces deux projections sont respectivement la plus simple et la plus complexe à mettre en œuvre. Elles disposent d'un bouton pour un accès immédiat.

2.3.1.3. Plans canoniques

Naviguer entre les différents plans canoniques en cliquant sur les boutons ◀ Prev (précédent) et ▶ Next (suivant). Ils incluent :

Note : à l'exception de la vue Schlegel, toutes les vues des plans canoniques ne sont possibles qu'en mode de projection orthographique.

2.3.1.4. Permutations de la base

Permuter les axes de la base trouvent son sens dans les analyses factorielles, pour visualiser la distribution des points selon 3 axes simultanés, parmi les N axes disponibles (X, Y, Z, W, V5, V6...). Voir la section des analyses factorielles pour plus de détails.

Chaque vue pré-enregistrée se traduit par une rotation de 90° selon un, deux ou trois axes. Cela permet, visuellement, de remplacer un axe de base (X, Y, Z) par un autre axe disponible.
Les 20 combinaisons les plus usuelles (jusqu'en dimension 6) sont proposées. La première correspond à la vue de l'espace XYZ. La dernière traduit la vue de l'espace W.V5.V6.

Naviguer entre les différents espaces factoriels en cliquant sur les boutons ◀ Prev (précédent) et ▶ Next (suivant).

Pour mieux appréhender les rotations, il conviendra d'afficher les axes relatifs (Show Relative Axes) qui traduisent l'orientation du polytope et des données en surimpression.

2.3.1.5. Collapse (effondrement)

Étape optionnelle d'écrasement 2D/1D.
Dédiée à l'onglet de visualisation Factor, cette étape mathématique finale permet de compresser la scène 3D entièrement projetée (Polytope, données Zodiac/Astro/MBTI/Social, et données personnalisées) vers un plan 2D ou un axe 1D. Ceci est accompli en forçant à zéro une ou deux dimensions de la sortie 3D immédiatement avant le rendu.

Projections sur Plan (2D) :

Projections sur Axe (1D) :

Note : Comme cette projection est appliquée comme un filtre final sur la scène 3D plutôt que dans l'espace mathématique d'origine, les dimensions supérieures comme W (profondeur 4D) ou V (5D+) ne peuvent pas être isolées ici - elles sont déjà repliées dans X, Y et Z par les étapes précédentes. De plus, pour maintenir la lisibilité lorsque les points sont mathématiquement écrasés sur des coordonnées spatiales identiques, les étiquettes textuelles (Zodiaque/Astro/MBTI/Social et personnalisées) appliquent un décalage spatial intelligent (dérivé de leur coordonnée perdue d'origine) pour éviter les chevauchements visuels.

2.3.1.6. Vues personnalisées

Certains solides disposent de vues personnalisées (que l'on peut modifier). Naviguer entre les différentes vues en cliquant sur les boutons ◀ Prev (précédent) et ▶ Next (suivant).

2.3.2. ND vers 4D

Cette étape réduit les dimensions N > 4 vers la 4D (X, Y, Z, W).
Le pipeline cascade de toutes les dimensions supérieures s'effectuent ainsi :

Note : par sa logique additive non destructive, le cisaillement est beaucoup plus efficace que la rotation pour déplier les dimensions supérieures dans l'espace 3D visible (projeté sur les trois premiers axes X, Y, Z). Car les rotations dans des hautes dimensions peuvent s'effectuer dans des plans de rotation orthogonaux au plan de projection de chaque dimension vers les suivantes, compressant toute tentative de déploiement visuel.

La coche Lock Solid Rotation permet de verrouiller le polytope et de le rendre insensible aux rotations (attention, le solide reste sensible aux cisaillements et à la distance focale des projections). Utile pour analyser des données, en faisant apparaître, par rotation, les axes relatifs des dimensions invisibles (W, V5, V6...) sans toucher au solide en tant que tel. Si un cube ou une sphère est affichée pour servir de repère, ces derniers restent immobiles durant les rotations, tandis que les données projetées (nuage de points), elles, continuent de pivoter avec les axes relatifs.

2.3.2.1. Rotation ND
2.3.2.2. Cisaillement ND
2.3.2.3. Projection ND

Le mode se choisit avec le dropdown ND -> 4D.

Perspective
Les dimensions supérieures (D > 4) sont mises à l'échelle par un facteur de perspective. Les objets ayant des coordonnées plus élevées dans ces dimensions sont projetés plus près du centre 4D, tout en appliquant un cisaillement cumulatif.

En manipulant conjointement Base ND Distance et ND Distance Factor, il est ainsi possible de personnaliser la perspective global, ainsi que l'espacement ou le rapprochement entre les dimensions (ressenti compression/dilatation).

Orthographic
Réduction parallèle vers la 4D. La distance perspective et l'accumulation de profondeur sont strictement ignorées (W reste inchangé). La structure est révélée purement par le cisaillement linéaire. Les notions de distance (focale) sont ignorées. Il ne reste que les paramètres de cisaillement pour déplier la structure.

Oblique
La projection oblique n'est pas proposée dans les dimensions supérieures à 4, car elle devient très lourde à configurer. Une projection orthographique accompagnée d'une rotation ou d'un cisaillement (circulaire ici) est équivalent à une projection oblique.

2.3.3. 4D vers 3D

L'étape de projection vise à projette les points 4D (x, y, z, w) dans l'espace 3D (x', y', z'). La coordonnée W représente la "profondeur 4D".
Le traitement commence par un cisaillement linéaire 4D optionnel (dossier Shear, curseurs XW, YW, ZW) vers les véritables coordonnées 3D, basé sur la profondeur W. Cela permet d'incliner l'objet 4D dans notre dimension physique avant le passage final de la caméra perspective ou orthographique.

2.3.3.1. Rotation 4D

La rotation du polytope peut s'effectuer dans l'ensemble des plans 3D et 4D. Le dossier Rotation expose un curseur par plan : XY, XZ, YZ, XW, YW, ZW. Les trois derniers n'apparaissent qu'à partir de la dimension 4.

Note : les noms de ces curseurs suivent le layout d'axes actif (voir 4.3.3). Sous un layout renommant les axes, XY devient le couple correspondant.

2.3.3.2. Cisaillement 4D

Le cisaillement du polytope peut s'effectuer dans l'ensemble des plans 4D. Le dossier Shear expose un curseur par plan : XW, YW, ZW. Chacun déplace la position 3D en fonction de la profondeur 4D (W).

2.3.3.3. Projection 4D

Perspective
Perspective 4D standard. Les objets avec un w plus élevé (plus éloignés en 4D) apparaissent plus petits et convergent vers le centre.
Le mode se choisit avec le dropdown 4D -> 3D. La 4D Distance règle la distance focale de la caméra 4D. Des valeurs plus petites créent une distorsion de perspective plus forte.

Orthographic
Projection parallèle à W. La coordonnée W est complètement ignorée pour la position des points dans la 3D. Utile pour préserver les tailles géométriques réelles.
Important : en l'absence de rotation ou de cisaillement, il devient donc impossible de visualiser les composantes 4D. Il convient d'utiliser les curseurs de rotation et de cisaillement pour déployer la structure.

Oblique
Déplie la structure 4D en déplaçant les points en fonction de leur coordonnée W le long d'un angle 2D spécifique sur l'écran. Géométriquement, la projection oblique équivaut à une projection orthographique combinée à un cisaillement, mais elle est proposée comme un mode simplifié distinct, typiquement pour reproduire les perspectives Cavalier/Cabinet (cavalière).

Note : le cisaillement manuel XW/YW/ZW est ignoré en mode Oblique 4D puisque l'angle et l'échelle obliques définissent entièrement le cisaillement 4D. Donc les cisaillements sont redondants.

2.3.4. Camera

La phase finale rend le fil de fer 3D sur votre écran 2D. Notez que la projection 2D/1D dans l'onglet Factor est effectuée avant le rendu de la caméra. C'est pourquoi nous pouvons toujours orbiter autour du polytope et des points écrasés.

2.3.4.1. Camera Type

Le type se choisit avec le dropdown Type du dossier Camera.

2.3.4.2. Viewport

Fenêtre de vue (Viewport)

Note : il n'y a pas de cisaillement pour la caméra. Cela apporterait des inclinaisons indésirables aux polytopes.

2.3.4.3. Camera Monitoring

Ces moniteurs se trouvent en bas du dossier Camera et affichent les coordonnées courantes de la caméra :

Données purement informatives (non modifiables). Pour modifier la caméra, il suffit d'utiliser la souris ou le trackpad.

Le dossier expose enfin une bascule de diagnostic :

2.4. Motion

Uniquement pour le forfait Hyper.
L'application fournit des outils pour visualiser la géométrie en haute dimension par le mouvement.

2.4.1. Dynamic Effects

Ce dossier regroupe les effets « vivants » de la scène : lueur pulsée sur le point sélectionné, lueur de valence, et déplacements animés de la caméra.

2.4.2. Orbit (déplacements automatiques de caméra)

Certaines actions déplacent la caméra toutes seules : un double-clic sur un point, l'arrivée sur un plan canonique, un changement de permutation de base. Ce dossier décide de ce qui déclenche ces déplacements et de la manière dont ils se déroulent.

Déclencheurs

Trajectoire des déplacements
Par défaut un déplacement automatique va droit au but. Les réglages ci-dessous lui ajoutent du mouvement, pour rendre la transition lisible plutôt qu'abrupte.

Scope (portée)
Le sous-dossier Scope désigne les gestes auxquels ces trajets supplémentaires s'appliquent :

Note : ces trajets supplémentaires ne sont visibles qu'en mode Dynamic.

2.4.3. Auto-Rotate (auto-rotation)

Fait pivoter automatiquement le polytope dans jusqu'à trois plans simultanés.

2.4.4. Auto-Shear (auto-cisaillement)

Fait osciller harmoniquement les facteurs de cisaillement pour faire « pulser » les dimensions supérieures dans la vue.

2.4.5. Interpolation

Effectue une transition fluide entre les préréglages d'état globaux.

Chaîne d'interpolation
Un clic sur Interpolation déplace d'abord la vue actuelle vers Start State, puis vers Mid State (si activé) et les éventuelles étapes de Mid Point States, avant de se stabiliser sur End State.

Rythme de la transition

2.4.6. Oscillation

Oscillate : si l'oscillation est activée, l'interpolation ne s'arrête pas à End State. Elle inverse la séquence et boucle indéfiniment entre Start, Mid et End. Les pauses de début, de milieu et de fin s'appliquent à chaque passage.

2.5. Quelques exemples de projection

2.5.1. Tesseract

Tesseract
Le tesseract dispose d'un grand nombre de projections célèbres.
La vue des deux hexagones centrés (disponible dans les Custom Views du panneau Projection) :

La vue en perspective cavalière double (disponible dans les Custom Views du panneau Projection) :

3. Ingestion de données

3.1. Dataset

Localisation : onglet Workspace, section Dataset.

3.1.1. Synthetic Data

Ces jeux de données sont aléatoires ou open source. Ils permettent de tester l'application sans avoir à importer de données.

3.1.2. Reference Data

Ces jeux de données de référence sont purement cosmétiques et servent de repère visuel. Chacun est un menu déroulant dont la première entrée, None, désactive l'affichage.

Instant fiction : dans la catégorie Zodiac se trouve un jeu de données dit « Malgovert » qui correspond à la classification psychique des treize clusters du Zodiaque dans la série Malgovert de Laurent Oliversen. C'est un peu comme une classification en groupe sanguin, mais avec trois variables. Les points sont définis selon 3 coordonnées qui représentent la sensibilité des profils zodiacaux aux 3 sérums élyséens. La position spatiale de ces clusters est véritablement utilisée dans la fiction.

3.1.3. Custom Points

Cette section permet de saisir manuellement jusqu'à 10 coordonnées spatiales (X, Y, Z, W, V5, ..., V10). Le point résultant est affiché en surimpression sur le polytope. Vous pouvez lui associer une étiquette, le dupliquer ou le supprimer.

3.2. Points & Labels

Localisation : onglet Workspace, section Dataset, dossiers Points et Labels.

Ces réglages gouvernent l'apparence de tous les points de données projetés dans la scène, quelle que soit leur provenance, ainsi que celle de leurs étiquettes.

3.2.1. Familles de points

L'application distingue six familles de points, qui s'affichent et se colorent indépendamment :

FamilleOrigine
Importedles lignes du jeu de données importé
Referenceles jeux de données de référence (3.1.2)
Factor Individualsles individus projetés dans le plan factoriel
Factor Numeric Featuresles variables numériques projetées
Factor Categorical Featuresles modalités qualitatives projetées
Clusterles centroïdes issus du clustering

3.2.2. Affichage

Le dossier Points / Display expose une case par famille :
Show Imported Pts, Show Reference Pts, Show Fact Indiv Pts, Show Fact Num Pts, Show Fact Categ Pts, Show Cluster Pts.

Le dossier Labels / Display fait de même pour les étiquettes :
Show Imported Lbls, Show Reference Lbls, Show Fact Indiv Lbls, Show Fact Num Lbls, Show Fact Categ Lbls, Show Cluster Lbls.

Afficher les points sans les étiquettes est le réglage courant sur les gros volumes ; l'inverse — étiquettes seules — sert à lire un plan factoriel dense.

3.2.3. Style des points

3.2.4. Encodage par variable

Trois canaux visuels peuvent être pilotés par une colonne du jeu de données, plutôt que d'être fixes. C'est le moyen de faire porter à la scène une information supplémentaire sans ajouter d'axe.

3.2.5. Dégradé de couleur

Le dossier Points / Gradient définit la rampe de couleurs utilisée par Variable Point Color. Un moniteur rappelle en tête de dossier la variable en cours d'encodage.

3.2.6. Couleurs fixes

Quand aucune variable ne pilote la couleur, chaque famille porte sa couleur propre.

3.2.7. Style des étiquettes

3.3. Data Import

Localisation : onglet Data.

3.3.1. Import CSV

Vous pouvez charger des données en CSV avec le bouton Upload CSV. En fonction du plan souscrit, les données sont limitées à un certain nombre de lignes et de colonnes (indiquées dans l'interface). Le bouton Clear Data vide le jeu importé.

Les structures attendues sont :

Par défaut, si des colonnes x, y, z, w, v5, v6, v7... sont présentes dans le fichier, elles sont automatiquement assignées aux coordonnées spatiales correspondantes.
Si aucun libellé ne correspond à la convention précédente, alors les variables numériques sont assignées dans l'ordre de présence dans le fichier : la première colonne numérique est assignée à X, la seconde à Y, la troisième à Z, etc.
En cas de mélange (exemple : a, x, y, z, b, c), alors les libellés reconnus (x, y, z) sont assignés aux 3 coordonnées spatiales, et les libellés inconnus (a, b, c) sont assignés aux coordonnées spatiales suivantes, dans cet ordre : a -> w, b -> v5, c -> v6.

3.3.2. Role Mapping

Cet encart permet de définir les colonnes qui joueront un rôle spécifique pour l'analytique. Certains rôles sont interchangeables dans certains cas de figure.
Les colonnes pouvant jouer des rôles sont :

Une fois les rôles assignés, cliquez sur Apply Roles.

3.3.3. Axes Mapping

Vous pouvez assigner les variables numériques sur les axes spatiaux de votre choix.
Il vous suffit de renseigner une combinaison Variable / Axe et de cliquer sur Add.

L'option Merge T|C columns on same axes n'est disponible que pour les données Hy-Performance. Elle permet de mutualiser les variables suffixées par _T et celles par _C. Par exemple, plutôt que d'avoir deux axes pour afficher NB_T et NB_C, l'option n'affiche qu'un seul axe NB qui fusionne les deux populations (T et C). Pour distinguer les deux populations, il faut soit afficher les labels, soit se rendre dans Data Style, et cocher la case Colorize Treatment (section Class Style).

3.3.4. Sampling (échantillonnage)

Sur un gros fichier, il est souvent préférable de travailler d'abord sur un échantillon : la scène reste fluide et les modèles s'ajustent en quelques secondes.

3.3.5. Test Split

Si la colonne flag_test n'est pas définie, il est possible de la créer et de la remplir automatiquement de manière aléatoire en définissant un pourcentage de test (Test Size) et en cliquant sur Random Split. Le moniteur Counts affiche la répartition obtenue entre apprentissage et test. Clear supprime le découpage.

3.3.6. Prévisualisation

Une prévisualisation des données est disponible dans l'onglet.
Dans l'en-tête se trouvent deux sections.

Comptage

Colonnes réservées
Cette liste de tags renvoie aux rôles réservés. Elle permet d'identifier les colonnes qui jouent un rôle particulier : uid, label, color, target, segment, treatment, flag_test

Typage des colonnes
Pour chaque colonne, un tag indique le type de la colonne : numérique, catégorielle ou booléenne.

3.4. Preprocessing (pré-traitement)

Localisation : onglet Data.

Cette section permet d'effectuer un certain nombre de transformations parfois nécessaires pour exécuter des algorithmes (projections factorielles, clustering, Sup ML).

La coche Keep Original Column permet de conserver la colonne d'origine en plus de la colonne transformée : la source est gardée et la transformation est écrite dans une nouvelle colonne <col>_t, que Undo supprime. Décochée, la transformation écrase la colonne sur place. Note : conserver l'original n'est pas toujours souhaitable, car cela induit une redondance d'informations.

Un champ Select Column permet de choisir la colonne à transformer ; chaque entrée y est suffixée de son type et de son état d'activation. Chaque transformation s'effectue et s'annule au moyen de boutons Apply et Undo.

Enfin, une coche Re-Apply in Inference permet de conserver le paramétrage de ces étapes pour les réutiliser plus tard sur de nouvelles données ; étape nécessaire pour l'utilisation de modèles entraînés (Factor, Clustering, Sup ML) sur un jeu transformé.

Le bouton Clear Preprocessing annule d'un coup l'ensemble des transformations appliquées au jeu de données.

Ordre des étapes
Les transformations s'appliquent dans un ordre fixe, qui est celui des sections ci-dessous : typage → désactivation → imputation → winsorization → discrétisation → regroupement de modalités → encodage disjonctif. Les paramètres sont toujours estimés sur les seules lignes d'apprentissage (flag_test différent de 1), puis appliqués à toutes les lignes.

3.4.1. Typage des colonnes

Trois boutons sont disponibles pour changer le format des colonnes.

Les données string et bool sont très proches dans leur implication au sein des différentes fonctionnalités. La seule distinction vient du fait qu'une variable bool sera bien utilisée dans les modèles de régression linéaire et logistique (Sup ML), alors que les données string seront ignorées.

Utilisation ou non de la colonne :

3.4.2. Imputation

Cette section permet de remplir les données vides.

Chacune des deux dispose de ses propres boutons Apply et Undo.

3.4.3. Winsorization

Cette section permet de caper les valeurs numériques extrêmes.

3.4.4. Discretization

Cette section permet de discrétiser les données numériques en intervalles. Elles deviennent donc catégorielles (qualitatives). La discrétisation s'effectue en quantiles.

3.4.5. Category Binning (regroupement de modalités)

Cette section permet de regrouper les catégories qui ont des effectifs faibles et induisent de la rareté, donc de l'instabilité. C'est l'équivalent des valeurs extrêmes basses pour des données qualitatives.

3.4.6. One-Hot Encoding (encodage disjonctif complet)

Cette section permet de transformer une variable catégorielle en indicatrices. Chaque catégorie de la variable devient une colonne binaire (bool, 0/1).

4. Exploration de données

4.1. Stats

Localisation : onglet Stats.

4.1.1. Statistiques descriptives

Contient des analyses descriptives des données importées dans l'application :

4.1.2. Statistiques inférentielles

Vous pouvez effectuer des tests statistiques rapides : comparaisons de moyennes ou proportions, ainsi que des estimations de taille d'échantillon.

4.1.2.1. Paramètres

Réglages spécifiques à l'analyse de puissance :

Réglages communs:

Le bouton Run Testing lance le test ; Clear réinitialise les résultats.

4.1.2.2. Statistiques associées

Les résultats se présentent avec deux zones :

4.2. Data Exp (Exploration)

Localisation : onglet Workspace, panneau Data Exp.

4.2.1. Selection Mode (orbite et sélection)

Ce dossier décide de ce que fait la souris (ou le trackpad) dans la scène, et sert de point de départ à la constitution de groupes manuels.

Trois moniteurs en lecture seule rendent compte de l'état courant :

L'enregistrement d'une sélection en groupe se fait dans le bloc Manual Groups, juste en dessous du dossier.

4.2.2. Data Scaling (mise à l'échelle)

La mise à l'échelle se lit comme un pipeline en deux étages successifs : d'abord les colonnes, puis les lignes. Chaque étage est un menu déroulant, car ses options sont des réponses concurrentes à une même question — on n'en applique qu'une.

Étage 1 — Column Scaling (par variable)

Étage 2 — Row Scaling (par point)

After Projection
Ce réglage n'apparaît que si un Row Scaling est actif. Il définit à quel moment la mise à l'échelle des lignes s'opère :

Il vaut mieux mettre à l'échelle avant la projection pour conserver un maximum d'information durant les projections. Néanmoins, la normalisation a posteriori permet d'obtenir un étalement sur la sphère unité de tous les points projetés, ce qui simplifie grandement l'exploration visuelle — même si beaucoup d'informations ont été perdues au passage.

Data Zoom
Ce curseur espace ou contracte tous les points projetés. Il agit comme un multiplicateur de toutes les coordonnées de l'espace 3D final, après mise à l'échelle. Ce n'est donc pas une véritable normalisation, mais un zoom visuel : les coordonnées ND sous-jacentes ne changent pas, et il ne fait par conséquent ni entrer ni sortir de points d'une orbitale (voir 4.2.4).

4.2.3. Filtering (filtrage)

La section de filtrage permet d'afficher les points projetés vérifiant certaines conditions.

Chaque volet dispose en outre de sa propre condition interne, qui combine ses critères entre eux : Label Condition, Group Condition et Axis Condition, chacune réglable sur AND ou OR.

Les critères ne sont pas appliqués en continu : il faut cliquer sur Apply pour les valider, et Clear pour tout remettre à zéro. Le moniteur Status rend compte du filtre courant et du nombre de points retenus.

4.2.3.1. Libellés de recherche

Le premier volet concerne les libellés attachés aux points :

4.2.3.2. Group Display (affichage par groupe)

Ce volet filtre sur les rôles de colonnes et les groupes calculés. Chaque menu liste les modalités disponibles ; laisser un menu sur None revient à ne pas filtrer dessus.

4.2.3.3. Filtrage des valeurs d'axes

Ce volet concerne les propriétés des points projetés. Il nécessite la sélection d'un à trois axes : Axis 1, Axis 2, Axis 3. Si vous ne souhaitez pas tous les renseigner, vous pouvez les laisser sur None.

Vous pouvez ensuite choisir quelles valeurs filtrer : par signe, par valeur absolue, ou par métrique factorielle.

4.2.3.4. Filtrage combiné

Combinaison des deux règles précédentes
Vous pouvez définir des conditions sur les chaînes de caractères et sur les axes. Auquel cas, la condition AND/OR s'applique à l'ensemble.
Par exemple, avec une condition AND, un point doit respecter les chaînes de caractères saisie et respecter les valeurs sur l'ensemble des axes définis. Avec une condition OR, un point doit respecter les chaînes de caractères saisie ou respecter les valeurs sur l'un des axes définis.

Influence des plans de projections automatiques (canoniques et factoriels)
Lorsque les filtrages sont actifs, si vous cliquez sur un plan de projection automatique, à savoir, les plans canoniques (ex : vertex-first, edge-first, etc. Cf. Views) ou les plans factoriels (Best Contrib Plan et Best Cos² Plan), alors les axes résultants sont envoyés dans les axes de filtrage.
Cela permet de balayer différents espaces canoniques et factoriels tout en mettant à jour les filtres basés sur les nouveaux axes affichés à l'écran.

4.2.4. Orbital

L'orbitale est un système de filtrage multidimensionnelle basé sur la distance. Son nom n'est pas un terme mathématique officiel, mais une référence à la physique-chimie atomistique qui définit l'orbitale comme une zone de l'espace à l'intérieure de laquelle on peut observer un électron avec un certain niveau de probabilité. Ici, il s'agit de mettre en évidence la proportion de la population qui se trouve dans la zone délimitée par l'orbitale.

Dans l'application, par défaut, une orbitale va masquer les points proches de l'origine et ne laisser que les points en périphérie (les outliers). On peut inverser la logique de masquage (Outlier Mode) et n'affiche que les points centraux (inliers).

Remarque importante :
l'orbitale agit dans l'espace ND, avant la projection et le Data Scaling. Ainsi, le data scaling ne permet pas de sortir ou d'entrer dans l'orbitale. Un outlier n'a aucune raison de devenir inlier parce qu'on zoome sur l'échelle des données.
Il existe néanmoins un moyen d'ajuster la taille du solide au jeu de données : utiliser Solid Scale. Ce paramètre intervient au moment de la création du solide et donc de l'orbitale qui en découle.

4.2.4.1. Types d'orbitale

L'orbitale s'affiche avec Show Orbital, et son type se choisit dans le menu Shape. Trois orbitales sont proposées :

Le moniteur Inside | Outside affiche en permanence le nombre de points situés à l'intérieur et à l'extérieur de l'orbitale — c'est la lecture directe de la proportion masquée.

En termes d'usage, l'ellipsoïde gaussien est simple à manipuler (un seul curseur Confidence (%)), mais n'est approprié que pour les nuages de points à tendance gaullienne (distribution normale dans chacune des dimensions).
La "box" est une variante robuste de l'ellipsoïde précédent. Mais elle a tendance à devenir très stricte (beaucoup de points masqués) pour les hautes valeurs de quantiles. L'ellipsoïde quantile est une variante beaucoup plus douce de la boîte ; elle ne masque que les points distants dans plusieurs directions simultanées. Mais sa variante circonscrite (outer orbital), elle, est très restrictive (encore plus que la boîte). Il faut abaisser les seuils pour éviter de masquer tout le nuage.

D'un point de vue proportion de masquage, on a approximativement les valeurs suivantes :

Du plus tolérant au plus strict : ellipsoïde inscrit < n-rectangle < ellipsoïde circonscrit.

4.2.4.2. Comparaison entre orbitale et filtrage

Quelle différence entre l'orbitale et le filtrage basé sur les coordonnées absolues ?
Les deux objets servent à filtrer la visualisation, mais possèdent chacun leurs nuances.
Nombre de dimensions filtrées
Le filtrage basé sur Absolute Coords ne s'applique que sur (au plus) trois axes définis dans les axes de filtrage. L'orbitale, quant à elle, s'applique sur toutes les dimensions possibles en simultané.
Condition booléenne
Le filtrage par coordonnées peut utiliser la condition AND ou OR, tandis que l'orbitale n'utilise qu'un principe AND par construction.
Définition des seuils de filtrage
Le filtrage par coordonnées nécessite d'expliciter formellement la valeur seuil de la coordonnée qui sera vérifiée sur les axes de filtrage. L'orbitale fonctionne plutôt par une logique de quantile (proportion de points qui possèdent une coordonnée inférieure ou égale au seuil) ou probabiliste (intervalle de confiance gaussien basé sur la distance de Mahalanobis).

4.2.5. Decision Boundary (frontière de décision)

Cette option permet d'afficher la frontière de décision de la régression logistique binaire ou l'hyperplan prédictif de la régression linéaire.

Note : la frontière de décision n'est affichée que si la variable-cible est binaire ; l'hyperplan de prédiction n'est affiché que si le nombre de prédicteurs (variables explicatives) est supérieur ou égal à 2. Le cas dégénéré de la droite (régression simple) est ignoré.

4.2.6. Hy-Perf Cube

Permet de modifier rapidement les axes affichés sur la scène pour analyser les jeux de données de Hy-Performance.
Cube Preset : ces presets permettent de mapper rapidement certains axes spatiaux aux variables du jeu de données transformés (budget, uplift, ROI, etc.).

Pour personnaliser davantage, il faut mapper les axes manuellement dans Dataset / Axes Mapping.

4.2.7. Valence

La logique de Valence (les liens de connectivité) repose sur une analyse de proximité dans l'espace : chaque point est relié à ses plus proches voisins, et la couleur du trait dit à quel rang de voisinage il correspond.

Classification des points
Le système regroupe tous les points affichés en trois grandes familles pour filtrer les types de liens :

Logique globale : les points Data sont les éléments mobiles et analysés, tandis que les points Reference, Factor et le Polytope servent de repères fixes (des ancres). On regarde donc comment la donnée utilisateur s'oriente par rapport à la structure interne de l'application

Valence Info
Si Valence Info est coché, alors des informations supplémentaires sont ajoutées dans le panneau latéral quand on clique sur un point : on peut consulter les différents voisins d'un points ainsi que leur distance respective, cela pour les différentes hypothèses de projection (ND, 3D, avec ou sans normalisation).
La coche Use Inverse Dist permet d'afficher, non pas les distances euclidiennes, mais les coefficients de pondérations par l'inverse des distances. Exemple : avec 3 voisins, la valeur affichée pour un voisin donné est l'inverse de la distance divisée par la somme (sur les 3 voisins) des inverses des distances.

Rang du voisinage
Le paramètre K Neighbors définit le nombre de rangs (de distance les plus proches) à afficher par point ; ce n'est pas le nombre exact de liaisons affichées (voir "Égalités" ci-dessous).

4.2.7.1. Pipeline Stage

La notion de voisinage dépend de l'étape de projection. Rappel, la projection intègre toutes ces étapes :

On peut effectuer une étude de voisinage dans la scène ND initiale avant la projection spatiale. Celle-ci peut inclure ou non une étape de normalisation. De même, le voisinage peut être effectué après la projection, dans la scène 3D résultante et visible à l'écran. Cette scène peut elle aussi inclure une normalisation.

En synthèse, les voisinages peuvent être considérés :
Le menu Pipeline Stage désigne l'étage retenu :

4.2.7.2. Directions des valences

Une connexion s''établit entre des points d'ancrage et des points de voisinage. Pour chaque point d'ancrage, on cherche les points de voisinages. Les voisins les plus proches du point d'ancrage sont dits de "rang 1". Les voisins suivants sont de rang 2, etc.

Pour chaque point P, tous les autres points sont triés par distance euclidienne. Les points à la même distance (avec une tolérance de 10^-5) sont regroupés en un seul rang. Avec K = 2, les deux rangs de distance les plus proches sont conservés - cela peut générer plus de 2 lignes si plusieurs points partagent la même distance.

Il existe deux algorithmes différents selon la nature de la connexion :
Liens Mutuels (Internes à un groupe) : les ancres et les voisins appartiennent au même groupe de points
Exemples : Reference->Reference, Data->Data, Polytope->Polytope

classement des voisins de I (rank_{IJ}) et inversement (rank_{JI}).

inférieur au paramètre K Neighbors.

Liens Unidirectionnels : ancres et voisins sont des groupes différents
Exemples pour : Data->Reference, Data->Factor, Zodiaque->Polytope.

plus proches voisins dans le groupe "Voisin" (ex: les sommets du Polytope).

Dans le bloc de règles de valence, situé sous le dossier, vous pouvez ajouter toutes les liaisons désirées entre les groupes jouant le rôle d'ancrage et les groupes jouant le rôle de voisinage.

Gestion des Égalités (Ties)
Lorsqu'un rang contient plus d'un voisin (une égalité), les lignes correspondantes peuvent être tracées en pointillés (cliquer sur Ties Dash) au lieu d'être pleines. Cela signale visuellement les voisinages ambigus. Une ligne est en pointillés si l'une ou l'autre de ses extrémités présente une égalité à son niveau de rang respectif.

reçoivent le même rang.

en pointillés (si l'option Dashed Ties est activée dans le panel Style).

Code Couleur et Distances

après toutes les transformations (ND-4D-3D). Cela signifie que le zoom et les
rotations 4D impactent directement les liens de valence.

couleur personnalisable

4.2.8. Style des valences et des orbitales

Style des valences (dossier Valence Metrics / Style)

Style des orbitales (dossier Orbital / Style)

4.2.9. Trajectory (trajectoires)

Relie chronologiquement les points d'un même groupe, pour lire un déplacement plutôt qu'un nuage figé.

4.2.10. Dimension Fading (estompage dimensionnel)

Sur un nuage projeté depuis un espace de grande dimension, beaucoup de points se retrouvent superposés à l'écran alors qu'ils sont éloignés dans les dimensions non représentées. L'estompage rend cette masse cachée visible en jouant sur l'opacité.

4.2.11. Marqueurs de scène

Le dossier Scene Markers (axes et plans de repère) est décrit en 2.2.4.4, avec les autres éléments de décor de la scène.

4.2.12. Surcouches des modules d'analyse

Trois dossiers n'apparaissent qu'une fois le module correspondant exécuté. Ils projettent son résultat dans la scène 3D.

Association Rule Edge — voir 5.2.4

MMM Surface & Map — voir 5.10

Optimization 3D View — voir 5.7

4.3. Data Style

Localisation : onglet Workspace, section Exp, dossiers Class Style et Layouts.

Le style des points et des étiquettes eux-mêmes (taille, forme, familles affichées, encodage par variable) est décrit en 3.2. Cette section traite de ce qui vient par-dessus : la coloration par classe, la forme par classe, et la façon dont les axes et les nombres sont nommés et affichés.

4.3.1. Class Style (coloration par classe)

Cinq rôles peuvent servir à colorer les points. Ils ne s'excluent pas : ils sont empilés par ordre de priorité, et le premier qui s'applique à un point l'emporte.

PrioritéRéglageSource de la couleur
1Colorize User Groupsles groupes tracés à la main au lasso
2Colorize Clusterles modalités de cluster
3Colorize Targetles modalités de la colonne cible
4Colorize Treatmentles modalités de la colonne de traitement
5Colorize Segmentles modalités de la colonne de segmentation

Un point non couvert par un niveau retombe sur le suivant : un point sans groupe manuel prend la couleur de son cluster, et ainsi de suite.

Deux réglages réutilisent des palettes déjà définies ailleurs, plutôt que d'en créer une sixième :

Forme par classe

4.3.2. Couleurs de Valence

Pour la valence, chaque ligne relie deux points, A et B, et sa couleur traduit le rang du voisinage. Le point A peut classer B comme son voisin le plus proche (Rang 1), tandis que B peut classer A différemment (ex : Rang 2). Pour refléter cette relation bidirectionnelle, la couleur affichée est déterminée par la partie entière de la moyenne des deux rangs : Rang affiché = ⌊ (rankA→B + rankB→A) / 2 ⌋
Ceci garantit que la couleur reflète un accord mutuel : deux points qui se considèrent tous deux comme proches obtiennent une couleur forte (Rang 1), tandis que les relations asymétriques sont naturellement dégradées.

4.3.3. Layouts

Un layout renomme les axes spatiaux et adapte leurs couleurs, pour que la scène parle le vocabulaire du référentiel étudié plutôt que celui des mathématiques. Le calcul n'est en rien modifié : seul l'habillage change.

5. Analyse

5.1. Lancer un module

Aucun module d'analyse ne se recalcule tout seul : les réglages se posent d'abord, puis un bouton lance le calcul. Chaque module suit la même convention.

Les boutons portent le nom du module : Run Correlation, Run Profiling, Run Association et Run Large Association, Run Factor, Run Clustering, Run Estimator et Run Large Estimator, Run Forecast et Run Large Forecast, Run Performance, Run MMM et Run Large MMM, Map Personality, Run Testing, Run pour l'optimisation.

Un module lancé sur des données qui ont changé depuis reste affiché tel quel : c'est à vous de le relancer. Le rappel vaut particulièrement après un pré-traitement (partie 3.4) ou un ré-échantillonnage.

5.2. Advanced Stats

Ce volet complète l'onglet Stats. Ici, les analyses portent sur plusieurs paires de colonnes en parallèle. L'onglet se subdivise en trois parties : les corrélations (bivariées), le profiling (sur ou sous-représentation de certains attributs au sein de clusters) et les règles d'association.

5.2.1. Seuils pour les tests statistiques

Il est possible de définir les tests statistiques souhaitées ainsi que les valeurs seuil permettant de coloriser les métriques. Ces seuils s'appliquent aux graphiques de corrélation et de profiling.

5.2.2. Corrélations

5.2.2.1. Paramètres

Données à analyser (optionnel et cumulatif) :

5.2.2.2. Statistiques associées

Tableau des métriques de corrélation avec la cible
Tests statistiques de dépendance bivariée (Pearson et équivalents, khi-deux, ANOVA, etc.) avec la p-value et les tailles d'effet associée (R2, oméga carré, V de Cramer, etc.)

Tableau des métriques de corrélation entre variables explicatives
Idem que précédemment, mais entre les variables explicatives

Matrices des tailles d'effet (corrélation intra-variables)
Matrices de corrélation (taille d'effet) entre variables.

Barres des tailles d'effet vs Target
Intensité de la corrélation entre les variables explicatives et la variable-cible. Traduit le pouvoir discriminant.

Matrices de corrélation de la scène
Matrices de corrélation entre données spatiales ou les données projetées par une méthode factorielle.

Pour ces matrices de corrélation, tous métriques sont proposées :

Note : les auto-comparaisons diagonales de la matrice sont laissées vides.

5.2.3. Profiling (profilage)

Cette section est une description approfondie des valeurs caractéristiques que l'on retrouve dans des groupes d'intérêt (segment, target, cluster, score quantile), avec ou sans treatment.

5.2.3.1. Paramètres

Données à analyser (optionnel et cumulatif) :

Les paramètres spécifiques au profilage sont :

5.2.3.2. Statistiques associées

Tableau de profilage
Cinq onglets centralisent toutes les métriques :

Barres de profilage
Une version graphique des résultats précédents.
Les graphiques sont regroupées par métrique de profilage. Une ligne par variable avec possibilité de trier par groupe.

5.2.4. Association

Les règles d'association déterminent des ensembles de catégories (variables qualitatives) dites "antécédentes" qui apparaissent en même temps qu'une catégorie d'intérêt dite "conséquente". Les règles ne fonctionnent qu'entre variables catégorielles.

5.2.4.1. Paramètres

Les paramètres spécifiques aux règles d'association sont :

Le bouton Run Association lance l'extraction dans le navigateur, Run Large Association la délègue au moteur Python (voir 5.1), et Clear réinitialise les résultats.

5.2.4.2. Statistiques associées

Le tableau de résultat liste les règles ainsi que les métriques associées (support, confiance, lift, etc.).
Le symbole ⋀ signifie intersection (ET logique).

5.3. Hy-Personality

Voici la méthode "rigoureuse" pour déterminer les signes de Zodiaque qui vous ressemblent le plus !

Un questionnaire de personnalité intégré à l'application peut être saisi en ligne. Ils combinent des thématiques présentes dans plusieurs frameworks utilisés en entreprise (Social Style, DISC, MBTI) et aussi les descriptions lexicales du zodiaque astrologique.

Attention, ceci n'est pas un protocole d'analyse psychologique/psychométrique. Il s'agit d'un exemple illustratif montrant l'intérêt des projections factorielles appliquées à des questionnaires de toute sorte. L'objectif ici est montrer visuellement les ressemblances lexicales entre différents frameworks célèbres.

Remplir le questionnaire et projeter les résultats permet ainsi de visualiser les concepts ou attributs similaires entre vos réponses et les profils présents dans les différents frameworks. Cette approche repose sur une PCA ou une MCA des réponses des différents profils aux 18 questions du formulaire. C'est un jeu de données fourni par l'application. Il est libre, mais ne peut pas être modifié dans cette interface. En revanche, les réponses que vous ajoutez, elles, sont personnalisables.

Procédure : répondre aux 18 questions en bougeant le slider à gauche ou à droite (échelle à 5 degrés) en fonction de la réponse qui vous correspond le plus. Si vous hésitez, vous pouvez laisser le slider au centre (réponse équilibrée ou neutre).
Une fois terminé, saisissez un libellé et cliquez sur Submit pour projeter les résultats dans l'hyperespace factoriel !

5.3.1. Sources de données

Le questionnaire peut provenir de différentes sources :

La section Form Import propose Upload CSV pour charger un fichier de réponses, et Clear All Respondents pour effacer d'un coup tous les répondants importés.

5.3.2. Techniques de projection

Les réponses au questionnaire (toutes sources confondues) sont projetées en utilisant une PCA ou une MCA déjà entraînée avec les données de référence de l'application.

Le bouton Map Personality lance la projection ; Clear réinitialise les résultats.

5.3.3. Filtrage des points de référence

La section Reference Filtering permet de choisir quels points de référence sont affichés. Chaque catégorie est subdivisée entre Features, qui correspondent aux critères de description, et Profiles, qui en sont la résultante — une combinaison de plusieurs critères.

Les cases disponibles sont :

Exemple : les points Extraversion et Introversion, qui définissent l'orientation de l'énergie, sont des MBTI Features, tandis qu'INTP est un MBTI Profile défini par la présence de la modalité « I » (pour Introvert).
De même, le Feu est une Zodiac Feature, tandis qu'Aries (Bélier) est un Zodiac Profile.

5.3.4. Statistiques associées

Radar des réponses par profiles
Chaque sommet du radar représente une question (valeur entières de -2 à 2). Deux profils sont superposés dans ce radar pour visualiser la ressemblance globale de leurs réponses au questionnaire.

Réponses de tous les répondants par question
Le graphique en barres donne la réponse de tous les répondants à la question sélectionnée.

Matrices de corrélation de la scène
Matrices de corrélation entre réponses brutes au questionnaire de personnalité (valeurs entières de -2 à 2), et aussi entre réponses projetées (coordonnées factorielles).

5.3.5. Exemple d'utilisation : zodiaque inversé

Aller dans Modeling / Personality
Dans le panneau Personality Map, laisser les réglages par défaut :

Remplir le questionnaire, donner un nom et cliquer sur Soumettre. On bascule alors sur Workspace.

Aller dans la section Dataset du panneau Workspace, dossier Points / Display, et cocher uniquement :

Aller dans la section Exp du panneau Workspace.

Juste en dessous, dans la section Filtering, cocher Filter puis dans la liste Personality, choisir Zodiac Profiles.

Désormais, en cliquant sur le point correspondant à votre réponse, un panneau latéral apparaît avec des statistiques. Vous pouvez consulter le graphiques ND Valence et ND-Norm Valence qui indique votre "proportion" de chaque signe du Zodiaque (vus comme vos plus proches voisins en termes de réponse).

Pour mieux se rendre compte des distances, tout en bas du panneau, après les valences, cliquer sur le bouton Best Cos² Plan. Cela affichera l'espace dans lequel votre réponse est spatialement la mieux représentée. Les plus proches voisins ont alors tendance à se rapprocher visuellement, ce qui est plus cohérent.

5.4. Factor

Cet onglet permet d'appliquer des méthodes de réduction dimensionnelle aux points importés en CSV, ou au jeu de données déjà intégrés (données synthétiques, réponses au questionnaire de personnalité).
Il suffit de choisir le nombre d'axes factoriels retenus et la technique utilisée.

5.4.1. Axes factoriels

5.4.2. Techniques factorielles

Portée du calcul et surcouches

Le bouton Run Factor lance la projection.

Une fois les données projetées, celles-ci sont visualisables dans l'onglet Workspace, et s'affichent par-dessus le polytope qui sert d'ancrage visuel. Il est recommandé d'utiliser un simple cube (voire un tesseract pour l'analyse 4D) ou une sphère pour faciliter l'exploration.

5.4.3. Statistiques associées

Dans l'onglet Factor, vous retrouverez un certain nombre de statistiques relatives à la méthode factorielle :

À noter que les axes factoriels ont une correspondance sur les axes spatiaux :

Et ainsi de suite avec les axes Z, W, V5, V6, etc.
Ainsi, lorsqu'on analyse les contributions ou cosinus des carrés, la valeur de la liste déroulante correspond à l'axe factoriel. C'est pour cela qu'ils sont affichés sous la forme "X (PCA_1), Y (PCA_2)" ou "X (MCA_1), Y (MCA_2)".
Mais si le jeu de données contient des coordonnées spatiales (nommées, elles aussi, X, Y, Z), alors on se retrouve à des situations où les axes X, Y, Z (du jeu de données avant projection) contribuent à l'axe X (qui est en fait le premier axe factoriel, après projection). Il faut donc garder en tête ce qui relève du jeu d'entrée et du résultat de la projection factorielle dans l'espace d'arrivée (et qui peut partager les mêmes lettres).

5.5. Clustering

Le clustering permet de regrouper les points par proximité spatiale.

5.5.1. Sources de données

La source de données à clusteriser comporte des nuances qui activent ou désactivent certaines options.
Les données numériques :

Les données factorielles :

Les données de personnalité (Hy-Personality) :

5.5.2. Méthodes

Méthodes de clustering

Options spécifiques aux sources Spatial Data et Personality Form

Options spécifiques aux sources Imported Data Data et Factor Data (Individuals ou Features)

Options communes

5.5.3. Pre-KMeans

Le premier volet consiste à appliquer une méthode de K-Moyennes sur le jeu initial.

5.5.4. HCA (CAH)

La deuxième étape est une classification ascendante hiérarchique (méthode de Ward) appliquée aux centroïdes du Pre-KMeans.

5.5.5. Final Cleaning (nettoyage final)

Selon la distribution spatiale des données, les méthodes HCA peuvent souffrir d'allocations contestables pour les points situés en périphérie des clusters.

Le bouton Run Clustering lance l'algorithme ; le bouton Clear réinitialise les résultats.

5.5.6. Ellipsoïdes de cluster

Une enveloppe de covariance peut être dessinée autour de chaque cluster, dans la scène 3D. C'est la lecture visuelle la plus directe de la qualité d'une segmentation : deux enveloppes qui se chevauchent signalent des clusters ambigus.

5.5.7. Statistiques associées

Métriques de qualité
Les métriques de qualités affichées sont : coefficient de silhouette, Davies-Bouldin Index (DBI), Calinski-Harabasz Index, Dunn Index

Graphiques
La section suivante affiche le dendrogramme de la CAH, et les courbes d'accélération de l'inertie inter-classes. Puis vient la distribution de la population par cluster, les boîtes à moustache par variable spatiale, et les matrices de contingence avec les variables d'intérêt (Segment, Target, Treatment).

5.6. Sup ML (machine learning supervisé)

Sup ML permet d'entraîner des modèles de régression (linéaire) et de classification.

5.6.1. Paramètres

Le bouton Run Estimator lance l'algorithme ; le bouton Clear réinitialise les résultats.

5.6.2. Statistiques associées

Les résultats sont disponibles dans deux onglets, un par échantillon (Train, Test).

Régression linéaire
Les métriques de qualités affichées sont : R2, MAE, RMSE.
Un panneau affiche les coefficients de la régression.

Régression logistique
Les métriques de qualités affichées sont : Balanced Accuracy, Macro Precision, Macro F1, ROC AUC, Gini.
Un panneau affiche la matrice de confusion, puis les coefficients de la régression (et les odds ratios associés).
Enfin, deux courbes sont proposées : ROC et lift (gains cumulés).

Scores et scores quantiles
Les scores du modèle sont discrétisés en score quantiles. Ces quantile peuvent être utilisés comme variable de groupes dans le profilage.

5.7. Optimization

Ce module cherche, parmi les individus du jeu de données, ceux qui maximisent ou minimisent une variable cible, sous les contraintes définies par les filtres actifs. Le résultat peut être projeté dans la scène (voir 4.2.12).

5.7.1. Paramètres

Le bouton Run lance la résolution ; Clear réinitialise les résultats.

5.7.2. Statistiques associées

Les résultats listent les individus retenus, la valeur atteinte par la cible, et l'écart à l'optimum théorique. La vue 3D associée (Optimization 3D View, voir 4.2.12) permet d'afficher soit le plan de sélection, soit le polytope des solutions admissibles.

5.8. Forecast

Le modèle de prévision temporelle s'appuie sur un exponentiel de Holt-Winters.

5.8.1. Paramètres

Le bouton Run Forecast lance le calcul dans le navigateur. Run Large Forecast délègue le calcul au moteur Python distant : c'est la voie à prendre sur les gros volumes, où le calcul local devient trop lent.

5.8.2. Statistiques associées

Métriques
Les résultats sont composés de courbes de visualisation ainsi que de métriques de qualité (dans les échantillons d'apprentissage et de back-test) : MAE (écart absolu moyen), RMSE (écart quadratique moyen), MAPE (pourcentage d'erreur absolu moyen).

Graphiques
Les graphiques affichent les courbes réelles, calibrées ("fittées") et prédites.
On dispose également d'une décomposition des 3 piliers de la fonction construite : le niveau (la hauteur), la tendance (l'inclinaison), la saison (la périodicité).

5.9. Hy-Performance

Fonctionnalité bientôt disponible.
Objectif : étudier l'efficacité d'un traitement (essai clinique ou action marketing) sur une population, au moyen d'un A/B test intégrant des évaluations statistiques.

5.9.1. Sources de données

Données granulaires ou données agrégées

5.9.2. Paramètres

Type d'analyse : absolue ou incrémentale

Seuils d'analysabilité (fiabilité des mesures et instabilité liée au volume)

Calculs de montants incrémentaux

Gestion des ROI

5.9.3. Statistiques associées

PERIOD
Period of aggregation for the groups of actions and the financial KPIs: Q1, Q2, Q3, Q4, H1, H2, FY

AGG_TYPE
Is the aggregate evaluated on actions (before grouping, coded "BG") or on groups of actions (after grouping, coded "AG")

YEAR
Year of the action

HALF_YEAR
Semester of the action

QUARTER
Quarter of the action

MONTH
Month of the action

WEEK
Week of the action

DAY
Day of the action

STRATEGY
Strategy followed by the action

FLAG_OUT
Remove from analysis

LEVEL1
Typology of the action (1st level category)

LEVEL2
Typology of the action (2nd level category)

LEVEL3
Typology of the action (3rd level category)

LEVEL4
Typology of the action (4th level category)

SEGMENT
LEVEL1 - LEVEL2 - LEVEL3 - LEVEL4

ACTION_GROUP
(Month) - Strategy - Segment - ROI Flag - (ROI Trend)

Month and Trend are only IApearing for certain ROI flags and to_group flag

MARGIN
Margin Profit (in % of outstanding)

AMOUNT_FACTOR
Factor used to assess the profit from margin and amount: PROFIT = AMOUNT AMOUNT_FACTOR MARGIN
Useful when margins depend on two multiplied variables (eg. monthly subscription price and number of months subscribed)

UNIT_COST
Unit communication cost

BUDGET
Budget of the action (unit cost * nb targets)

ANALYZABLE_BUDGET
Part of the budget (in €) that is analyzable (ROI_FLAG is not "NA")

ANALYZABLE_BUDGET_RATIO
Part of the budget (in %) that is analyzable (ROI_FLAG is not "NA")

POSITIVE_ROI_BUDGET
Part of the budget (in €) that is profitable (ROI_FLAG is "ROI+")

POSITIVE_ROI_BUDGET_RATIO
Part of the budget (in %) that is profitable (ROI_FLAG is "ROI+")

POS_ROI_ANA_BUDGET_RATIO
Part of the analyzable budget (in %) that is profitable (ROI_FLAG is "ROI+")

NB_T
Nb of Targets

NB_C
Nb of Controls

CG_SIZE
Control Group Size (%)

NB_CONV_T
Nb of Converted Targets

NB_CONV_C
Nb of Converted Controls

CONV_RATE_T
Conversion Rate Target = Conv Rate Target

CONV_RATE_C
Conversion Rate Control = Conv Rate Control

UPLIFT_NB
Uplift in volume (delta rates in percentage points)

UPLIFT_NB_RATIO
Uplift in Volume Ratio (%)

AMOUNT_T
Amount (Total Converted Amount) Target

AMOUNT_C
Amount (Total Converted Amount) Control

SQUARED_AMOUNT_T
Squared Amount (Total Squared Converted Amount) Target

SQUARED_AMOUNT_C
Squared Amount (Total Squared Converted Amount) Control

WEIGHTED_SQUARED_AMOUNT_C
Scaled Squared Amount Control

PROFIT_A
Profit All Customers (Targets + Controls)

PROFIT_T
Profit Target

PROFIT_C
Profit Control

AVG_AMOUNT_A
Average Amount per Customer

AVG_AMOUNT_T
Average Amount per Target

AVG_AMOUNT_C
Average Amount per Control

AVG_AMOUNT_CONV_A
Average Amount per Converted Customer

AVG_AMOUNT_CONV_T
Average Amount per Converted Target

AVG_AMOUNT_CONV_C
Average Amount per Converted Control

VAR_AMOUNT_T
Variance of the Amount Target

VAR_AMOUNT_C
Variance of the Amount Control

VAR_AMOUNT_CONV_T
Variance of the Converted Amount Target

VAR_AMOUNT_CONV_C
Variance of the Converted Amount Control

UPLIFT_AMOUNT_RATIO
Uplift in Amount Ratio (%)

UPLIFT_TOTAL_RATIO
Total Uplift Ratio (%)

CI_VALID_T
Is the Confidence Interval of RR valid?

CI_VALID_C

CI_SE_NB_T
Standard Error of the Resp Rate Confidence Interval

CI_SE_NB_C

CI_LOWER_NB_T
Lower bound of the Resp Rate Confidence Interval

CI_LOWER_NB_C

CI_UPPER_NB_T
Upper bound of the Resp Rate Confidence Interval

CI_UPPER_NB_C

CI_SE_AMOUNT_(CONV)_T
Standard Error of the Average Amount Confidence Interval *[1]

CI_SE_AMOUNT_(CONV)_C

CI_LOWER_AMOUNT_(CONV)_T
Lower bound of the Average Amount Confidence Interval *[1]

CI_LOWER_AMOUNT_(CONV)_C

CI_UPPER_AMOUNT_(CONV)_T
Upper bound of the Average Amount Confidence Interval *[1]

CI_UPPER_AMOUNT_(CONV)_C

VOLUME_INCREASE_FACTOR
("VOL_INC", see *[2])
Strategy to increase volumes: it impacts NB, NB_CONV, CONV_RATE.

Note: this metric is not visible in the output. It's only an intermediate within the code.

Z_STAT
Z Statistic

Z_NORM_PROBA
Cumulative probability of the Z-Stat regarding the Normal distrib

Z_NORM_P_VALUE
P-Value of the Z-Stat regarding the Normal distrib

ODDS_RATIO
Odds Ratio of the CONVancing contingency table

Z_HYPERGEOM_PROBA
Cumulative probability of the Z-Stat regarding the Hypergeometric distrib

Z_HYPERGEOM_P_VALUE
P-Value of the Z-Stat regarding the Hypergeometric distrib

P_VALUE_NB
Retained P-value for volume significance

SS_NB
Is the uplift in volume significant?

T_STAT_(CONV)
T Statistic *[1]

T_NORM_PROBA_(CONV)
Cumulative probability of the T-Stat regarding the Normal distrib *[1]

T_NORM_P_VALUE_(CONV)
P-Value of the T-Stat regarding the Normal distrib *[1]

T_STUD_PROBA_(CONV)
Cumulative probability of the T-Stat regarding the Student distrib *[1]

T_STUD_P_VALUE_(CONV)
P-Value of the T-Stat regarding the Student distrib *[1]

P_VALUE_AMOUNT_(CONV)
Retained P-value for amount significance *[1]

SS_AMOUNT_(CONV)
Is the uplift in amount significant? *[1]

SS_DOUBLE_(CONV)
Means "Significant in both amount and nb" *[1]

SS_ZERO_(CONV)
Means "Not Significant in neither amount nor nb" *[1]

SS_DIV_(CONV)
Means "Significant in amount (or nb) but not in nb (or amount)" *[1]

RAW_ANALYZABILITY
Is the action / action-group roughly analyzable regarding the CG existence and the Nb of Conversions?

CI_LOWER_NB_C_WITH_CONV_RATE_T
Theoretical value of the Control's lower Conf Interval bound if we assume that CONV_RATE_C = CONV_RATE_T

TRUE_ZERO_CONTROL
Is the zero number of Converted Control a reality or an issue due to low volume?

NET_ANALYZABILITY
Is the action / action-group deCONVitely analyzable regarding the Conversions and the statistical significance stability?

NOTE FOR MULTI-EFFECT

IA_PC_AMOUNT
Credit: additional Amount per customer based on amounts
Insurance: additional probability per customer based on amounts

IA_PC_NB
Credit: additional Amount per customer based on volumes
Insurance: additional probability per customer based on volumes

IA_COHERENCE_FLAG
Credit: retained formula for additional Amount
Insurance: retained formula for additional probability

"2" means amount-based formula
"1" means volume-based formula
"0" means unsignificant (IA = 0)

The "New" method is also named "coherence rule": a action is coherent if, when increasing UPLIFT_NB, we do not decrease AVG_AMOUNT_CONV_T.

The "Old" method is also named "retake rule": if we are not significant in amount, then we might "retake" the IA from the significance in nb.

IA_PC
Credit: retained additional amount per customer
Insurance: retained additional probability per customer

IA
Credit: retained additional Amount
Insurance: retained additional probability

ROI_PC
ROI per customer

Note for multi-effect
> The global-effect-ROI-PC is calculated by computing the underlying effect-IA-PC (multiplied by their respective margin/lifetime) and by substracting the unit cost once! → it's not the simple sum of the underlying effect-ROI-PC!

ADD_PROFIT_PC
Additional Profit per customer

ROI
Total ROI

ADD_PROFIT
Total additional Profit

ROI_PU
ROI per unit invested

ROI_PU_ANA
ROI per unit invested and analyzable

ROI_MAX_PC
Theoretical maximum ROI per customer (if control never get Converted)

ROI_MAX
Theoretical maximum ROI (if control never get Converted)

ROI_FLAG
Typology of ROI/IA (situations of profitability)

TO_GROUP
Is the action groupable?
We want to group the actions that are not analyzable or not significant

ROI_AMOUNT_WITHOUT_SIGNIF
Theoretical ROI (based on amounts) without significance

ROI_NB_WITHOUT_SIGNIF
Theoretical ROI (based on volumes) without significance

ROI_TREND
Has the action (groupable) a positive or negative trend of ROI?

5.9.4. Guide méthodologique

Hy-Perf est conçu pour refuser de conclure quand les données ne permettent pas de conclure. Cette section explique les garde-fous statistiques, pour lire correctement les résultats - et leurs silences.

5.9.4.1. Analysabilité : quand l'outil refuse de conclure

Chaque action doit passer des contrôles découplés avant qu'un uplift ou un ROI ne soit retenu :

Un NA n'est pas un bug : c'est l'outil qui vous dit que l'échantillon ne peut pas encore répondre à la question. Les actions NA sont re-testées sous une augmentation simulée de volume (Vol Increase Method / Vol Increase Factor) : certaines sont « récupérables » - à relancer plus tard avec plus de volume - plutôt que des impasses. Les budgets des actions non analysables sont exclus des KPI analysables au lieu d'être comptés silencieusement.

5.9.4.2. Multiplicité et le défaut alpha = 0.1

Chaque action x effet x segment est testée à Alpha = 0.1 par défaut, sans correction entre tests. Ce défaut est délibéré : la philosophie du produit est une décision par action, pas de la découverte de masse. Mais il est permissif pour des décisions budgétaires : testez 100 actions sans effet réel et environ 10 sortiront quand même « significatives » par hasard. Le dashboard affiche ce nombre attendu de faux positifs à côté des agrégats.
Quand vous criblez un large catalogue d'actions et que l'image agrégée prime, passez Multiplicity sur BH-FDR (panneau Statistical Inference) : chaque flag de significativité est re-gaté sur le cutoff de Benjamini-Hochberg, contrôlant la part attendue de fausses découvertes à alpha, et se propage jusqu'aux IA et ROI.

5.9.4.3. Winner's curse sur les agrégats

Les KPI agrégés (budgets analysables, montants incrémentaux totaux, ROI de bucket) sont construits à partir des actions ayant passé le filtre de significativité. Cette sélection est optimiste par construction : parmi des mesures bruitées, celles qui passent sont plus souvent celles qui ont eu de la chance vers le haut. Le dashboard encadre donc l'agrégat : ROI total avec le filtre de significativité vs sans (colonnes ROI_AMOUNT_WITHOUT_SIGNIF / ROI_NB_WITHOUT_SIGNIF) - la vérité se situe généralement entre les deux.

5.9.4.4. SRM - déclarer le ratio cible/contrôle attendu

Si votre design assigne cible et contrôle selon un ratio connu (par ex. 90/10), déclarez-le via le contrôle Expected Ratio (T/C) (srm_expected_ratio ; 0 = désactivé). Le moteur exécute alors un test du chi² de sample-ratio-mismatch par action (colonnes SRM_CHI2 / SRM_P_VALUE / SRM_WARNING) : un split réel qui dévie significativement du ratio déclaré signale le plus souvent un groupe de contrôle contaminé, le tueur silencieux le plus fréquent des analyses A/B en CRM. Sans ratio déclaré, le contrôle reste désactivé et ne lève jamais de fausse alerte.

5.10. MMM

Le MMM (Marketing Mix Modeling) est un puissance outil qui permet d'évaluer la contribution de leviers d'investissement à une variable-cible temporelle.

5.10.1. Paramètres

Les canaux d'investissements
Cette section permet d'indiquer au modèle quelles sont les colonnes qui représentent les leviers marketing. Cette assignation est indispensable pour que le modèle fonctionne correctement.

Baseline
La baseline est la contribution "naturelle" à la variable-cible quand tous les autres investissements s'arrêtent.

Adstock

Ridge

ROI Prior

Back-Test

5.10.2. Statistiques associées

Métriques
Les résultats sont composés de courbes de visualisation ainsi que de métriques de qualité (dans les échantillons d'apprentissage et de back-test) : R2, MAE (écart absolu moyen), RMSE (écart quadratique moyen), MAPE (pourcentage d'erreur absolu moyen).

Graphiques
Le premier graphique représente les tranches de contributions.
Le second tableau expose les contributions de chaque canaux, ainsi que de quelques métriques associées (adstock, retard, investissement total, facteur d'inflation de variance, etc.).
Le troisième graphique affiche les courbes de réponse (courbes de saturation) qui représentent l'évolution de la contribution en fonction du budget. On note la présence d'un point particulier sur chaque courbe : le coude, c'est-à-dire le moment où la courbe commence rapidement à plafonner.

5.10.3. Guide méthodologique

Le MMM d'Hypersolid tourne entièrement dans votre navigateur : pas de cloud, pas de transfert de données, pas de logiciel MMM à installer - un Marketing-Mix Model complet sur données locales. Cette autonomie s'accompagne d'un devoir d'honnêteté : cette section dit ce dont le modèle a besoin, ce que ses chiffres signifient, et quand il ne faut PAS les croire.

5.10.3.1. Prérequis données
5.10.3.2. Lire les résultats

Pour les profils métier :

5.10.3.3. Trois limites structurelles
5.10.3.4. Quand ne PAS croire le modèle
5.10.3.5. Validation et reproductibilité

Le moteur est benchmarké contre le dataset simulé public de Meridian : les classements de canaux sont compatibles au sens des intervalles de confiance, et les niveaux de contribution rentrent dans la bande bayésienne dès que des priors de ROI faibles sont utilisés (l'écart sans prior est documenté, avec ses causes). Une analyse de sensibilité seedée vérifie que le classement des ROI est stable sous bruit rééchantillonné. Chaque résultat est estampillé d'un engineVersion et d'un configHash : mêmes données, même config, même version ⇒ même sortie, vérifiable.

5.11. Hyperion

6. Import / Export

Localisation : onglet Export. Les extractions analytiques sont également accessibles depuis chaque onglet d'analyse.

6.1. Solid

6.2. Config

Vous pouvez exporter puis réimporter les configurations du workspace, c'est-à-dire l'ensemble des réglages de ses panneaux.

Export

Vous pouvez aussi n'exporter qu'une sous-partie :

Import

6.3. Scene

6.4. Analytics

Localisation : onglet Export, ou bien en haut à droite de chaque onglet analytique (Stats, Factor, Clustering...).

On retrouve toutes les extractions possibles, rangées par module :

6.5. PDF Recap

6.6. Info Points

Lorsque vous cliquez sur un point dans la scène, un certain nombre de données s'affichent dans le panneau latéral droit. Tout en bas de ce panneau se trouve un bouton pour télécharger ces données.