कैसे कई टाइम्स श्रृंखला को संभालना है?


15

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

क्या मुझे पता चल सकता है कि सभी 1200 उत्पादों की मांग की भविष्यवाणी के लिए एकल मॉडल को प्रशिक्षित करने की कोई विधि है? मैं आभारी रहूंगा यदि आप पायथन में किसी भी पुस्तकालय का सुझाव दे सकते हैं क्योंकि मैं पायथन का उपयोग कर रहा हूं।


3
उच्च-आयामी समय श्रृंखला विश्लेषण के लिए सबसे उन्नत पैकेज जो मुझे पता है bigtimeकि आर में है। शायद आप पायथन से आर को कॉल कर सकते हैं इसका उपयोग करने में सक्षम होने के लिए।
रिचर्ड हार्डी

जवाबों:


11

आम तौर पर जब आपके पास कई समय-श्रृंखला होती है, तो आप उन सभी को एक साथ मॉडल करने के लिए किसी प्रकार के वेक्टर-आधारित मॉडल का उपयोग करेंगे। इस उद्देश्य के लिए ARIMA मॉडल का प्राकृतिक विस्तार VARIMA (वेक्टर ARIMA) मॉडल है। तथ्य यह है कि आपके पास 1200 समय-श्रृंखला का मतलब है कि आपको मॉडल में क्रॉस-सहसंबंध की शर्तों पर कुछ भारी पैरामीट्रिक प्रतिबंधों को निर्दिष्ट करने की आवश्यकता होगी, क्योंकि आप समय-श्रृंखला चर के प्रत्येक जोड़ी के लिए मुफ्त मापदंडों से निपटने में सक्षम नहीं होंगे।

मैं कम डिग्री के साथ कुछ सरल वेक्टर-आधारित मॉडल (जैसे, VAR, VMA, VARMA) के साथ शुरू करने का सुझाव दूंगा और क्रॉस-सहसंबंध के लिए कुछ सरल पैरामीटर प्रतिबंध। देखें कि क्या आप एक उचित मॉडल पा सकते हैं जिसमें कम से कम एक डिग्री अंतराल के लिए क्रॉस-सहसंबंध शामिल है, और फिर वहां से जाएं। इस अभ्यास को वेक्टर-आधारित समय-श्रृंखला मॉडल पर पढ़ने की आवश्यकता होगी। MTSपैकेज और bigtimePacakage में R, मल्टीवेरिएट समय श्रृंखला से निपटने के लिए कुछ क्षमता है तो यह भी इन पैकेजों के साथ परिचित खुद के लायक हो जाएगा।


उच्च-आयामी समय श्रृंखला विश्लेषण के लिए सबसे उन्नत पैकेज जो मुझे पता है bigtimeकि आर में है। जहां तक ​​मुझे पता है MTS, यह एक वास्तविक कार्य उपकरण की तुलना में पाठ्यपुस्तक के उदाहरणों का अधिक प्रदर्शन है। कुछ बहुभिन्नरूपी उदाहरण केवल कम्प्यूटेशनल बोझ पर घुट से पहले 3-आयामी श्रृंखला को संभाल सकते हैं।
रिचर्ड हार्डी

@ रिचर्ड हार्डी: धन्यवाद --- मैंने इसे शामिल करने के लिए अपना उत्तर संपादित किया है।
मोनिका

1
इसके बारे में जाने का एक अच्छा तरीका एक बायेसियन VAR, या अधिक विशेष रूप से बड़े बायेशियन VAR मॉडल पर विचार करना होगा।
ग्रीम वाल्श

7

जैसा कि बेन ने उल्लेख किया है, कई समय श्रृंखला के लिए पाठ्य पुस्तक के तरीके VAR और VARIMA मॉडल हैं। अभ्यास में, हालांकि, मैंने उन्हें मांग के पूर्वानुमान के संदर्भ में अक्सर इस्तेमाल नहीं किया है।

