समय श्रृंखला मोटर डेटा को वर्गीकृत करने के लिए सर्वश्रेष्ठ एल्गोरिथ्म


9

मैं एक मशीन नियंत्रण परियोजना पर काम कर रहा हूं। हम ऑपरेशन के दौरान मोटर की वर्तमान को माप सकते हैं। सफलतापूर्वक संचालन करने वाले दो मोटर्स से नमूना डेटा नीचे है। लाल ट्रेस एक मोटर से करंट को दिखाता है, नीला दूसरे से करंट को ट्रेस करता है। मैं मशीन व्यवहार के साथ समस्याओं की पहचान करने के लिए एक एल्गोरिथ्म के साथ प्रयास करना चाहता हूं। समस्याएं अत्यधिक उच्च मोटर करंट हो सकती हैं, शून्य मोटर करंट के पास, ऑपरेशन के अंत में वर्तमान में वृद्धि, सामान्य से कम समय श्रृंखला, सामान्य रूप से कुछ भी जो नीचे एक विशिष्ट ऑपरेशन की तरह नहीं दिखता है। क्या कोई इसे प्राप्त करने के लिए एक अच्छा एल्गोरिदम सुझा सकता है? मैं केवल एक परिचित हूं जो एक तंत्रिका नेटवर्क है। मैंने मोटर धाराओं पर वास्तविक डेटा की एक एक्सेल फाइल रखी है

मोटर धाराओं - अच्छा संचालन मोटर धाराएं - ऑपरेशन के अंत में जाम


संभवतः एसई साइट के लिए अधिक उपयुक्त है, क्योंकि इसमें एक समय श्रृंखला की विसंगति का पता लगाने और सांख्यिकीय मॉडलिंग शामिल है। उत्तरजीविता विश्लेषण एक भूमिका निभा सकता है, हालांकि यह सवाल से स्पष्ट नहीं है।
इटरेटर

क्या आप एक "समस्या" की छवि पोस्ट कर सकते हैं? एक विचार एक "आदर्श ऑपरेशन" (लाल रेखा की तरह) और "वास्तविक ऑपरेशन" (नीली रेखा) के बीच की दूरी की गणना करना होगा। यदि कोई भी बिंदु "आदर्श संचालन" से बहुत दूर है तो इसे एक समस्या के रूप में चिह्नित करें।
जच

1
+1 यह एक महत्वपूर्ण विचार है: व्यवहार को चिह्नित करने के लिए एप्लिकेशन-विशिष्ट ज्ञान का उपयोग करें । यह किसी भी विशुद्ध रूप से सांख्यिकीय तकनीक की तुलना में कहीं अधिक शक्तिशाली और शक्तिशाली होगा जो संभवतः हो सकता है। सांख्यिकी तब डेटा को "बेसलाइन" या आदर्श श्रृंखला से तुलना करने के तरीके की पेशकश कर सकती है ।
whuber

एक सैद्धांतिक या आदर्श का उपयोग करने के इस विचार को आसानी से एक ट्रांसफर फंक्शन मॉडल में एक भविष्यवक्ता / कारण / दाएं हाथ की समर्थन श्रृंखला के रूप में शामिल किया जा सकता है जो तब मेरे उत्तर में वर्णित परिवर्तन बिंदु पहचान जानकारी प्राप्त करेगा।
आयरिशस्टैट

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

जवाबों:


4

मेरा दृष्टिकोण डेटा के लिए एक ARIMA मॉडल बनाने और फिर अप्रत्याशित "चीजों" के बारे में प्रारंभिक चेतावनी प्रदान करने के लिए विभिन्न "परिवर्तन-बिंदु पहचान योजनाओं" को नियोजित करने के लिए है। इन योजनाओं में शामिल होंगे

  1. पल्स / लेवल शिफ्ट्स / लोकल टाइम ट्रेंड्स की मौजूदगी / शुरुआत का पता लगाना यानी समय के साथ त्रुटियों के माध्यम में बदलाव
  2. समय के साथ मापदंडों में परिवर्तनों की उपस्थिति / शुरुआत का पता लगाना
  3. समय के साथ अवशिष्ट के परिवर्तन में उपस्थिति / शुरुआत की पहचान करना

यदि आप वास्तव में आपकी किसी एक श्रृंखला को पोस्ट करना चाहते हैं तो हम वास्तव में आपको इस तरह का विश्लेषण दिखा सकते हैं जो इस विचार को "बाहर" कर सकता है कि चीजें बदल रही हैं या काफी बदल गई हैं।



3

हिडन मार्कोव मॉडल

मॉडलिंग टाइम सीरीज़ डेटा के लिए सबसे अच्छे तरीकों में से एक हिडन मार्कोव मॉडल (HMM) है। आप या तो अपने ज्ञात गैर-समस्या राज्य का एक एकल मॉडल बना सकते हैं, अपनी ज्ञात समस्या के प्रत्येक राज्य के अलग-अलग मॉडल या, यदि आपके पास पर्याप्त डेटा है, तो आपके सभी ज्ञात समस्या राज्यों का एक एकल संयुक्त मॉडल है। एक अच्छा खुला स्रोत पुस्तकालय Matlab के लिए हिडन मार्कोव मॉडल टूलबॉक्स है।

http://www.cs.ubc.ca/~murphyk/Software/HMM/hmm.html

कलमन फ़िल्टर

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

http://www.cs.ubc.ca/~murphyk/Software/Kalman/kalman.html

बायेसियन मॉडल

इन दोनों दृष्टिकोणों को बायेसियन मॉडल माना जाता है। एक अच्छा खुला स्रोत पुस्तकालय मटलब के लिए बेस नेट टूलबॉक्स है।

http://code.google.com/p/bnt

मुझे उम्मीद है कि यह आपके लिए काम करेगा।

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