Le graphe complet de mes pensées, projeté en 3 dimensions et regroupé en amas denses.
Data · 3D · Recherche · 06/11
Brain Map 3D
Mes pensées en constellation. 191 nœuds, 421 liens, 10 clusters — projetés en 3D, explorables à la souris, avec une caméra qui vole vers ce que je cherche.
Comment ça est né
Igor est la mémoire, mais la mémoire, c'est une liste. Brain Map 3D, c'est la mémoire en volume. L'idée : si chaque pensée est un point dans un espace, alors mes idées forment une forme — et cette forme, on peut la voir, la tourner, la traverser. C'est un outil d'exploration autant qu'un visual : il répond à « qu'est-ce que je sais, et comment c'est organisé ? »
Le projet est la visualisation d'Igor : il consomme les mêmes embeddings que le second brain, mais les projette en 3D pour les rendre navigables. Là où Igor répond à une question, Brain Map répond à une intuition — on cherche un endroit, on arrive dans un quartier de pensées.
Le contexte
Chaque pensée capturée par Igor est un embedding de 3072 dimensions. Impossible à visualiser tel quel. Je les réduis par t-SNE / PCA vers trois dimensions, en préservant les voisinages — deux pensées proches dans l'espace 3072 le restent en 3D. Le résultat est un nuage que l'on peut regarder.
Puis je regroupe avec DBSCAN en clusters, sans nombre d'amas fixé à l'avance : DBSCAN découpe la densité et renvoie ce qui ressemble à un vrai amas, plus un bruit que l'on peut choisir d'ignorer. Résultat : 191 nœuds, 421 liens et 10 amas qui se dessinent comme une constellation, avec des zones denses et des espaces vides qui disent quelque chose sur la façon dont je pense.
C'est un outil d'exploration : une recherche sémantique par cosine KNN qui rapproche ce qui se ressemble par le sens, des filtres pour trancher le volume, une timeline pour le naviguer dans le temps, et un « fly-to » qui amène la caméra en douceur vers un nœud précis. Un panneau de détail affiche la pensée sélectionnée.
Le tout est rendu dans Three.js, avec un bloom qui fait respirer les amas et des OrbitControls pour voler librement. Côté backend, il y a un cache avec fallback : les embeddings et le graphe sont précalculés et servis en cache, pour que l'exploration soit instantanée même si le calcul de fond bouge.
Le point dur
Réduire de 3072 à 3 dimensions, c'est forcément perdre de l'information. Le point dur, c'est de préserver ce qui compte : la proximité sémantique. t-SNE excelle à préserver les voisinages locaux mais est instable (même corpus, deux projections différentes) ; PCA est stable mais écrase les détails. J'ai dû choisir le bon compromis et valider visuellement que les amas obtenus correspondent bien à des thèmes réels de mes pensées, et pas à un artefact de la réduction.
Le deuxième point dur, c'est le rendu d'un graphe lisible : 191 nœuds et 421 liens, c'est dense. J'ai dû doser l'opacité, le bloom et l'épaisseur des liens pour que le volume reste lisible, et faire un fly-to qui amène la caméra sans nausée. C'est autant du design que de la data-viz.
Fonctionnalités
Des embeddings de 3072 dimensions ramenés à 3D, puis clustering pour révéler les zones de pensée.
On cherche par sens, pas par mot : l'outil rapproche les pensées qui se ressemblent.
La caméra vole vers un nœud, un panneau affiche le détail, une timeline et des filtres tranchent le volume.
On tourne, on zoome, on traverse la constellation — la mémoire en volume plutôt qu'en liste.
Les embeddings et le graphe sont en cache pour une exploration instantanée, avec un fallback si le calcul bouge.
Arbitrages techniques
Stack technique
En chiffres
Parcours du projet
-
Corpus
Embeddings 3072-dim des pensées capturées par Igor.
-
Projection
t-SNE / PCA vers 3D, clustering DBSCAN, 10 amas.
-
Recherche
cosine KNN par sens, filtres, timeline.
-
Rendu
Three.js avec bloom et OrbitControls, fly-to caméra, panneau de détail.
-
Performance
Graphe précalculé en cache, fallback — exploration instantanée.
Ce que ça a rendu
-
01
La mémoire en volume
Je vois mes idées s'organiser en constellation — un aperçu de la façon dont je pense.
-
02
Recherche par intuition
Le fly-to amène la caméra vers une pensée ; on explore par sens, pas par mot-clé.
-
03
Brique d'Igor
Brain Map consomme le second brain d'Igor et le rend navigable — la mémoire devient un lieu.