मुख्य सामग्री पर जाएँ

टाइम सीरीज़ डिकम्पोज़िशन: ट्रेंड, सीज़नैलिटी, और नॉइज़ को समझें

ऐडिटिव और मल्टिप्लिकेटिव मॉडल्स का उपयोग करके ट्रेंड, सीज़नैलिटी और रेजिडुअल्स जैसे अर्थपूर्ण घटकों में टाइम सीरीज़ डेटा को कैसे बाँटा जाए, सीखें। क्लासिकल और STL—दोनों तरीकों के बारे में जानें। सीज़नल समायोजन करें और डिकम्पोज़िशन मॉडल्स के साथ फ़ोरकास्टिंग का अभ्यास करें।
· 8 मि॰ पढ़ें

AI के साथ खोजें

डिकम्पोज़िशन डेटा विज्ञान में सबसे रोचक चीज़ों में से एक है। मूल रूप से, डिकम्पोज़िशन का मतलब किसी जटिल चीज़ को अधिक सरल, अधिक व्याख्यायोग्य भागों में बाँटना है। यह किसी मैट्रिक्स, मॉडल या सिग्नल पर लागू हो सकता है। 

क्योंकि यह एक सामान्य अवधारणा है, इसके कई रूप हो सकते हैं। रैखिक बीजगणित में QR डिकम्पोज़िशन, ईजेनडिकम्पोज़िशन, सिंगुलर वैल्यू डिकम्पोज़िशन और चोलस्की डिकम्पोज़िशन जैसे तरीके हैं। अन्य क्षेत्रों में फूरिएर ट्रांसफ़ॉर्म, प्रिंसिपल कंपोनेंट एनालिसिस, और यहाँ तक कि LDA जैसी विधियों से टॉपिक मॉडलिंग भी है। रिग्रेशन मॉडल्स में विविधता को सम ऑफ स्क्वेयर्स घटकों: SST, SSR, और SSE में बाँटा जा सकता है। हम डिसीजन ट्रीज़ को भी डिकम्पोज़िशन के एक रूप के रूप में देख सकते हैं। 

यहाँ, हम अपनी पसंदीदा चीज़ों में से एक: टाइम सीरीज़ डिकम्पोज़िशन की समीक्षा करेंगे। यदि अंत तक हमने आपकी जिज्ञासा बढ़ा दी, तो प्रोफेसर Rob Hyndman के साथ हमारा Forecasting in R कोर्स करें।

टाइम सीरीज़ डिकम्पोज़िशन क्या है?

टाइम सीरीज़ डिकम्पोज़िशन एक ऐसी विधि है जिसके द्वारा टाइम सीरीज़ को ट्रेंड या ट्रेंड-साइकल, सीज़नैलिटी, और रेजिडुअल्स नामक अलग-अलग घटकों में बाँटा जाता है। टाइम सीरीज़ डिकम्पोज़िशन का उद्देश्य अंतर्निहित पैटर्न को बेहतर समझना और पूर्वानुमान की सटीकता में सुधार करना है।

टाइम सीरीज़ के घटक क्या हैं?

आइए टाइम सीरीज़ के घटकों पर नज़र डालते हैं। विचार को समझने का यह शायद सबसे अच्छा तरीका है।

ट्रेंड घटक

टाइम सीरीज़ का ट्रेंड (जैसा कि नाम से स्पष्ट है) दीर्घकालिक चाल है। यह कहना चाहिए कि ट्रेंड घटक को अक्सर ट्रेंड-साइकल के रूप में भी समझा जाता है, जहाँ साइकल लंबे, अनियमित पैटर्न होते हैं। कार बिक्री को ऐतिहासिक रूप से सात साल के चक्रों में चलने वाला माना जाता था (किसी भी कारण से), हालाँकि संभवतः अब, इलेक्ट्रिक कारों की ओर रुझान के साथ, ऐसा नहीं है।

