समस्या पृष्ठभूमि: मैं एक प्रोजेक्ट पर काम कर रहा हूं, जिसमें आईटी मॉनिटरिंग स्पेस (आईटी स्पेस की मेरी सबसे अच्छी समझ) में पाई जाने वाली लॉग फाइल शामिल हैं। ये लॉग फाइलें टाइम-सीरीज़ डेटा हैं, जिन्हें विभिन्न मापदंडों की सैकड़ों / हजारों पंक्तियों में व्यवस्थित किया गया है। प्रत्येक पैरामीटर संख्यात्मक (फ्लोट) है और प्रत्येक समय बिंदु के लिए एक गैर-तुच्छ / गैर-त्रुटि मान है। मेरा काम मॉनिटर करने के लिए कहा गया है कि विसंगति का पता लगाने के लिए लॉग फाइलें (स्पाइक्स, फॉल्स, असामान्य पैटर्न कुछ मापदंडों के साथ सिंक से बाहर हो रहा है, अजीब 1/2 / आदि। व्युत्पन्न व्यवहार, आदि)।
इसी तरह के असाइनमेंट पर, मैंने स्प्लर्ट के साथ स्प्लंक की कोशिश की है, लेकिन मैं इस समय ओपन-सोर्स विकल्प तलाश रहा हूं।
बाधाएं: मैं खुद को पायथन में सीमित कर रहा हूं क्योंकि मैं इसे अच्छी तरह से जानता हूं, और आर और संबंधित शिक्षण वक्र पर स्विच में देरी करना चाहता हूं। जब तक आर (या अन्य भाषाओं / सॉफ़्टवेयर) के लिए भारी समर्थन प्रतीत नहीं होता है, मैं इस कार्य के लिए पायथन से चिपकना चाहूंगा।
इसके अलावा, मैं इस समय विंडोज वातावरण में काम कर रहा हूं। मैं छोटे आकार की लॉग फ़ाइलों पर विंडोज में सैंडबॉक्स को जारी रखना चाहूंगा लेकिन जरूरत पड़ने पर लिनक्स वातावरण में जा सकता हूं।
संसाधन: मैंने परिणामों के रूप में निम्नलिखित मृत-सिरों की जाँच की है:
धोखाधड़ी का पता लगाने के लिए मशीन लर्निंग एल्गोरिदम को लागू करने के लिए पायथन या आर । यहाँ कुछ जानकारी सहायक है, लेकिन दुर्भाग्य से, मैं सही पैकेज खोजने के लिए संघर्ष कर रहा हूँ क्योंकि:
Twitter का "AnomalyDetection" R में है, और मैं पायथन से चिपकना चाहता हूं। इसके अलावा, पायथन पोर्ट pyculiarity मेरे लिए विंडोज वातावरण में लागू करने में समस्या पैदा करता है।
स्काईलाइन, मेरा अगला प्रयास, लगता है कि बहुत हद तक बंद हो गया है ( जीथूब मुद्दों से )। मैंने इस बात की गहराई से जानकारी नहीं दी है, यह देखते हुए कि ऑनलाइन समर्थन कितना कम है।
scikit-learn मैं अभी भी खोज कर रहा हूं, लेकिन यह बहुत अधिक मैनुअल है। डाउन-द-वीनस दृष्टिकोण मेरे द्वारा ठीक है, लेकिन सीखने के उपकरण में मेरी पृष्ठभूमि कमजोर है, इसलिए स्प्लंक + प्रिलर्ट के समान एल्गोरिदम जैसे तकनीकी पहलुओं के लिए एक ब्लैक बॉक्स जैसा कुछ होगा।
समस्या की परिभाषा और प्रश्न: मैं ऐसे ओपन-सोर्स सॉफ़्टवेयर की तलाश कर रहा हूँ जो मुझे पैकेज या लाइब्रेरी के माध्यम से पायथन में टाइम-सीरीज़ लॉग फ़ाइलों से विसंगति का पता लगाने की प्रक्रिया को स्वचालित करने में मदद कर सके।
- क्या मेरे तत्काल कार्य में सहायता करने के लिए ऐसी चीजें मौजूद हैं, या वे मेरे दिमाग में काल्पनिक हैं?
- क्या पृष्ठभूमि के मूल सिद्धांतों या अवधारणाओं सहित मुझे अपने लक्ष्य की मदद के लिए कोई ठोस कदम उठा सकता है?
- क्या यह सबसे अच्छा StackExchange समुदाय में पूछने के लिए है, या आँकड़े, गणित, या यहां तक कि सुरक्षा या Stackoverflow बेहतर विकल्प हैं?
संपादित करें [2015/07/23] ध्यान दें कि के लिए नवीनतम अद्यतन pyculiarity किया जा रहा है तय Windows वातावरण के लिए! मुझे अभी पुष्टि करना है, लेकिन समुदाय के लिए एक और उपयोगी उपकरण होना चाहिए।
EDIT [2016-01-19] एक मामूली अद्यतन। मेरे पास इस पर काम करने और अनुसंधान के लिए समय नहीं था, लेकिन मैं विशिष्ट विवरणों में शोध जारी रखने से पहले इस समस्या के मूल सिद्धांतों को समझने के लिए एक कदम वापस ले रहा हूं। उदाहरण के लिए, दो ठोस कदम जो मैं ले रहा हूं वे हैं:
विसंगति का पता लगाने के लिए विकिपीडिया लेखों के साथ शुरू [ https://en.wikipedia.org/wiki/Anomaly_detection ], पूरी तरह से समझ, और फिर अन्य लिंक किए गए विकिपीडिया लेखों की अवधारणा पदानुक्रम में ऊपर या नीचे जा रहा है, जैसे कि : https: // en.wikipedia.org/wiki/K-nearest_neighbors_algorithm ], और फिर [ https://en.wikipedia.org/wiki/Machine_learning ] पर।
चंदोला एट अल 2009 "एनोमली डिटेक्शन: ए सर्वे" [ http://www-users.cs.umn.edu/~banerjee/papers/09/anomaly.pdf ] और हॉज एट अल 2004 द्वारा किए गए महान सर्वेक्षणों में तकनीक की खोज। "सर्वे ऑफ आउटलाइयर डिटेक्शन मेथोडोलॉजीज़" [ http://eprints.whiterose.ac.uk/767/1/hodgevj4.pdf ]।
एक बार अवधारणाओं को बेहतर तरीके से समझा जाता है (मैं खिलौना उदाहरणों के साथ खेलने की उम्मीद करता हूं क्योंकि मैं व्यावहारिक पक्ष को विकसित करने के लिए जाता हूं), मुझे यह समझने की उम्मीद है कि मेरी समस्याओं के लिए कौन से खुले स्रोत पायथन उपकरण बेहतर हैं।