2011-08-31 11 views
5

एक वेब अनुप्रयोग में, जब भी कोई ईवेंट होता है तो मुझे ट्रिगर मिलता है। मैं 'हिंसक' आवृत्ति चोटियों का पता लगाना चाहता हूं, जो शायद असामान्य व्यवहार में अनुवाद करते हैं।घटनाओं की आवृत्ति की चोटी के वास्तविक समय का पता लगाने

मुझे लगता है कि प्राप्त करने के दो अनुभवहीन तरीके के बारे में सोच सकते हैं:

  • फिक्स्ड सीमा - "500 से अधिक घटनाओं में एक मिनट के भीतर हो, तो sth शायद गलत है।" यह विधि चिकनी थ्रेसहोल्ड उल्लंघनों या लगातार बढ़ती यातायात को संभाल नहीं सकती है, जब तक कि एप्लिकेशन आवधिक रूप से थ्रेसहोल्ड समायोजित नहीं कर सकता।

  • विंडो से संबंधित ह्युरिस्टिक - विंडो को एन बराबर (?) अंतराल में विभाजित करें। जबकि एन> 0, घटनाओं की आवृत्ति की गणना [अब- (एन * अंतराल_भाई), अब]। इसे एक सूची में सहेजें। 1 से घटाएं। दोहराना। सूची आउटलेटर्स का पता लगाएं। यदि वहाँ एक बाहरी [अब window_length, अब] का मतलब आवृत्ति की तुलना में बड़ा, sth शायद गलत है। "

मैं अगर वहाँ के बजाय इस समस्या को या के लिए एक आम/मानक समाधान है जानना चाहते हैं । यदि आप अधिक कुशल या सुरुचिपूर्ण कुछ भी सोच सकते हैं

अग्रिम धन्यवाद

संपादित करें -। एक अन्य सुझाव

मेरा एक दोस्त का सुझाव दिया होल्ट-विंटर्स के साथ असामान्य व्यवहार का पता लगाने पूर्वानुमान। आप नीचे दिए गए लिंक में इस पद्धति के बारे में अधिक जानकारी प्राप्त कर सकते हैं:

http://www.hpl.hp.com/news/events/csc/2005/jake_slides.pdf

http://www.usenix.org/events/lisa00/full_papers/brutlag/brutlag_html/

उत्तर

1

मैं विशेषज्ञ नहीं हूँ। मैं क्या करूं:

मान लें कि आप केवल अंतिम n परिणाम रखते हैं और x_n अंतिम नमूना (पिछली घटना से समय अंतर) है।

α_n x_n + α_{n-1}/2 x_{n-1} + ... + α_{1} 2^{-n} x_1 = T 

अंतर T - T_{previous}, जहां T_{previous}T के पिछले मूल्य, एक सीमा पार करते हैं, कुछ करना।

यदि x_i के आपके मान बाइनरी हैं, तो आप shift और or संचालन के साथ चाल चल सकते हैं, यदि गति कोई मामला है।

+0

उत्तर देने के लिए टीएक्स =) यहां कुछ प्रश्न .. ए) हाल ही में घटना, जितना अधिक भार मिलता है, है ना? बी) 'ए' क्या दर्शाता है? क्या मैं सिर्फ 'एन' गुणाओं से बचने के लिए टी को समायोजित नहीं कर सकता था? – sawidis

+0

अच्छा अवलोकन। मैं इंडेक्स को 'α_i' पर भूल गया था। यदि आप एक विशेष वजन चाहते हैं। यह प्रत्येक 'i' के लिए' a_i = 1' हो सकता है। यदि आप टी को दाईं ओर स्थानांतरित करना चाहते हैं और x_n का नया मान जोड़ना चाहते हैं, तो आप सही हैं। –

+1

और हां, अधिक हालिया ==> अधिक महत्वपूर्ण। –

0

अभी पिछले एक्स मिनट के मूल्यों पर एक साधारण औसत प्राप्त (मान रखने के लिए)

औसत के साथ प्रत्येक नए भेजे मूल्य की तुलना:

  • यदि अंतर Y% से अधिक है तो इसके एक बाहरी, चेतावनी।
  • यदि कम है, तो इसे औसत में जोड़ें और पहले एक, फीफो शैली को हटा दें।

यदि आपको लगता है कि इसे 'तेजी से बढ़ते यातायात' के साथ धोखा दिया जा सकता है, तो एक्स को पर्याप्त रूप से बड़ा बनाएं।

+1

मुझे लगता है कि हम उन संकेतों के बारे में अधिक परवाह करते हैं जो तत्काल पिछले संकेतों की तुलना में अधिक बार होते हैं, जो कुछ समय पहले हुआ था। जहां 'थोड़ी देर' खिड़की की लंबाई है। –

0

आप एक घातीय भारित फ्लोटिंग-माध्य अनुमानक की गणना कर सकते हैं, और इसकी तुलना अपने पिछले मूल्य से कर सकते हैं। एक अचानक वृद्धि संभवतः आप पहचानने की कोशिश कर रहे हैं, लेकिन एक निश्चित न्यूनतम दहलीज के साथ संयुक्त (इसलिए 0 से 1 महत्वपूर्ण नहीं है)।

लेकिन वर्तमान फ़्लोटिंग माध्य 100 से 200 तक कूदता है, शायद यह उन घटनाओं की तरह है जिन्हें आप पहचानना चाहते हैं।

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