विसंगति का पता लगाने के लिए स्वचालित सीमा निर्धारण


9

मैं विसंगति के अंकों की एक समय श्रृंखला के साथ काम कर रहा हूं (पृष्ठभूमि कंप्यूटर नेटवर्क में विसंगति का पता लगाने वाला है)। हर मिनट, मुझे एक विसंगति स्कोर मिलता हैxt[0,5]जो मुझे बताता है कि नेटवर्क की वर्तमान स्थिति कितनी "अप्रत्याशित" या असामान्य है। उच्च स्कोर, वर्तमान स्थिति जितनी अधिक असामान्य होगी। 5 के करीब स्कोर सैद्धांतिक रूप से संभव है लेकिन लगभग कभी नहीं होते हैं।

अब मैं एक एल्गोरिथ्म या एक सूत्र के साथ आना चाहता हूं जो स्वचालित रूप से इस विसंगति समय श्रृंखला के लिए एक सीमा निर्धारित करता है । जैसे ही एक विसंगति स्कोर इस सीमा से अधिक हो जाता है, एक अलार्म चालू हो जाता है।

नीचे दी गई आवृत्ति वितरण 1 दिन से अधिक की विसंगति समय श्रृंखला के लिए एक उदाहरण है। हालांकि, यह मान लेना सुरक्षित नहीं है कि हर विसंगति समय श्रृंखला की तरह लग रही है। इस विशेष उदाहरण में, .99-क्वांटाइल जैसी विसंगति का अर्थ समझ में आता है क्योंकि बहुत ही सही पर कुछ अंकों को विसंगतियों के रूप में माना जा सकता है।

यहाँ छवि विवरण दर्ज करें

और समय श्रृंखला के समान आवृत्ति वितरण (यह केवल 0 से 1 तक होता है क्योंकि समय श्रृंखला में कोई उच्च विसंगति स्कोर नहीं हैं):

समय श्रृंखला

दुर्भाग्य से, आवृत्ति वितरण में आकार हो सकते हैं, जहां .99-मात्रात्मक उपयोगी नहीं है । एक उदाहरण नीचे है। सही पूंछ बहुत कम है, इसलिए यदि .99-मात्रा का उपयोग थ्रेशोल्ड के रूप में किया जाता है, तो इससे कई गलत सकारात्मक परिणाम हो सकते हैं। इस आवृत्ति वितरण में विसंगतियाँ नहीं लगती हैं इसलिए दहलीज को वितरण के बाहर लगभग 0.25 पर रखना चाहिए।

यहाँ छवि विवरण दर्ज करें

संक्षेप में, इन दो उदाहरणों के बीच का अंतर यह है कि पहला व्यक्ति विसंगतियों को प्रदर्शित करता है जबकि दूसरा नहीं करता है।

मेरे भोले दृष्टिकोण से, एल्गोरिथ्म को इन दो मामलों पर विचार करना चाहिए:

  • यदि आवृत्ति वितरण में एक बड़ी दाएं पूंछ होती है (अर्थात कुछ असामान्य स्कोर), तो .99-मात्रा एक अच्छी सीमा हो सकती है।
  • यदि आवृत्ति वितरण में बहुत छोटी दाएं पूंछ होती है (अर्थात कोई असामान्य स्कोर नहीं), तो थ्रेशोल्ड वितरण के बाहर स्थित होना चाहिए।

/ संपादित करें: कोई जमीनी सच्चाई भी नहीं है, अर्थात लेबल किए गए डेटा सेट उपलब्ध हैं। तो एल्गोरिथ्म विसंगति स्कोर की प्रकृति के खिलाफ "अंधा" है।

अब मुझे यकीन नहीं है कि इन टिप्पणियों को एक एल्गोरिथ्म या सूत्र के रूप में कैसे व्यक्त किया जा सकता है। क्या किसी के पास कोई सुझाव है कि इस समस्या को कैसे हल किया जा सकता है? मुझे उम्मीद है कि मेरी सांख्यिकीय पृष्ठभूमि बहुत सीमित होने के कारण मेरी व्याख्या पर्याप्त है।

आपकी सहायताके लिए धन्यवाद!


बस एक नोट, पहला ग्राफ मेरे लिए कुछ भी सामान्य नहीं लगता है।
mpiktas

1
@ क्रिप्ट्रॉन, प्रमुख सवाल यह है कि ध्वनि सीमा क्या है । उदाहरण के लिए यदि प्रत्येक उठाया अलार्म और गैर-उठाया अलार्म कुछ लागतों को बढ़ाता है, तो दहलीज को ऐसे चुना जा सकता है जो कुल लागत को कम करता है। उसके लिए हमें लागत डेटा चाहिए। ध्वनि की सटीक परिभाषा के बिना यह मापना असंभव है कि थ्रेशोल्ड चुनने के लिए चुनी गई विधि का मूल्यांकन कैसे करें।
mpiktas