बहुत अधिक सामान्य, जिसमें मेरी टीम वर्तमान में उपयोग करती है, पदानुक्रमित पूर्वानुमान है ( यहां भी देखें )। जब भी हमारे पास समान समय श्रृंखला के समूह होते हैं तो पदानुक्रमित पूर्वानुमान का उपयोग किया जाता है: समान या संबंधित उत्पादों के समूहों के लिए बिक्री इतिहास, भौगोलिक क्षेत्र के अनुसार शहरों के लिए पर्यटक डेटा, आदि ...

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

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

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

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

देखें यह प्रतिक्रिया (और टिप्पणियों) अतिरिक्त जानकारी के लिए।

पायथन पैकेज के लिए, PyAF उपलब्ध है लेकिन न ही बहुत लोकप्रिय है। अधिकांश लोग R में HTS पैकेज का उपयोग करते हैं , जिसके लिए बहुत अधिक सामुदायिक समर्थन है। LSTM आधारित दृष्टिकोणों के लिए, अमेज़ॅन का दीपर और MQRNN मॉडल हैं जो एक सेवा का हिस्सा हैं जिसके लिए आपको भुगतान करना होगा। कई लोगों ने केरस का उपयोग करने की मांग के लिए एलएसटीएम को भी लागू किया है, आप उन लोगों को देख सकते हैं।


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

अमेज़ॅन ने हाल ही में ग्लूंट्स फ्रेमवर्क के तहत डीप्ड एल्गोरिथ्म ओपन किया है, जो एमएक्सनेट फ्रेमवर्क का लाभ उठाता है, हालांकि मुझे इस बिंदु पर प्रलेखन की कमी है। aws.amazon.com/blogs/opensource/…
hardikudeshi

5

सुझाए गए मास-फिटिंग पैकेज के साथ समस्या यह है कि वे समान रूप से अव्यक्त नियतात्मक संरचना जैसे कि दालों, स्तर / कदम की शिफ्ट, मौसमी दालों और समय के रुझानों से निपटने में विफल हैं या कुशलतापूर्वक उपयोगकर्ता-सुझाए गए कारणों के अनुसार https: // के अनुसार काम करते हैं। autobox.com/pdfs/SARMAX.pdf

इसके अतिरिक्त गणना समय एक गंभीर जटिलता हो सकती है। AUTOBOX (जिसे मैंने विकसित करने में मदद की) का एक बहुत ही परिष्कृत मॉडल बिल्डिंग चरण है जो अभिलेखीय मॉडल और एक बहुत ही त्वरित पूर्वानुमान विकल्प है जो पहले से विकसित मॉडल का पुन: उपयोग करता है पूर्वानुमान मॉडल के विकास के छोटे से छोटे समय के लिए पूर्वानुमान के समय को कम करते हुए नए पूर्वानुमान को हाल ही में समायोजित करते हुए मॉडल विकसित होने और संग्रहीत होने के बाद देखे गए डेटा। यह मूल्य और मौसम को ध्यान में रखते हुए कुछ 50+ वस्तुओं के लिए एनेह्यूसर-बुस्च के 600,000 स्टोर पूर्वानुमान परियोजना के लिए लागू किया गया था।

मॉडल को रोलिंग फैशन में अपडेट किया जा सकता है, पूर्व मॉडल को आवश्यकतानुसार बदल सकते हैं।

पैरामीट्रिक प्रतिबंधों की कोई आवश्यकता नहीं है या VAR और VARIMA के रूप में कारण चर के एक साथ प्रभाव को पूरी तरह से छोड़ते हुए पूरी तरह से सभी श्रृंखलाओं के अतीत पर केवल एक ला ARIMA पर निर्भर है।

मॉडल के 1 सेट के साथ सिर्फ 1 मॉडल होने की आवश्यकता नहीं है क्योंकि मॉडल को व्यक्तिगत श्रृंखला के अनुरूप / अनुकूलित किया जाना चाहिए।

दुर्भाग्य से अभी तक कोई पायथन समाधान नहीं है, लेकिन आशा है कि अनन्त स्प्रिंग्स।


1
दिलचस्प लगता है। बस एक छोटी सी वक्रोक्ति: यहां तक ​​कि एक VAR के रूप में सरल कुछ में, प्रत्येक श्रृंखला का अपना समीकरण होता है, इसलिए मापदंडों के 1 सेट के साथ सिर्फ 1 मॉडल की आवश्यकता एक चिंता का विषय नहीं है। जब तक आप एक ही श्रृंखला के लिए कई मॉडल नहीं सुझाते हैं, जो पूर्वानुमान संयोजनों के परिप्रेक्ष्य से एक अच्छा विचार हो सकता है।
रिचर्ड हार्डी

