Ce programme trouve plus particulièrement des applications dans le data mining, la détection de collision dans le contrôle aérien et dans la sécurité informatique, ce pourquoi Picviz a principalement été écrit.
Picviz cherche à répondre à la problématique de recherche d'une aiguille dans une botte de foin, où le nombre de données devient trop important pour être compris et analysé par des recherches de motifs connus... surtout si l'on ne sait pas ce que l'on cherche.
Grâce à un langage simple, fortement inspiré de Graphviz, il est aisé d'automatiser la création de graphes et de trouver des éléments remarquables (des convergences, divergences, des éléments éloignés par rapport aux autres, etc.). J'ai commencé à étudier les coordonnées parallèles un peu par hasard, en générant une image de scan Nessus utilisant cette technique pour présenter le haut de l'iceberg d'un travail sur la corrélation, lors d'une conférence de sécurité.
Finalement, le commentaire de Raffy sur ce graphe m'a encouragé à écrire un programme permettant de facilement écrire, générer et comprendre ce type de graphe. Puis Ron Gula de Tenable Security a commencé à en parler car on voyait assez bien l'efficacité de Nessus face aux autres outils testés.
Après avoir consulté quelques écrit d'Alfred Inselberg du département de maths de l'université de Tel-Aviv, je me suis mis au code il y a quelques semaines, pour arriver à un programme utilisable aujourd'hui pour faire tout simplement ce que je voulais.
J'ai fini par avoir les encouragement d'Alfred sur ce travail, ce qui fait plaisir quand on sait que c'est lui qui a faire la redécouverte (le premier étant Maurice d'Ocagne en 1885), et que surtout son papier sur la gestion de collision dans les aéroports a fini par être utilisé pour de vrai aujourd'hui.
N'hésitez pas à tester, trouver des bugs, vous amuser avec et à m'envoyer les scripts que vous avez fait pour générer ce type de graphes.
Aller plus loin
- Page du projet picviz (77 clics)
- Regardons l'attaque Kaminsky (32 clics)
- Wikipedia sur la technique (53 clics)
- Release notes (5 clics)
- Timeline du projet (12 clics)
# Voir aussi ggobi
Posté par -mat . Évalué à 6.
[^] # Re: Voir aussi ggobi
Posté par stricaud . Évalué à 7.
Bien que ne connaissant pas ce projet au moment où j'ai crée picviz, il s'avère que nous avons eu une approche assez différente : j'ai une bibliothèque en C orientée performance, disposant de bindings python ainsi qu'un language de description (qui n'est pas XML).
L'idée est de rester dans l'esprit KISS où l'on peut facilement scripter : syslog vers language picviz, modifier le rendu ou la sortie et automatiser le résultat final.
Picviz possède un binaire en ligne de commande, ainsi qu'un frontend graphique. La séparation des deux est important lorsque l'on veut avoir un rendu dans une page web par exemple.
Enfin, c'était surtout le classique: "parce que je ne trouvais rien qui me convenait" que je me suis mis à l'écrire.
Cela dit, Ggobi est un beau projet, essaye-le (aussi) !
# Héhé
Posté par J Avd . Évalué à 5.
Faut voir la quantité de "moules" qui squatte le rocher en attendant une news :D
"Gentoo" is an ancient african word, meaning "Read the F*ckin' Manual". "Gentoo" also means "I am what I am because you all are freaky n3rdz"
[^] # Re: Héhé
Posté par stricaud . Évalué à 0.
* En mode fast-cgi ou avec mod_python, trac tu installeras
Voici un bel exemple démontrant à tous ceux qui pensent que python est performant qu'ils feraient mieux de revenir à perl.
[^] # Re: Héhé
Posté par Colin Leroy (site web personnel) . Évalué à 2.
# Wikipédia
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 3.
[^] # Re: Wikipédia
Posté par 🚲 Tanguy Ortolo (site web personnel) . Évalué à 4.
# surtout si l'on ne sait pas ce que l'on cherche
Posté par chuchunain (site web personnel) . Évalué à 2.
T'as le bonjour de JavaScript !
[^] # Re: surtout si l'on ne sait pas ce que l'on cherche
Posté par stricaud . Évalué à 4.
Mais si tu ne connais pas ce motif, tu fais comment ?
Les vues en coordonnées parallèles mettent assez facilement en évidence un élément différent des autres : tu verras une ligne qui ne rejoint pas la masse globale.
Ensuite, avec l'interface graphique tu peux la sélectionner et affiner ta recherche.
[^] # Re: surtout si l'on ne sait pas ce que l'on cherche
Posté par Larry Cow . Évalué à 3.
[^] # Re: surtout si l'on ne sait pas ce que l'on cherche
Posté par Thomas Douillard . Évalué à 3.
(ou des absences, mais là à priori il y a plein d'abscence de corrélation, donc pour remarquer une absence de corrélation particulière il faut avoir subodoré que cette corrélation particulière existait, donc quelque part un peu chercher ladite corrélation.)
[^] # Re: surtout si l'on ne sait pas ce que l'on cherche
Posté par Larry Cow . Évalué à 2.
C'est clair. De toutes façons, même sans ça, on aurait pu insinuer que tu cherchais des "trucs". Sauf à inventer un système qui trouve des trucs alors que tu ne cherches pas (et donc qu'à priori lui non plus, sinon d'une certaine manière tu cherches), on n'en sortira pas :)
(ou des absences, mais là à priori il y a plein d'abscence de corrélation, donc pour remarquer une absence de corrélation particulière il faut avoir subodoré que cette corrélation particulière existait, donc quelque part un peu chercher ladite corrélation.)
Oui et non, il n'y a pas forcément plein d'absence de corrélation, tout dépend de ton ensemble de paramètres. Et puis tu peux toujours chercher LE paramètre qui n'est pas lié aux autres, ou quelque-chose comme ça.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.