@mpiktas: मुझे स्वीकार करना होगा, "ध्वनि" शब्द इस संदर्भ में दुर्भाग्यपूर्ण था क्योंकि मेरे पास दहलीज का कठोरता से मूल्यांकन करने का कोई तरीका नहीं है (इसलिए, मैंने इसे संपादित किया)। मूल रूप से, थ्रेशोल्ड को झूठी सकारात्मकता को कम करने के लिए माना जाता है क्योंकि वे नेटवर्क विसंगति का पता लगाने में झूठे नकारात्मक की तुलना में अधिक महंगा हैं।
क्रिप्ट्रॉन

@ क्रिप्ट्रॉन, क्या आपके पास कोई डेटा है जो एक झूठी सकारात्मक है?
mpiktas

1
मैं आपके प्लॉट से भ्रमित हूं। यह एक अविभाज्य समय श्रृंखला है{xt} में मान ले रहा है 0<xt5? या होना चाहिए0<xt0.5? (अपने पहले भूखंड में एक्स अक्ष को देखकर)। एक ट्रेसप्लेट भी अधिक उपयोगी होगा। उदाहरण के लिए, क्या आप निरंतर अवधि के लिए या कम फटने (या दोनों) में उच्च अंक प्राप्त करते हैं? अगर दोनों, एक दूसरे की तुलना में अधिक परेशान है? यदि आप डेटा के लिए एक उचित मॉडल नीचे रख सकते हैं तो आप फिटेड डिस्ट्रीब्यूशन से सैद्धांतिक क्वांटिल का उपयोग कर सकते हैं, जो आपके द्वारा पहचानी गई समस्या को सैंपल क्वांटिल से हल करेगा।
जेएमएस

जवाबों:


2

आपको रुचि का यह पेपर मिल सकता है । पश्चिम और हैरिसन में समान मॉडलों की अधिक विस्तृत प्रस्तुति भी देखें । इस तरह की निगरानी के अन्य उदाहरण भी हैं, कई जो हाल ही में हैं, लेकिन यह वास्तव में मेरा पहियाघर नहीं है :)। निस्संदेह इन मॉडलों के उपयुक्त कार्यान्वयन हैं, लेकिन मुझे नहीं पता कि वे क्या बंद हो सकते हैं ...

मूल विचार यह है कि आपके पास एक स्विचिंग मॉडल है जहां कुछ टिप्पणियों / टिप्पणियों के अनुक्रम को असामान्य नेटवर्क राज्यों के लिए जिम्मेदार ठहराया जाता है जबकि बाकी को सामान्य माना जाता है। इस तरह का मिश्रण आपके पहले प्लॉट में लंबी दाएं पूंछ के लिए जिम्मेदार हो सकता है। एक गतिशील मॉडल आपको समस्या-स्थिति से संबंधित नई टिप्पणियों के लिए उच्च संभावना प्रदान करके वास्तविक समय में 8:00 और 4:00 बजे की तरह असामान्य कूद के लिए सचेत कर सकता है। भविष्यवाणियों, आवधिक घटकों (शायद आपका स्कोर बढ़ जाता है / गतिविधि के साथ थोड़ा गिर जाता है) और उस तरह की चीजों को शामिल करने के लिए इसे आसानी से बढ़ाया जा सकता है।

संपादित करें: मुझे भी जोड़ना चाहिए, इस तरह का मॉडल इस अर्थ में "अनसुनी" है कि विसंगतियों को या तो एक बड़ी मतलब बदलाव दिखाते हुए पकड़ा जाता है या विचरण में वृद्धि होती है। जैसा कि आप डेटा इकट्ठा करते हैं आप अधिक जानकारीपूर्ण पूर्व वितरण के साथ मॉडल में सुधार कर सकते हैं। लेकिन शायद एक बार आपके पास पर्याप्त डेटा (और नेटवर्क की समस्याओं से निपटने के द्वारा कड़ी मेहनत से प्रशिक्षण के उदाहरण हैं!) आप कुछ सरल निगरानी नियमों (दहलीज, आदि) को तैयार कर सकते हैं


1

क्या आपके पास कोई 'लेबल' उदाहरण है जो एक विसंगति का गठन करता है? एक नेटवर्क विफलता के साथ जुड़े मूल्यों, या ऐसा कुछ?