ट्रेंड से लोग आमतौर पर यह बड़ी सीख लेते हैं: क्या डेटा दीर्घकाल में बढ़ रहा है, घट रहा है, या स्थिर है? पिछले कुछ दशकों में महासागरों के तापमान में वैश्विक वृद्धि एक स्पष्ट (पढ़ें: बुरा) ट्रेंड है।

सीज़नल घटक

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

सीज़नैलिटी के बारे में बात यह है कि यह दिखने से अधिक जटिल हो सकती है। सोचिए कि साल में हफ्तों की संख्या पूर्णांक नहीं है (~52.18)। या सोचिए कि महीने बराबर दूरी पर नहीं हैं: फ़रवरी में 28 (या 29) दिन होते हैं, लेकिन जुलाई में हमेशा 31 होते हैं।

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

रेजिडुअल / अनियमित / शेष घटक

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

टाइम सीरीज़ डिकम्पोज़िशन मॉडल्स

अब जबकि हमने टाइम सीरीज़ के घटकों को कवर कर लिया है, यह भी बताना चाहिए कि वास्तव में टाइम सीरीज़ डिकम्पोज़िशन के दो सामान्य प्रकार होते हैं। हम ऐडिटिव मॉडल से शुरू करेंगे।

ऐडिटिव डिकम्पोज़िशन

यह रहा ऐडिटिव डिकम्पोज़िशन का सूत्र:

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

मल्टिप्लिकेटिव डिकम्पोज़िशन

यह रहा मल्टिप्लिकेटिव डिकम्पोज़िशन का सूत्र। इस संस्करण में गुणा के चिह्नों पर ध्यान दें। 

हम मल्टिप्लिकेटिव मॉडल तब उपयोग करते हैं जब सीज़नल परिवर्तन ट्रेंड के साथ स्केल करता है। यानी, जब आप देखते हैं कि जैसे-जैसे संपूर्ण श्रृंखला ऊपर या नीचे जाती है, वैसे-वैसे सीज़नल प्रभावों का आकार भी बड़ा होता जाता है। हम यहाँ वास्तव में हेटेरोस्केडैस्टिसिटी के एक रूप का वर्णन कर रहे हैं।

टाइम सीरीज़ डिकम्पोज़िशन तकनीकें

अब तक, हमने देखा कि टाइम सीरीज़ डिकम्पोज़िशन में क्या-क्या आता है और इसके दो मुख्य सामान्य प्रकार कौन से हैं। आगे बढ़ते हुए, हमें दो सबसे आम तरीकों के बारे में बात करनी है। प्रत्येक को ऐडिटिव या मल्टिप्लिकेटिव मॉडल के रूप में लागू किया जा सकता है। 

क्लासिकल डिकम्पोज़िशन

क्लासिकल डिकम्पोज़िशन समझने में आसान है। यह 1920 के दशक का है, लेकिन आज भी प्रासंगिक है। क्लासिकल डिकम्पोज़िशन दिखाने के लिए, आइए Excel का उपयोग करें। क्लासिकल डिकम्पोज़िशन, जैसे STL जिसे हम आगे दिखाएँगे, ऐडिटिव या मल्टिप्लिकेटिव मॉडल—दोनों के साथ किया जा सकता है। इस उदाहरण के लिए, हम एक ऐडिटिव संस्करण बनाएँगे।

