Prophet – Facebook का टाइम सीरीज़ फोरकास्टिंग: डेटा विश्लेषण की संपूर्ण गाइड
Prophet का परिचय
Prophet एक शक्तिशाली ओपन-सोर्स लाइब्रेरी है, जिसे Facebook (Meta) टीम ने टाइम सीरीज़ फोरकास्टिंग के लिए विकसित किया है। यह लाइब्रेरी वास्तविक व्यावसायिक समस्याओं को हल करने के लिए बनाई गई है, जहाँ डेटा में कमी, आउटलायर्स और जटिल सीज़नल पैटर्न हो सकते हैं।
Prophet की सबसे बड़ी खासियत यह है कि यह बिना गहरे सांख्यिकीय ज्ञान के भी जटिल समय-संबंधी पैटर्न को स्वचालित रूप से पहचान और मॉडल कर सकता है। यह इसे विश्लेषकों और डेटा वैज्ञानिकों के लिए एक सुलभ टूल बनाता है।
लाइब्रेरी के निर्माण और विकास का इतिहास
Prophet को पहली बार 2017 में Facebook Core Data Science Team के शोधकर्ताओं ने पेश किया था। यह लाइब्रेरी कंपनी की विभिन्न मीट्रिक्स की भविष्यवाणी करने के लिए बनाई गई थी, जैसे उपयोगकर्ता गतिविधि से लेकर इंफ्रास्ट्रक्चर प्लानिंग तक।
इसके मुख्य डेवलपर्स Sean Taylor और Ben Letham थे, जिन्होंने सांख्यिकीय सटीकता और व्यावहारिक उपयोगिता को एक साथ लाने का प्रयास किया। 2018 में R के लिए संस्करण जारी किया गया, और बाद में इसे Python पर पोर्ट किया गया।
गणितीय आधार और कार्य सिद्धांत
Prophet का एडिटिव मॉडल
ट्रेंड मॉडलिंग
Prophet दो प्रकार के ट्रेंड को सपोर्ट करता है:
लीनियर ट्रेंड: [ g(t) = (k + a(t)^T \delta) \cdot t + (m + a(t)^T \gamma) ]
लॉजिस्टिक ट्रेंड: [ g(t) = \frac{C(t)}{1 + \exp(-(k + a(t)^T \delta)(t - (m + a(t)^T \gamma)))} ]
जहाँ [ C(t) ] कैरिंग कैपेसिटी (अधिकतम क्षमता) है, [ k ] बेसिक ग्रोथ रेट है, और [ \delta ] ट्रेंड चेंज पॉइंट्स पर ग्रोथ रेट में बदलाव को दर्शाता है।
सीज़नल घटक
सीज़नलिटी को फूरियर सीरीज़ की मदद से मॉडल किया जाता है:
जहाँ [ P ] सीज़नलिटी की अवधि है और [ N ] हार्मोनिक्स (fourier_order) की संख्या है।
इंस्टॉलेशन और एनवायरनमेंट सेटअप
बेसिक इंस्टॉलेशन
pip install prophet
अतिरिक्त डिपेंडेंसी के साथ इंस्टॉलेशन
pip install prophet[plot]
pip install plotly # इंटरैक्टिव विज़ुअलाइज़ेशन के लिए
विभिन्न ऑपरेटिंग सिस्टम के लिए इंस्टॉलेशन
Windows:
pip install pystan
pip install prophet
macOS:
brew install gcc
pip install prophet
Linux (Ubuntu/Debian):
sudo apt-get install build-essential
pip install prophet
लाइब्रेरी को इम्पोर्ट करना
from prophet import Prophet
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from prophet.plot import plot_plotly, plot_components_plotly