किसी समय श्रृंखला के लिए एक मॉडल को कैसे फिट किया जाए जिसमें आउटलेर शामिल हों


9

मैंने auto.arima()आर में फंक्शन का उपयोग करके ARIMA (5,1,2) मॉडल फिट किया है और आदेश को देखते हुए हम कह सकते हैं कि यह पूर्वानुमान करने के लिए सबसे अच्छा मॉडल नहीं है। यदि डेटा श्रृंखला में आउटलेयर मौजूद हैं, तो इस तरह के डेटा के लिए एक मॉडल को फिट करने की विधि क्या है?


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

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

जवाबों:


7

माइकल चेरिक आपको सही दिशा में इंगित करता है। मैं रूही त्से के काम को भी देखूंगा क्योंकि उन्होंने इस ज्ञान के शरीर को जोड़ा है। अधिक देखें यहाँ

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

ARIMA मॉडल को फिट करने का सबसे अच्छा तरीका है, यदि डेटा में आउटलेयर मौजूद हैं, तो प्रकृति की संभावित स्थितियों का मूल्यांकन करना है और उस दृष्टिकोण का चयन करना है जो किसी विशेष डेटा सेट के लिए इष्टतम माना जाता है। प्रकृति की एक संभावित स्थिति यह है कि एआरआईएमए प्रक्रिया समझाया भिन्नता का प्राथमिक स्रोत है। इस मामले में एक acf / pacf फ़ंक्शन के माध्यम से ARIMA प्रक्रिया को "अस्थायी रूप से पहचान" करेगा और फिर संभावित आउटलेयर के लिए अवशेषों की जांच करेगा। आउटलेयर्स पल्स हो सकते हैं, अर्थात, एक बार की घटनाएँ या मौसमी दालें जो कुछ आवृत्ति पर व्यवस्थित आउटलेयर द्वारा बेदखल की जाती हैं (जैसे, मासिक डेटा के लिए 12)। एक तीसरे प्रकार का बहिर्वाह होता है, जहां किसी में दालों का एक समुच्चय होता है, प्रत्येक में एक ही चिन्ह और परिमाण होता है, इसे एक चरण या स्तर परिवर्तन कहा जाता है। अस्थायी ARIMA प्रक्रिया से अवशिष्टों की जांच करने के बाद एक अस्थायी संयुक्त मॉडल बनाने के लिए एक समान रूप से पहचान की गई निर्धारक संरचना को अस्थायी रूप से जोड़ा जा सकता है। और न ही यदि भिन्नता का प्राथमिक स्रोत 4 प्रकार या "आउटलेयर" में से एक है, तो एक बेहतर इनिटियो (पहले) की पहचान करके और फिर इस "प्रतिगमन मॉडल" से अवशिष्ट का उपयोग करके स्टोचैस्टिक (एआरआईएमए) संरचना की पहचान करना बेहतर होगा। । अब इन दो वैकल्पिक रणनीतियों को और अधिक जटिल हो जाता है जब एक "समस्या" होती है जहां ARIMA पैरामीटर समय के साथ बदलते हैं या कई संभावित कारणों से समय के साथ त्रुटि भिन्नता बदल जाती है, संभवतः भारित वर्ग या बिजली परिवर्तन की आवश्यकता होती है जैसे लॉग / पारस्परिक, आदि। एक और जटिलता / अवसर यह है कि कैसे और कब उपयोगकर्ता की सुझाई गई भविष्यवक्ता श्रृंखला के योगदान को स्मृति, कारण और अनुभवजन्य रूप से पहचानी जाने वाली डमी श्रृंखला को सम्मिलित करते हुए एक समेकित रूप से तैयार किया जाए। यह समस्या तब और बढ़ जाती है जब किसी ने ट्रेंडिंग सीरीज़ को फॉर्म की इंडिकेटर सीरीज़ के साथ सर्वश्रेष्ठ रूप दिया हो0,0,0,0,1,2,3,4, , या और 0 जैसे स्तर बदलाव श्रृंखला के संयोजन । आप आर में ऐसी प्रक्रियाओं को लिखने और लिखने की कोशिश कर सकते हैं, लेकिन जीवन छोटा है। मुझे वास्तव में आपकी समस्या को हल करने में खुशी होगी और इस मामले में प्रदर्शित किया जाएगा कि प्रक्रिया कैसे काम करती है, कृपया डेटा पोस्ट करें या इसे sales@bobb.com पर भेजें1,2,3,4,5,n0,0,0,0,0,0,1,1,1,1,1