यदि आप स्वयं आज़माना चाहते हैं, तो Kaggle पर उपलब्ध इस बहुत रोचक कॉफी बिक्री डेटासेट में index_1 CSV का इस्तेमाल करें। आपके संदर्भ के लिए, हमने बिक्री को दिन के आधार पर एग्रीगेट व समरीज़ किया है।

  • पहला, हम ट्रेंड-साइकल की गणना करते हैं। हम एक साप्ताहिक सीज़नैलिटी पहचान रहे हैं, और सप्ताह में सात दिन होते हैं, तो सीज़नल अवधि विषम है, जिसका मतलब है कि हमारी मूविंग एवरेज को सममित विंडो से केंद्रित किया जाना चाहिए। यानी, 7-दिन की मूविंग एवरेज। Excel शीट में एलाइनमेंट और सेंटरिंग का ध्यान रखें।

  • अगला, हम मूल श्रृंखला से ट्रेंड घटाकर डी-ट्रेंडेड श्रृंखला पाते हैं।

  • फिर, सीज़नल घटक पाने के लिए, हम प्रत्येक सीज़नल अवधि के लिए डी-ट्रेंडेड मानों का औसत लेते हैं। एक महत्वपूर्ण जोड़: आप देखेंगे कि सीज़नल घटक का योग संभवतः ठीक-ठीक शून्य नहीं होगा। इसे नॉर्मलाइज़ेशन से समायोजित करना सुनिश्चित करें:

    • अपने सीज़नल घटक का औसत निकालें।

    • हर सीज़नल मान से सीज़नल औसत घटाएँ।

  • अंत में, शेष के लिए, हम मूल श्रृंखला से ट्रेंड और सीज़नल अवधि घटाते हैं। 

classical additive time series decomposition in Excel

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

STL डिकम्पोज़िशन 

STL डिकम्पोज़िशन, जिसका अर्थ है LOESS का उपयोग करके सीज़नल और ट्रेंड डिकम्पोज़िशन, डिकम्पोज़िशन का एक अधिक आधुनिक संस्करण है। इसे समझाना कुछ कठिन है, लेकिन यह आम तौर पर क्लासिकल विधि से अधिक लचीला होता है। STL एक विधि LOESS का उपयोग करता है, जो डेटा के छोटे-छोटे ओवरलैपिंग हिस्सों पर सरल रिग्रेशन मॉडल फिट करता है। यह स्थानीय रूप से वेटेड रिग्रेशन लागू कर ट्रेंड और सीज़नल घटकों को अलग-अलग पृथक करता है।

यह विधि क्लासिकल डिकम्पोज़िशन की खास कमियों को संबोधित करती है, यानी क्लासिकल संस्करण में पहली और आखिरी ऑब्ज़र्वेशन के लिए ट्रेंड-साइकल या शेष के आकलन उपलब्ध नहीं होते। आप इसे ऊपर Excel की खाली जगहों में, पंक्तियाँ 3, 4, 5 और 20, 21, 22 में देख सकते हैं।

यह भी कहना चाहिए कि क्लासिकल डिकम्पोज़िशन द्वारा पहचाना गया ट्रेंड-साइकल तेज़ी से होने वाले उतार-चढ़ाव को समतल कर देता है, इसलिए यह श्रृंखला में हो रही महत्वपूर्ण बातों को नज़रअंदाज़ कर सकता है। अंततः, क्लासिकल डिकम्पोज़िशन यह मानकर चलता है कि एक मौसमी पैटर्न है, लेकिन पर्याप्त डेटा होने पर, हम कभी-कभी मौसमी पैटर्न को बदलते हुए देख सकते हैं।

आइए मूल श्रृंखला का टाइम प्लॉट बनाकर शुरू करें। पहले की तरह, पहले चरण में, हम Kaggle डेटासेट को एग्रीगेट और समरीज़ करते हैं ताकि मनचाही श्रृंखला मिल सके।

coffee_sales_data <- read.csv("/Users/x/Desktop/index_1.csv")
coffee_sales_data <- as.data.frame(coffee_sales_data)
library(dplyr)
library(ggplot2)

coffee_sales_data |>
  group_by(date) |>
  summarize(money = sum(money)) |>
  ggplot(aes(x = as.Date(date), y = money)) +
  geom_line(color = '#01ef63') +
  labs(title = "Coffee Sales") +
  labs(subtitle = "Time series")

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

