2012-01-20 10 views
5

मैं यह जानना चाहता हूं कि आउटलेटर्स का पता लगाने का सबसे अच्छा तरीका क्या है। यहां समस्या है और कुछ चीजें जो शायद काम नहीं करेगी। आइए मान लें कि हम mysql में एक गंदे वर्चर (50) कॉलम से कुछ अर्ध-वर्दी डेटा को मछली बनाना चाहते हैं। आइए स्ट्रिंग लम्बाई से विश्लेषण करके शुरू करें।एक विचित्र वितरण में outliers का पता लगाने?

| strlen | freq | 
|  0 | 2312 | 
|  3 |  45 | 
|  9 |  75 | 
|  10 | 15420 | 
|  11 | 395 | 
|  12 | 114 | 
|  19 |  27 | 
|  20 | 1170 | 
|  21 |  33 | 
|  35 |  9 | 

मैं करना चाहते हैं क्या एक एल्गोरिथ्म वसीयत जो स्ट्रिंग लंबाई उद्देश्यपूर्ण अद्वितीय जा रहा है के बजाय typeo के या यादृच्छिक कचरा होने का एक उच्च संभावना है निर्धारित करने के लिए है। इस क्षेत्र में "enum" प्रकार होने की संभावना है, इसलिए मान्य मानों के लिए कई आवृत्ति स्पाइक हो सकते हैं। स्पष्ट रूप से 10 और 20 मान्य हैं, 0 बस छोड़ा गया डेटा है। आवृत्ति में बहुत अलग होने के बावजूद 35 और 3 कुछ यादृच्छिक कचरे हो सकते हैं। 1 9 और 21 20 प्रारूप के आसपास टाइप-ओएस हो सकते हैं। 11 10 के लिए टाइप-ओएस हो सकता है, लेकिन 12 के बारे में क्या?

यह बस घटना आवृत्ति% का उपयोग कर लगता है पर्याप्त नहीं है। स्पष्ट रूपरेखाओं के आस-पास उच्च "बस एक त्रुटि" संभावना के हॉटस्पॉट की आवश्यकता है।

भी, एक निश्चित सीमा होने में विफल रहता है जब वहाँ 15 अद्वितीय लंबाई जो% से 7 के बीच के साथ 5-20 के बीच वर्ण, प्रत्येक से भिन्न हो सकते हैं कर रहे हैं - 20% घटना।

मानक विचलन काम नहीं करेगा क्योंकि यह मतलब पर निर्भर करता है। औसत पूर्ण विचलन शायद काम नहीं करेगा क्योंकि आपके पास उच्च आवृत्ति बाहरी हो सकती है जिसे त्याग नहीं किया जा सकता है।

हाँ वहाँ कोड में डेटा की सफाई के लिए अन्य पैरामीटर होगा, लेकिन लंबाई बहुत जल्दी प्री-फ़िल्टर और संरचना के किसी भी राशि के साथ क्षेत्रों वर्गीकृत करने के लिए लगता है।

क्या कोई ज्ञात विधियां हैं जो कुशलता से काम करती हैं? मैं Bayesian फिल्टर या मशीन सीखने से बहुत परिचित नहीं हूँ लेकिन शायद वे मदद कर सकते हैं?

धन्यवाद! लियोन

+0

दिलचस्प सवाल – cctan

उत्तर

2

ध्वनि विसंगति का पता लगाने की तरह रास्ता तय करना है। अनौपचारिक पहचान एक प्रकार की मशीन लर्निंग है जिसका उपयोग बाहरी लोगों को खोजने के लिए किया जाता है। यह पर्यवेक्षित और असुरक्षित समेत कुछ किस्मों में आता है। पर्यवेक्षित शिक्षा में, एल्गोरिदम आउटलाइजर्स के उदाहरणों का उपयोग करके प्रशिक्षण दे रहा है। असुरक्षित शिक्षा में, एल्गोरिदम किसी भी उदाहरण के बिना आउटलाइन खोजने का प्रयास करता है। यहाँ लिंक की एक जोड़ी बाहर शुरू करने के लिए कर रहे हैं:

http://en.wikipedia.org/wiki/Anomaly_detection

http://s3.amazonaws.com/mlclass-resources/docs/slides/Lecture15.pdf

मैं किसी भी लिंक आसानी से उपलब्ध पुस्तकालयों के लिए नहीं मिला। MATLAB, या उसके फ्री चचेरे भाई, ऑक्टवे जैसे कुछ, अगर आप अपनी पसंद की भाषा में एक विसंगति पहचान पुस्तकालय नहीं पा रहे हैं तो यह एक अच्छा तरीका हो सकता है। https://goker.wordpress.com/tag/anomaly-detection/

+0

धन्यवाद के लिए +1, यह बहुत दिलचस्प है और स्थान-ऑन होने के लिए है, लेकिन बहुत आसान :(मैं कुछ सरल भारित की खोज रखने के लिए जा रहा हूँ अपने प्रोजेक्ट के लिए सार्थक होने के लिए लागू करने के लिए प्रतीत नहीं होता -average कार्यान्वयन शालीनता से प्रभावी है कि – leeoniya

+0

भी इस:।।। http://en.wikipedia.org/wiki/Local_outlier_factor – leeoniya

+0

@leeoniya स्थानीय बाहरी कारक एक उपयुक्त विकल्प की तरह लग रहा लेख आप लिंक Dim2 Dim1 बनाम की साजिश भी शामिल है, जो इस मामले में आवृत्ति बनाम स्ट्रिंग लम्बाई होगी ... ... इसे लागू करने के लिए उचित सरल लगता है, लेकिन लेख में बहुत कुछ नहीं है। क्या आप अंत में कागजात के संदर्भों के अलावा कुछ स्रोतों को इंगित कर सकते हैं लेख का? – ahoffer

संबंधित मुद्दे