विदेशी मुद्रा दर / 18 = 765 मूल्यों के लिए डेटा / दैनिक डेटा प्राप्त करने / विश्लेषण करने के बाद अतिरिक्त टिप्पणी 1/1/2007 से शुरू होती है

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

डेटा का एक acf था:

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

प्रपत्र एक मॉडल और कई आउटलेयर की पहचान करने पर, अवशेषों का एसीएफ यादृच्छिकता को इंगित करता है क्योंकि एसीएफ मान बहुत छोटे होते हैं। AUTOBOX ने कई बाहरी लोगों की पहचान की:(1,1,0)(0,0,0)

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

अंतिम मॉडल:

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

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

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


@IrishStat: भविष्य में, क्या आप स्वरूपण विकल्पों का उपयोग कर सकते हैं? (लिंक डालने की सही कुंजी ctrl-l है, ctrl-c नहीं)।
user603

@ user603 मैं केवल एक ग्राफ विकल्प जोड़ रहा हूं। मुझे नहीं पता कि ctrl-l या cntrl-c से आपका क्या मतलब है। शायद आप मेरी मदद कर सकते हैं, कृपया मुझसे dave / @ / autobox.com पर संपर्क करें और शायद आप इसके माध्यम से मुझसे बात कर सकें / चल सकें।
आयरिशस्टैट

@IrishStat: यहाँ एक नज़र है
user603

@ user603 ठीक है, लेकिन मैं अभी भी नहीं जानता कि ctrl-l और cntrl-c से आपका क्या मतलब है। मैं छवि हस्तांतरण का उपयोग कर रहा था जहां मैं एक छवि सम्मिलित करने में सक्षम हूं। अगर मैं cntrl-g टाइप करता हूं तो मुझे सिर्फ एक खाली पॉप-अप स्क्रीन मिलती है।
आयरिशस्टैट

@IrishStat: यह ठीक है - लिंक की विधि ctrl-l :) से भी बेहतर है। पुनश्च: मेरा उद्देश्य आपको पाठ के प्रवाह के माध्यम से कटने वाले इन लंबे लिंक को छिपाकर, अपने उत्तर / टिप्पणियों को और अधिक आकर्षक, कॉस्मैटिक रूप से बनाने में मदद करना था। लिंक आपको बताता है कि कैसे प्राप्त करें।
user603

6

आर (अभी तक) में एरिमा फ़ंक्शन के लिए मजबूत समकक्ष का उपयोग करने के लिए कोई तैयार नहीं है ; एक प्रकट होना चाहिए, इसे यहां सूचीबद्ध किया जाएगा । हो सकता है कि एक विकल्प उन अवलोकनों को कम करने का है जो एक सरल अविभाज्य आउटलाइर डिटेक्शन नियम के संबंध में हैं, लेकिन मैं भारित एआरएमए प्रतिगमन को चलाने के लिए पैकेजों का उपयोग करने के लिए तैयार नहीं हूं। इसके बाद एक और संभावित विकल्प आउटलाइनिंग पॉइंट्स को जीतना होगा:

#parameters
para     <- list(ar=c(0.6,-0.48), ma=c(-0.22,0.24))
#original series
y1 <- y0 <- arima.sim(n=100, para, sd=sqrt(0.1796)) 
#outliers
out      <- sample(1:100, 20)               
#contaminated series
y1[out]  <- rnorm(20, 10, 1)                
plot( y1, type="l")
lines(y0, col="red")

यादृच्छिक संदूषण का उदाहरण

#winsorized series
y2      <- rep(NA, length(y1))
a1      <- (y1-median(y1)) / mad(y1)
a2      <- which(abs(a1)>3)
y2[-a2] <- y1[-a2]
for(i in 2:length(y2)){
   if(is.na(y2[i])){ y2[i] <- y2[i-1] }
}       