coffee_sales_data |>
  group_by(date) |>
  summarize(money = sum(money)) |>
  mutate(date = as.Date(date)) |>
  as_tsibble() |>
  filter(date > '2024-02-28') |>
  filter(date < '2024-05-01') |>
  model(
      STL(money ~ season(window = "periodic"))
  ) |>
  components() |>
  autoplot(color = '#203147') +
  labs(title = "Coffee Sales") +
  labs(subtitle = "Classical additive decomposition")

coffee_sales_data |>
  group_by(date) |>
  summarize(money = sum(money)) |>
  mutate(date = as.Date(date)) |>
  as_tsibble() |>
  filter(date > '2024-02-28') |>
  filter(date < '2024-05-01') |>
  model(
      STL(money ~ season(window = "periodic"))
  ) |>
  components() -> ts_components

ts_components |>
  autoplot(color = '#203147') +
  labs(title = "Coffee Sales") +
  labs(subtitle = "Classical additive decomposition")

ध्यान दें कि, क्लासिकल डिकम्पोज़िशन के विपरीत, हमें जो डेटा फ़्रेम वापस मिलता है, उसमें शुरुआत या अंत में कोई गैप नहीं हैं।  

print(ts_components)

STL डिकम्पोज़िशन में भी कुछ कमियाँ हैं, और यदि आप रुचि रखते हैं, तो हमने वह जानकारी अपने FAQs में जोड़ दी है। 

टाइम सीरीज़ डिकम्पोज़िशन और सीज़नल समायोजन

अक्सर, डेटा का एक सीज़नली-एडजस्टेड संस्करण बनाना उपयोगी होता है। टाइम सीरीज़ डिकम्पोज़िशन इसमें मदद करता है। सीज़नली-एडजस्टेड संस्करण बनाने के लिए, हम सरलता से ट्रेंड और शेष घटकों को जोड़ देते हैं। या फिर, हम मूल श्रृंखला से सीज़नल घटक घटा सकते हैं; दोनों से एक ही परिणाम मिलेगा।

seasonally_adjusted <- components |>
  mutate(seasonally_adjusted = money - season_week)

season_adjust_data <- seasonally_adjusted |>
  select(date, money, season_adjust) |>
  pivot_longer(cols = c(money, season_adjust), names_to = "series", values_to = "value")

season_adjust_data |>
  autoplot() + facet_wrap(~series) +
  scale_color_manual(values = c(
    "money" = '#203147',          # blue
    "season_adjust" = '#01ef63'   # orange
  )) +
  facet_wrap(~series) +
  labs(title = "Coffee Sales: Original vs Seasonally Adjusted")

हम पा रहे हैं कि इस विशेष डेटासेट में सीज़नैलिटी बहुत मज़बूत नहीं है, जो अपने आप में दिलचस्प है।

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

टाइम सीरीज़ डिकम्पोज़िशन और फ़ोरकास्टिंग

यह सुनकर आपको आश्चर्य हो सकता है कि टाइम सीरीज़ डिकम्पोज़िशन फ़ोरकास्टिंग में भी सहायक होता है। हम इसे दो मुख्य तरीकों से सोचते हैं। पहला, हम यह समझना चाहते हैं कि हमारी टाइम सीरीज़ के घटक क्या हैं ताकि हम तय कर सकें कि कौन सा फ़ोरकास्टिंग मॉडल उपयोग करना चाहिए। यदि हमें मज़बूत सीज़नैलिटी दिखे, तो हम Holt-Winters एक्सपोनेंशियल स्मूदिंग या ETS तरीकों जैसे मॉडलों की ओर झुक सकते हैं, जो विशेष रूप से ट्रेंड और सीज़नल घटकों—दोनों—को संभालने के लिए बने हैं।

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

यहाँ, हम सीज़नली-एडजस्टेड डेटा का पूर्वानुमान लगाने के लिए एक साधारण ARIMA मॉडल बनाते हैं। 