उद्देश्य: "सभी 1200 उत्पादों की मांग की भविष्यवाणी के लिए एक एकल मॉडल को प्रशिक्षित करने के लिए?" मैंने लिया है कि शाब्दिक रूप से 1 प्रकार के समीकरण के साथ 1 सेट फिक्स्ड / वैश्विक पैरामीटर सभी 1200 समय श्रृंखला से अनुमानित है "। शायद मैंने इसे पढ़ा
आयरिशस्टैट।

या शायद मुझे वह गलत लगी।
रिचर्ड हार्डी

3

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

एक साधारण सहसंबंध विश्लेषण पर विचार करें। आपको सहसंयोजक / सहसंबंध मैट्रिक्स में (1200x1200 + 1200) / 2 कोशिकाओं की आवश्यकता होगी। आपके पास केवल 25 डेटा पॉइंट हैं। मैट्रिक्स रैंक को काफी हद तक कुशल होगा। तुम क्या करने वाले हो? मोटे तौर पर आपके पास दो सरल दृष्टिकोण हैं: अलग पूर्वानुमान और कारक मॉडल।

पहला दृष्टिकोण स्पष्ट है: आप प्रत्येक उत्पाद को स्वतंत्र रूप से चलाते हैं। भिन्नता उन्हें किसी विशेषता द्वारा वर्गीकृत करने के लिए है, जैसे कि "पुरुषों का समापन" जैसे क्षेत्र।

दूसरा तरीका उत्पाद की मांग का प्रतिनिधित्व करना है मैं=Σजेएफजेβजेमैं+मैं, कहाँ पे एफजेएक कारक है। कारक क्या हैं? ये जीडीपी विकास दर जैसे बहिर्जात कारक हो सकते हैं। या वे बहिर्जात कारक हो सकते हैं, उदाहरण के लिए जिन्हें आपने पीसीए विश्लेषण के साथ प्राप्त किया था।

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

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


मैं आपकी बात को बहुत कम समय की श्रृंखला के लिए 25 अवधियों के बारे में बताता हूं, लेकिन क्या होगा यदि वे मासिक मान हैं? फिर ओपी के पास दो साल का मासिक डेटा है, जो कुछ मौसमी को पकड़ने के लिए पर्याप्त है, या कम से कम सरल घातीय चौरसाई का उपयोग करने के लिए, नहीं?
स्कैंडर एच।

@ सेंडरएच।, 25 अंक एक श्रृंखला (यानी प्रत्येक श्रृंखला अपने दम पर), या कुल को चलाने के लिए पर्याप्त हो सकते हैं। मेरा कहना है कि इसे एक प्रणाली के रूप में चलाने के लिए पर्याप्त नहीं है।
अक्कल

या वे बहिर्जात कारक हो सकते हैं, उदाहरण के लिए जिन्हें आपने पीसीए विश्लेषण के साथ प्राप्त किया था। शायद अंतर्जात ?
रिचर्ड हार्डी

1

मुझे यकीन नहीं है कि अगर आप क्लाउड-आधारित समाधानों में रुचि रखते हैं, लेकिन अमेज़ॅन एक एल्गोरिथ्म बनाता है जिसे वे "दीपार" कहते हैं, जो एडब्ल्यूएस सेजमेकर के माध्यम से उपलब्ध है, जैसा कि यहां देखा गया है

यह एल्गोरिथ्म विशेष रूप से स्थैतिक और गतिशील सुविधाओं सहित पूर्वानुमान बनाने के लिए कई इनपुट समय श्रृंखला से सीखने में सक्षम होने का इरादा रखता है; जैसा कि ऊपर दिए गए लिंक से इस अंश में देखा गया है:

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

दुर्भाग्य से, जहां तक ​​मैं बता सकता हूं, वे इस एल्गोरिथ्म को ऑफ़लाइन / स्व-होस्टेड उपयोग के लिए उपलब्ध नहीं कराते हैं।

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