साफ श्रृंखला


एक नियम आधारित प्रक्रिया इस श्रृंखला के लिए काम करती है, जो लगभग 42 वर्षों से समय श्रृंखला के लिए देख रही है, सामान्य रूप से काम नहीं कर सकती है। एक साधारण श्रृंखला पर विचार करें, जिसमें एक ऑटो-प्रॉजेक्टिव प्रक्रिया हो, जैसे कि 1,9,9,1,9,9,9,9, 1,9,1,9 जहां 7 वां मान असाधारण है या सामान्य रूप से एक श्रृंखला है जिसमें कुछ अज्ञात रूप की मजबूत ऑटोप्रोजेक्टिव संरचना है या एक श्रृंखला जिसमें 1,2,1,1,1,2,1,1,1 हैं, 2,1,20,1,2,1,2,1,1,1,2,1,2,2,19,2,1,1,2,1,2,1,1,2,2, 2,21 एक मासिक श्रृंखला जिसमें कोई दाल नहीं है, एक अनिर्दिष्ट SEASONAL DUMMY है। 12,24 का पता लगाना, और 36 BAD के रूप में बच्चे को स्नान के पानी से बाहर निकालना होगा।
आयरिशस्टैट

आप जो कहते हैं वह सब सच है यानी आप एक बैंड-सहायता प्रदान कर रहे थे जो घाव के साथ मदद करेगा अगर 1) श्रृंखला स्थिर थी जो अन्य चीजों के बीच मानती है कोई स्तर शिफ्ट नहीं, कोई ट्रेंड एट अल, कोई एआरआईएमए संरचना; और 2) श्रृंखला को गैर-मौसमी होना चाहिए या पहले से मौसमी हो गया है; । यह मेरा अनुभव है कि इस तरह की धारणाएं शायद ही कभी पकड़ती हैं और उपयोगकर्ता आपके कैविएट को अनदेखा कर देते हैं क्योंकि वे समय की श्रृंखला के साथ कुश्ती करने की कोशिश करते हैं जिसमें "खामियां" होती हैं। यहाँ मेरी टिप्पणी तर्क
वितर्कपूर्ण

@IrishStat ओपी ने अपने सवाल को अद्यतन किया है और कहा है कि कोई भी मौसम नहीं है।
user603

क्या आप क्रिस्टोफ़ हैं?
आयरिशस्टैट

2

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

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

रोबस्ट फोरकास्टिंग के लिए प्रयुक्त सॉफ्टवेयर क्या है? क्या यह अविभाजित श्रृंखला के लिए उपयुक्त है?
एंथनी

@Anthony यह एक बहुत अच्छा सवाल है। मैंने कोई मजबूत टाइम सीरीज़ मॉडलिंग नहीं की है। खोदा मार्टिन ने कंपनी की स्थापना की जिसे वाइज कहा जाता है (उनके पास वास्तव में कई नाम chnages थे) जो SPlus का विपणन करते थे। मुझे पूरा यकीन है कि उन्होंने SPlus सॉफ्टवेयर में मजबूत मेथिड्स को शामिल किया है। आर में अब शायद एक संस्करण है। मैं इसमें जांच करूंगा। यहाँ एक विकिपीडिया लेख है जिसमें SPlus का इतिहास शामिल है। en.wikipedia.org/wiki/S-PLUS
माइकल आर। चेर्निक

@Anthony यहां पर एक श्रोत है जो रॉब हयंडमैन द्वारा आर सीरीज समय विश्लेषण पर उपलब्ध है। इसमें वह शामिल है जो CRAN में है और इसमें मजबूत फिल्टरिंग सहित कई तरह के तरीके शामिल हैं। cran.r-project.org/web/views/TimeSeries.html
माइकल आर। चेर्निक

2

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

यदि यह पूर्वानुमान के लिए है, तो आपको अपने आप से दो प्रश्न पूछने होंगे: क्या ये आउटलेयर फिर से होंगे? यदि वे करते हैं, तो क्या मुझे उनके लिए जिम्मेदार होना चाहिए?

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

इसलिए, आपके मॉडल का उद्देश्य आपके आउटलेर्स से निपटने के तरीके को प्रभावित करता है।

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