season_adjust_data_filtered <- season_adjust_data |>
  filter(series == "season_adjust") |>
  as_tsibble(index = date)

seasonal_adjust_arima_model <- season_adjust_data_filtered |>
  model(
    ARIMA(value)
  )

seasonal_adjust_arima_model |>
  forecast(h = "14 days") |>  
  autoplot(season_adjust_data_filtered, color = '#01ef63') +
  labs(title = "Forecast of Seasonally Adjusted Coffee Sales",
       subtitle = "Simple ARIMA Model",
       y = "Money (Seasonally Adjusted)",
       x = "Date")

हम सीज़नली-एडजस्टेड श्रृंखला का फ़ोरकास्ट कर के उसमें सीज़नल घटक वापस भी जोड़ सकते हैं, जो प्रभावी रूप से हमें एक सीज़नल फ़ोरकास्ट देता है। यह सब हमारी मूल डिकम्पोज़िशन के कारण संभव हुआ है।

# Build tagged historical and forecast data
historical_data <- components |>
  as_tibble() |>
  select(date, money) |>
  mutate(source = "historical")

forecast_data <- final_forecast |>
  as_tibble() |>
  transmute(date, money = money_forecast) |>
  mutate(source = "forecast")

# Bind and create tsibble
full_data <- bind_rows(historical_data, forecast_data) |>
  as_tsibble(index = date, validate = FALSE)

# Plot with color by source
full_data |>
  ggplot(aes(x = date, y = money, color = source)) +
  geom_line() +
  scale_color_manual(values = c(
    "historical" = "#203147",   # dark blue for real data
    "forecast" = "#01ef63"      # green for forecast
  )) +
  labs(
    title = "Coffee Sales: Actual and Forecast",
    subtitle = "Historical vs Forecast",
    y = "Money",
    x = "Date"
  )

अंतिम विचार

आशा है आपको टाइम सीरीज़ डिकम्पोज़िशन पर हमारा लेख पसंद आया होगा! याद रखें कि डिकम्पोज़िशन टाइम सीरीज़ विश्लेषण का सिर्फ़ एक हिस्सा है, इसलिए विशेषज्ञ बनने के लिए, प्रोफेसर Rob Hyndman के साथ हमारे Forecasting in R कोर्स में नामांकन करें, जिन्होंने हमारे विज़ुअल्स के लिए उपयोग किए गए R पैकेज विकसित करने में मदद की। यदि आपको इस लेख के विचार रोचक लगे हों लेकिन आप Python पसंद करते हों, तो हमारा Visualizing Time Series Data in Python कोर्स भी है, जो इस तरह के कार्य के लिए बेहतरीन है। 

Laiba Siddiqui

लेखक

Laiba Siddiqui

मैं एक कंटेंट स्ट्रैटेजिस्ट हूँ जिसे जटिल विषयों को सरल बनाना पसंद है। मैंने Splunk, Hackernoon, और Tiiny Host जैसी कंपनियों को अपने दर्शकों के लिए आकर्षक और सूचनात्मक सामग्री बनाने में मदद की है।

FAQs

टाइम सीरीज़ डिकम्पोज़िशन क्या है?

टाइम सीरीज़ डिकम्पोज़िशन वह प्रक्रिया है जिसमें टाइम सीरीज़ को तीन व्याख्यायोग्य घटकों में बाँटा जाता है: ट्रेंड, सीज़नैलिटी, और रेजिडुअल्स (या अनियमित घटक)। ट्रेंड दीर्घकालिक प्रगति दिखाता है, सीज़नल घटक दोहराए जाने वाले अल्पकालिक चक्रों को पकड़ता है, और रेजिडुअल रैंडम नॉइज़ या अप्रत्याशित घटनाओं को दर्शाता है। डिकम्पोज़िशन विश्लेषकों को डेटा की संरचना बेहतर समझने में मदद करता है और प्रत्येक घटक का अलग-अलग मॉडलिंग कर पूर्वानुमान में सुधार ला सकता है।