एक विचार जिसे आप लागू करने पर विचार कर सकते हैं वह एक आरओसी वक्र है, जो सच मानों को अधिकतम करने या झूठी नकारात्मक को कम करने जैसे विशिष्ट मानदंडों को पूरा करने वाले थ्रेशर्स को चुनने के लिए उपयोगी है।

बेशक, आरओसी वक्र का उपयोग करने के लिए, आपको अपने डेटा को किसी तरह से लेबल करने की आवश्यकता है।


1
दुर्भाग्य से, मेरे पास कोई लेबल डेटा सेट नहीं है। केवल धारणा है, कि लंबी पूंछ या आउटलेर्स डेटा सेट में विसंगतियों को इंगित करते हैं।
क्रिप्ट्रॉन

@ क्रिप्ट्रॉन मैं देख रहा हूं। तो क्या आप की जरूरत है गतिशील रूप से outliers की पहचान करने के लिए एक रास्ता है।
जाच

यह समस्या का एक हिस्सा हल करेगा, हाँ।
क्रिप्ट्रॉन

1

"मूल श्रृंखला" के ग्राफ में किसी भी पूर्व-निर्धारित संरचना का प्रदर्शन नहीं होता है। यह महत्वपूर्ण है कि "एक उपयुक्त मॉडल श्रृंखला से अवशेष" का ग्राफ या तो एक गाऊसी संरचना का प्रदर्शन करने की आवश्यकता है। यह "गॉसियन संरचना" आमतौर पर निम्नलिखित में से एक या अधिक "परिवर्तनों" को शामिल करके प्राप्त की जा सकती है। 1. एक अरिमा मॉडल 2. स्थानीय स्तर की बदलावों या स्थानीय समय के रुझान या मौसमी दलहन या साधारण दलहन के लिए समायोजन 3. सिद्ध विचरण विषमता का दोहन करने वाला भारित। 4. एक विशिष्ट विचरण विषमता से निपटने के लिए एक संभावित शक्ति परिवर्तन (लॉग आदि) 5. समय का पता लगाना जहाँ मॉडल / पैरामीटर बदल सकते हैं।

इंटरवेंशन डिटेक्शन सबसे सामान्य या विसंगति का सुझाव देने वाली सबसे हालिया घटना के सांख्यिकीय महत्व के बारे में एक बयान देगा


0

मेरे पूर्व उत्तर के लिए ओपी की प्रतिक्रिया में उसने अपना डेटा वेब पर पोस्ट किया है। 6 दिनों के लिए 24 घंटे के लिए प्रति घंटे 60 रीडिंग । चूंकि यह समय श्रृंखला पार-अनुभागीय उपकरण हैं जैसे DBSCAN की सीमित प्रासंगिकता है क्योंकि डेटा में अस्थायी निर्भरता है। इस तरह के डेटा के साथ एक सामान्य रूप से इंट्रा-घंटे और इंट्रा-डे संरचना के लिए दिखता है। इस प्रकार की संरचना के अलावा, विसंगतियों का पता लगाने के लिए पीछा किया जा सकता है जो या तो केवल एक बार (पल्स) या प्रकृति में व्यवस्थित (लेवल शिफ्ट) उन विधियों का उपयोग कर सकते हैं जो अच्छी तरह से प्रलेखित हैं (Tsay, Tiao, चेन एट के साहित्य को देखें)। अल।) इन प्रक्रियाओं ने निम्नलिखित "विसंगतियों 'को जन्म दिया। ध्यान दें कि एक स्तर पर बदलाव अनिवार्य रूप से अलग" समूहों "का विचारोत्तेजक है। शीर्ष पहचान विसंगतियों

                                HOUR/MINUTE     TIME

-1

मेरे एक दोस्त ने मुझे क्लस्टरिंग एल्गोरिदम की दिशा में इशारा किया , मैंने डीबीएससीएन में ठोकर खाई, जो दो पूर्वनिर्धारित मापदंडों के अनुसार एन-डायमेंशनल स्पेस में क्लस्टर बनाता है। मूल विचार घनत्व-आधारित क्लस्टरिंग है, अर्थात घने क्षेत्र क्लस्टर बनाते हैं। एल्गोरिदम द्वारा आउटलेर्स को अलग से लौटाया जाता है। इसलिए, जब मेरे 1-आयामी हिस्टोग्राम के लिए आवेदन किया जाता है, तो DBSCAN मुझे यह बताने में सक्षम होता है, कि क्या मेरा विसंगतिपूर्ण स्कोर किसी भी बाहरी व्यक्ति को सुविधा देता है। नोट: डीबीएससीएएन में, एक रूपरेखा केवल एक बिंदु है जो किसी भी क्लस्टर से संबंधित नहीं है। सामान्य ऑपरेशन के दौरान, मुझे उम्मीद है कि एल्गोरिथ्म में केवल एक ही क्लस्टर (और कोई आउटलेयर) नहीं होगा।

