Problème: Je travaille sur un projet qui implique des fichiers journaux similaires à ceux trouvés dans l'espace de surveillance informatique (à ma meilleure compréhension de l'espace informatique). Ces fichiers journaux sont des données chronologiques organisées en centaines / milliers de lignes de paramètres variés. Chaque paramètre est numérique (float) et il existe une valeur non triviale / non-erreur pour chaque point de temps. Ma tâche consiste à surveiller les fichiers journaux pour détecter les anomalies (pics, chutes, modèles inhabituels avec certains paramètres désynchronisés, comportement étrange des dérivées 1er / 2e / etc., etc.).
Sur une mission similaire, j'ai essayé Splunk avec Prelert, mais j'explore actuellement les options open source.
Contraintes: Je me limite à Python parce que je le connais bien et que je voudrais retarder le passage à R et à la courbe d’apprentissage associée. À moins que le support de R (ou des autres langages / logiciels) ne semble pas être supporté de manière écrasante, je voudrais m'en tenir à Python pour cette tâche.
De plus, je travaille dans un environnement Windows pour le moment. Je souhaite continuer à utiliser Sandbox sous Windows sur des fichiers journaux de petite taille, mais je peux également passer à l'environnement Linux si nécessaire.
Ressources: J'ai vérifié ce qui suit avec comme résultat des impasses:
Python ou R pour implémenter des algorithmes d’apprentissage automatique pour la détection des fraudes . Certaines informations ici sont utiles, mais malheureusement, j'ai du mal à trouver le bon forfait pour les raisons suivantes:
"AnomalyDetection" de Twitter est dans R, et je veux m'en tenir à Python. De plus, la pyculiarité de port Python semble poser des problèmes d’implémentation dans l’environnement Windows.
Skyline, ma prochaine tentative, semble avoir été à peu près interrompue (à partir de problèmes de github ). Je n'ai pas approfondi cette question, compte tenu du peu de soutien qui semble être disponible en ligne.
scikit-learn je suis toujours en train d'explorer, mais cela semble être beaucoup plus manuel. L’approche «dans les mauvaises herbes» me convient, mais mon niveau d’apprentissage des outils d’apprentissage est faible. Par conséquent, je souhaiterais avoir une sorte de boîte noire pour les aspects techniques tels que les algorithmes, similaires à Splunk + Prelert.
Définition du problème et questions: Je recherche un logiciel open source pouvant m'aider à automatiser le processus de détection des anomalies à partir de fichiers journaux de séries chronologiques en Python via des packages ou des bibliothèques.
- De telles choses existent-elles pour m'aider dans ma tâche immédiate ou sont-elles imaginaires dans mon esprit?
- Quelqu'un peut-il m'aider à prendre des mesures concrètes pour m'aider à atteindre mon objectif, y compris des notions de base ou des concepts de base?
- S'agit-il de la meilleure communauté StackExchange à utiliser, ou bien Stats, Math, ou même Security ou Stackoverflow, sont-ils les meilleures options?
EDIT [2015-07-23] Notez que la dernière mise à jour de pyculiarity semble être corrigée pour l'environnement Windows! Je n'ai pas encore confirmé, mais cela devrait être un autre outil utile pour la communauté.
EDIT [2016-01-19] Une mise à jour mineure. Je n’ai pas eu le temps de travailler là-dessus et de faire de la recherche, mais j’ai pris du recul pour comprendre les fondements de ce problème avant de poursuivre mes recherches dans des détails spécifiques. Par exemple, je prends deux mesures concrètes:
Commençons par les articles de Wikipédia pour la détection des anomalies [ https://en.wikipedia.org/wiki/Anomaly_detection ], en comprenant parfaitement, puis en remontant ou en descendant dans la hiérarchie des concepts d’autres articles liés de Wikipedia, tels que [ https: // en.wikipedia.org/wiki/K-nearest_neighbors_algorithm ], puis sur [ https://en.wikipedia.org/wiki/Machine_learning ].
Techniques d'exploration dans les grandes enquêtes réalisées par Chandola et al. 2009 "Anomaly Detection: A Survey" [ http://www-users.cs.umn.edu/~banerjee/papers/09/anomaly.pdf ] et Hodge et al 2004 "Enquête sur les méthodes de détection des valeurs aberrantes" [ http://eprints.whiterose.ac.uk/767/1/hodgevj4.pdf ].
Une fois que les concepts sont mieux compris (j'espère jouer avec des exemples de jouets au fur et à mesure que je développe également l'aspect pratique), j'espère comprendre quels outils Python Open Source sont mieux adaptés à mes problèmes.