क्लासिकल डिकम्पोज़िशन की शुरुआत और अंत में मान गायब क्यों होते हैं?

केंद्रित मूविंग एवरेज के लिए प्रत्येक बिंदु के चारों ओर सममित डेटा चाहिए। 7-दिन की मूविंग एवरेज में, आप पहले तीन या अंतिम तीन दिनों के लिए केंद्रित मान की गणना नहीं कर सकते। परिणामस्वरूप, क्लासिकल डिकम्पोज़िशन किनारों पर आकलन नहीं देता, जिससे सीमाओं पर ट्रेंड, सीज़नल और रेजिडुअल घटकों में गैप रह जाते हैं।

मुझे ऐडिटिव बनाम मल्टिप्लिकेटिव डिकम्पोज़िशन कब उपयोग करना चाहिए?
  • जब ऐडिटिव डिकम्पोज़िशन का उपयोग करें जब सीज़नल उतार-चढ़ाव लगभग स्थिर हों।
  • जब मल्टिप्लिकेटिव डिकम्पोज़िशन का उपयोग करें जब सीज़नल घटक ट्रेंड के साथ बढ़ता या घटता हो, यानी प्रभाव डेटा के स्तर के साथ स्केल करता हो। यह अक्सर हेटेरोस्केडैस्टिक टाइम सीरीज़ (जिनमें वैरिएंस स्थिर नहीं होती) में होता है।

क्या मैं ऐडिटिव और मल्टिप्लिकेटिव डिकम्पोज़िशन के बीच स्विच कर सकता/सकती हूँ?

हाँ। एक आम तरीका है कि श्रृंखला को लॉग-ट्रांसफ़ॉर्म करें और ऐडिटिव डिकम्पोज़िशन लागू करें। यह मूल स्केल पर मल्टिप्लिकेटिव मॉडल के गणितीय समकक्ष होता है। इससे मॉडलिंग सरल हो सकती है और वैरिएंस स्थिर हो सकती है।

क्या डिकम्पोज़िशन के रेजिडुअल्स हमेशा गॉसियन वितरण का पालन करते हैं?

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

क्लासिकल डिकम्पोज़िशन की कमियाँ क्या हैं?

क्लासिकल डिकम्पोज़िशन की कई सीमाएँ हैं:

  • एज इफ़ेक्ट्स: जैसा कि बताया गया, यह श्रृंखला की शुरुआत या अंत में ट्रेंड-साइकल या रेजिडुअल्स का आकलन नहीं कर सकता।

  • स्थिर सीज़नैलिटी: यह मान लेता है कि सीज़नल पैटर्न स्थिर हैं और समय के साथ नहीं बदलते।

  • आउट्लायर के प्रति संवेदनशीलता: क्योंकि यह मूविंग एवरेज और सरल औसत पर आधारित है, यह चरम मानों से अधिक विकृत हो सकता है।

  • सीमित लचीलापन: यह पूर्वनिर्धारित स्मूदिंग नियमों का उपयोग करता है और गैर-मानक पैटर्न के लिए अच्छी तरह अनुकूल नहीं हो पाता।

STL डिकम्पोज़िशन क्लासिकल डिकम्पोज़िशन से बेहतर क्यों है?

STL कई क्लासिकल डिकम्पोज़िशन सीमाओं को संबोधित करता है:

  • जहाँ पैटर्न समय के साथ बदलते हैं, वहाँ अस्थिर सीज़नैलिटी को संभालता है।

  • सीमाओं पर आकलन देता है, जिससे किनारों पर मान गायब नहीं रहते।

  • उपयोगकर्ता-परिभाषित स्मूदिंग पैरामीटर्स की अनुमति देता है, जिससे प्रत्येक घटक को कितना स्मूथ करना है, इस पर अधिक नियंत्रण मिलता है।

  • मज़बूत फिटिंग विकल्पों के साथ आउट्लायर के प्रति मज़बूत होता है।

