समय-श्रृंखला डेटा के वास्तविक समय सामान्यीकरण के लिए एल्गोरिदम?


12

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

मेरे पास इसके लिए पहले से मौजूद एल्गोरिथ्म खोजने के लिए बहुत अधिक भाग्य नहीं था, लेकिन शायद मैं सिर्फ सही स्थानों पर नहीं देख रहा हूं। क्या किसी को पता है? या कोई विचार है? मैंने एक रनिंग माध्य (शायद वेलफ़ोर्ड के एल्गोरिथ्म द्वारा गणना की गई) का उपयोग करने के लिए एक सुझाव देखा था, लेकिन अगर मैंने ऐसा किया, तो उसी मूल्य के कई रीडिंग समान होने के रूप में दिखाई नहीं देंगे, जो एक बहुत बड़ी समस्या की तरह लगता है, जब तक कि मैं नहीं। मुझे कुछ याद आ रहा है। किसी भी विचार की सराहना की है! धन्यवाद!

जवाबों:


1

आपके प्रश्न से, मैं समझता हूँ कि आप देख रहे हैं:

  1. एक तरीका खोजें जो प्रत्येक सेंसर से डेटा योगदान को सामान्य करता है।
  2. देखें कि नया डेटा पॉइंट पिछले पॉइंट्स से बहुत अलग है या नहीं।

यहां वह है जहां मैं शुरू करूंगा

1. अपने पहले प्रश्न के लिए: माध्य को हटा दें और सफेद करें जो आप ढूंढ रहे हैं। व्हाइटनिंग ट्रांसफ़ॉर्मेशन सुनिश्चित करता है कि आपकी सुविधाएँ सभी एक ही गतिशील रेंज में हों।

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

यह मानते हुए कि आपका डेटा यूनी-मोडल है, कि इसका, इसका एक ही स्पष्ट अर्थ है। मैं डेटा के माध्य को घटाकर और एक व्हाइटनिंग ट्रांसफॉर्मेशन करके (शायद PCA, शायद ZCA आपके डेटा के आधार पर) प्रदर्शन करके शुरू करूंगा

यदि आप वास्तविक समय में ऐसा करना चाहते हैं, तो मैं एक चलती हुई नमूना गणना का उपयोग करूंगा जो एक चलती हुई खिड़की पर सफेदी करता है। सुनिश्चित करें कि आपके पास आपके वाइटनिंग के सटीक होने के लिए पर्याप्त सैंपल हैं (वाइटनिंग को कोविर्सियस मैट्रिक्स की आवश्यकता है जो उल्टा हो और इसके लिए आपको अपने सेंसरों की तुलना में अधिक लौकिक नमूनों की आवश्यकता है)।

अब यदि आपका डेटा असमान नहीं है, तो मैं शायद यह देखने के लिए डेटा को क्लस्टर करूंगा कि मोड कहाँ रहते हैं। बहुत ही मूल में, प्रत्येक नए बिंदु के आने के लिए, मैं इसे उचित क्लस्टर में स्थापित कर दूंगा और वहां से चला जाऊंगा।

2. पिछले बिंदुओं से प्रभावी रूप से दूरी मापने के लिए, मैं महालनोबिस दूरी का उपयोग करूंगा । सभी वास्तविकताओं में, महालनोबिस दूरी सफेद स्थान में यूक्लिडियन दूरी से बहुत अधिक है।

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.