कुछ प्रयोग करने के बाद, मुझे पता चला कि पैरामीटर ϵ0.1अच्छा काम करता है। इसका मतलब है कि बिंदुओं को बाहरी रूप से देखे जाने के लिए कम से कम 0.1 की दूरी को "सामान्य" क्लस्टर में प्रदर्शित करना होगा।

आउटलेर्स की पहचान करने में सक्षम होने के बाद, थ्रेशोल्ड ढूंढना सरल नियमों जैसे

  • यदि सेट आउटलेर्स को प्रदर्शित करता है, तो "सामान्य" और "बाहरी" क्लस्टर के बीच की सीमा निर्धारित करें ताकि दोनों को मार्जिन अधिकतम हो।
  • यदि सेट किसी भी आउटलेर को प्रदर्शित नहीं करता है, तो दहलीज को एक मानक विचलन को बाहरी दाहिने बिंदु से दूर सेट करें।

वैसे भी, सभी उपयोगी उत्तर के लिए धन्यवाद!


@ क्रिप्टन DBSCAN ऑटोकैरेक्टेड श्रृंखला से कैसे निपटता है। उदाहरण के लिए एक समय श्रृंखला 1,9,1,9,1,9,5 में एक असमान / असामान्य मूल्य होगा। क्या यह श्रृंखला में स्तर बदलाव या कई संभावित रुझानों से निपटता है? यह मौसमी ऑटोरेग्रेसिव डेटा के साथ कैसे व्यवहार करता है, जहां हर महीने के जून के अलावा अन्य श्रृंखला "नियमित" है, जबकि हर जून श्रृंखला "बड़ी" है। क्या "बड़े जून मूल्यों" को आउटलेर के रूप में पहचाना जाता है? बस उत्सुक !
आयरिशस्टैट

2
@ इरिस्टैट मूल रूप से, डीबीएससीएन क्लस्टर एन-डायमेंशनल स्पेस में इंगित करता है। तो समय श्रृंखला विश्लेषण के लिए इसकी उपयुक्तता बहुत सीमित है। यह मेरे विशेष मामले के लिए काम करता है क्योंकि मैं अपने (1-आयामी) हिस्टोग्राम में केवल एक ही क्लस्टर की उम्मीद करता हूं। अपने प्रश्नों का उत्तर देने के लिए: उपयुक्त मापदंडों का उपयोग करते समय, आपके उदाहरण के मूल्य 5 को बाहरी रूप में पाया जाएगा। मुझे लगता है कि यह रुझानों से निपट सकता है, लेकिन समय श्रृंखला '1, 2, 3, 4, 5, 6, 7, 2' में, मूल्य 2 को अधिक नहीं माना जाएगा! मुझे उम्मीद है, कि DBSCAN की क्षमताओं और सीमाओं के बारे में एक मोटा विचार देता है।
क्रिप्ट्रॉन

1
@ क्रिप्टन जानकारी के लिए धन्यवाद। यह मुझे प्रतीत होता है कि जब आप 1 क्लस्टर का संदर्भ देते हैं, तो आपका मतलब 1 और केवल 1 औसत होता है। भले ही आपके डेटा में औसत ऑटोक्रॉलेशन में कोई बदलाव न हो लेकिन यह "टाइम सीरीज़" को प्रस्तुत करता है जो यह बताता है कि डीबीएससीएन उतना उपयोगी नहीं हो सकता है, जितना कि आप अनमोल डेटा की कुशल पहचान के लिए शोर से अलग सिग्नल के बारे में सोचते हैं।
आयरिशस्टैट

1
@ क्रिप्टन मुझे ऐसा प्रतीत होता है कि एक समय श्रृंखला की तुलना में एक क्लस्टर का औसत 1 है, जो इन मूल्यों के आसपास कुछ छोटे विचलन के साथ 1,1,1,1,2,2,2,2 कहता है।
आयरिशस्टैट

2
@ क्रप्टन मुझे लगता है कि आप एक समय श्रृंखला समस्या के लिए एक क्रॉस-अनुभागीय टूल का उपयोग कर रहे हैं। वास्तविक डेटा पोस्ट करें और मैं समय श्रृंखला विश्लेषण के साथ आपके लिए विसंगति का पता लगाने की कोशिश
करूंगा
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.