क्या STL डिकम्पोज़िशन की कोई सीमाएँ हैं?

हाँ। STL अधिक लचीला है, फिर भी कुछ सावधानियाँ हैं:

  • STL केवल ऐडिटिव डिकम्पोज़िशन को सपोर्ट करता है, मल्टिप्लिकेटिव को नहीं। यदि मल्टिप्लिकेटिव व्यवहार मौजूद हो, तो लॉग ट्रांसफ़ॉर्मेशन चाहिए।

  • उत्तम परिणामों के लिए सीज़नल और ट्रेंड विंडोज़ की पैरामीटर ट्यूनिंग की आवश्यकता होती है।

  • यह आवधिक सीज़नैलिटी मानता है, जो बिना समायोजन के अनियमित या बदलती सीज़नल अवधियों को अच्छी तरह कैप्चर नहीं कर सकता।

STL डिकम्पोज़िशन में LOESS क्या है?

LOESS (Locally Estimated Scatterplot Smoothing) एक प्रकार का लोकल रिग्रेशन है, जिसका उपयोग STL डिकम्पोज़िशन में डेटा के उपसमुच्चयों के माध्यम से स्मूद कर्व्स का अनुमान लगाने के लिए किया जाता है। एक ही ग्लोबल ट्रेंड फिट करने के बजाय, LOESS ओवरलैपिंग विंडोज़ में कई छोटे, सरल रिग्रेशन्स फिट करता है। फिर इन स्थानीय फ़िट्स को मिलाकर ट्रेंड और सीज़नल घटकों के स्मूद आकलन बनाए जाते हैं। यह LOESS को टाइम सीरीज़ डेटा में क्रमिक बदलावों और अनियमित पैटर्न को पकड़ने के लिए विशेष रूप से उपयोगी बनाता है।

टाइम सीरीज़ विश्लेषण में मूविंग एवरेज क्या है?

एक मूविंग एवरेज टाइम सीरीज़ डेटा में अल्पकालिक उतार-चढ़ाव को कम करने और दीर्घकालिक ट्रेंड को उजागर करने के लिए उपयोग की जाने वाली स्मूदिंग तकनीक है। यह एक निश्चित विंडो (जैसे 7 दिन या 12 महीने) के मानों का औसत लेकर काम करता है, जो श्रृंखला के साथ "मूव" करती है। उदाहरण के लिए, 7-दिन का मूविंग एवरेज प्रत्येक बिंदु को उसके पहले और बाद के तीन दिनों के साथ औसत कर स्मूथ करता है। मूविंग एवरेज का उपयोग क्लासिकल डिकम्पोज़िशन में अक्सर ट्रेंड घटक का अनुमान लगाने के लिए किया जाता है।

डिकम्पोज़िशन मॉडल क्या है?

डिकम्पोज़िशन मॉडल एक तरीका है जिसके द्वारा टाइम सीरीज़ को अलग-अलग भागों में तोड़ा जाता है, जिनमें से हर भाग डेटा में एक अलग प्रकार के पैटर्न की व्याख्या करता है। इन भागों में सामान्यतः ट्रेंड (दीर्घकालिक दिशा), सीज़नैलिटी (दोहराए जाने वाले अल्पकालिक चक्र), और रेजिडुअल्स (रैंडम नॉइज़ या अनियमित घटनाएँ) शामिल होते हैं। डिकम्पोज़िशन मॉडल के दो मुख्य प्रकार होते हैं: ऐडिटिव, जहाँ भागों को जोड़कर मिलाया जाता है, और मल्टिप्लिकेटिव, जहाँ भागों को गुणा कर मिलाया जाता है। चुनाव इस पर निर्भर करता है कि क्या सीज़नल बदलावों का आकार स्थिर रहता है या डेटा के समग्र स्तर के साथ बढ़ता-घटता है।

विषय