شروع به کار با کتابخانه Prophet فیسبوک

کتابخانه Prophet، که توسط فیسبوک توسعه داده شده است، ابزاری قدرتمند برای پیش‌بینی سری‌های زمانی است. این کتابخانه به‌ویژه برای داده‌های دارای روند و تغییرات فصلی مناسب است و می‌تواند نقاط تغییر در داده‌ها را به‌خوبی مدیریت کند.

نصب Prophet

ابتدا باید کتابخانه Prophet را نصب کنید. در پایتون، می‌توانید با استفاده از pip آن را نصب کنید:

pip install prophet

برای کاربران لینوکس، ممکن است به نصب برخی پیش‌نیازها مانند gcc و pystan نیاز باشد:

pip install pystan
pip install prophet

وارد کردن کتابخانه‌ها و آماده‌سازی داده‌ها

ابتدا کتابخانه‌های موردنیاز را در پایتون ایمپورت می‌کنیم:

import pandas as pd
from prophet import Prophet
import matplotlib.pyplot as plt

سپس داده‌های خود را بارگذاری می‌کنیم. داده‌های ورودی برای Prophet باید شامل دو ستون زیر باشد:

  • ds: شامل تاریخ‌ها (در قالب YYYY-MM-DD یا YYYY-MM-DD HH:MM:SS)
  • y: شامل مقدار مشاهده‌شده در هر تاریخ
data = pd.DataFrame({
    'ds': pd.date_range(start='2020-01-01', periods=100, freq='D'),
    'y': [i + (i**0.5) for i in range(100)]
})

ایجاد مدل و آموزش آن

مدل Prophet را ایجاد کرده و آموزش می‌دهیم:

model = Prophet()
model.fit(data)

ایجاد پیش‌بینی

برای پیش‌بینی داده‌های آینده، ابتدا باید یک DataFrame از تاریخ‌های آینده بسازیم:

future = model.make_future_dataframe(periods=30)
prediction = model.predict(future)

نمایش نتایج پیش‌بینی

برای رسم نمودار پیش‌بینی، می‌توان از توابع داخلی Prophet استفاده کرد:

fig = model.plot(prediction)
plt.show()

افزودن مولفه‌های فصلی و تغییر روند

اگر داده‌های شما دارای الگوهای فصلی یا تغییرات خاصی در روند هستند، می‌توانید آن‌ها را تنظیم کنید:

model = Prophet(seasonality_mode='multiplicative')
model.add_seasonality(name='monthly', period=30.5, fourier_order=5)
model.fit(data)
prediction = model.predict(future)
fig = model.plot(prediction)
plt.show()

نتیجه‌گیری

کتابخانه Prophet یک ابزار ساده و در عین حال قدرتمند برای پیش‌بینی سری‌های زمانی است. این ابزار می‌تواند تغییرات روند و فصلی را به‌خوبی مدل‌سازی کند و در بسیاری از کاربردهای دنیای واقعی مانند پیش‌بینی فروش، ترافیک وب‌سایت و داده‌های مالی مفید باشد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *