Home › Lectures › Machine Learning

⏱️ টাইম সিরিজ · Time Series

সময়ের সাথে পরিবর্তনশীল ডেটার পূর্বাভাস।

Forecasting data that changes over time.

📅 ৩. মেশিন লার্নিং⏳ ~2 সপ্তাহ📘 6 টপিক🧩 18 সাব-টপিক🎬 0 ভিডিও💻 রানযোগ্য কোড

🎯 যা শিখবেন / Outcomes

Decompose, test stationarity, forecast

🧰 টুলস / Tools

statsmodels, Prophet

🏁 প্রজেক্ট / Capstone

Rainfall/temperature forecast for Dhaka

📌 পূর্বশর্ত / Prerequisites

🎯 Supervised Learning

📅

সাপ্তাহিক পরিকল্পনা · Weekly plan

~২ ঘণ্টা/দিন ধরে
1

Time Series Components

Trend, seasonality and noise.
Beginner
📘 বাংলা: ট্রেন্ড, সিজনালিটি, নয়েজ।
🌐 English: Trend, seasonality and noise.

💡 পূর্বাভাসের আগে সিরিজের কাঠামো বোঝা জরুরি।

  1. 1
    সময় অনুযায়ী প্লট করুন
  2. 2
    ট্রেন্ড: দীর্ঘমেয়াদি ঊর্ধ্ব/নিম্নগতি
  3. 3
    সিজনালিটি: নির্দিষ্ট চক্রে পুনরাবৃত্তি (বার্ষিক, সাপ্তাহিক)
  4. 4
    seasonal_decompose বা STL দিয়ে ট্রেন্ড + সিজনাল + রেসিডুয়ালে ভাগ; additive বনাম multiplicative
ট্রেন্ডদীর্ঘমেয়াদি দিক
সিজনালিটিনিয়মিত চক্র
রেসিডুয়ালএলোমেলো অংশ, seasonal_decompose
2

Stationarity

ADF test and differencing.
Beginner
📘 বাংলা: ADF টেস্ট ও ডিফারেন্সিং।
🌐 English: ADF test and differencing.

💡 ARIMA-র মতো মডেল স্থির পরিসংখ্যানিক বৈশিষ্ট্য ধরে নেয়।

  1. 1
    স্টেশনারি: গড়, ভ্যারিয়েন্স ও অটোকোরিলেশন সময়ের সাথে স্থির
  2. 2
    ADF টেস্ট: p < 0.05 হলে স্টেশনারি
  3. 3
    ডিফারেন্সিং (yₜ − yₜ₋₁) দিয়ে ট্রেন্ড সরান; সিজনাল ডিফারেন্সিং (lag 12)
  4. 4
    লগ রূপান্তর দিয়ে বাড়তে থাকা ভ্যারিয়েন্স স্থির
স্টেশনারিগড় ও ভ্যারিয়েন্স স্থির
ADF টেস্ট
ডিফারেন্সিং ও লগ রূপান্তর
3

Moving Average & Smoothing

Smooth out fluctuations.
Intermediate
📘 বাংলা: ওঠানামা মসৃণ করা।
🌐 English: Smooth out fluctuations.

💡 নয়েজ সরিয়ে প্রবণতা দেখা এবং সহজ কিন্তু শক্তিশালী পূর্বাভাস।

  1. 1
    চলমান গড়: s.rolling(7).mean() — ৭ দিনের গড়
  2. 2
    Simple Exponential Smoothing: সাম্প্রতিক মানে বেশি ওজন (α)
  3. 3
    Holt: ট্রেন্ড যোগ; Holt-Winters: ট্রেন্ড + সিজনালিটি
  4. 4
    statsmodels ExponentialSmoothing দিয়ে ফিট ও forecast
Rolling meanচলমান গড়
Exponential smoothingসাম্প্রতিককে বেশি ওজন
Holt-Wintersট্রেন্ড ও সিজনসহ
4

ARIMA

Classic forecasting model.
Intermediate
📘 বাংলা: ক্লাসিক পূর্বাভাস মডেল।
🌐 English: Classic forecasting model.

💡 ক্লাসিক পরিসংখ্যানিক পূর্বাভাস মডেল—অর্থনীতি ও জনস্বাস্থ্যে মানদণ্ড।

  1. 1
    AR(p): অতীত মান থেকে; MA(q): অতীত ত্রুটি থেকে; I(d): ডিফারেন্সিং
  2. 2
    ACF থেকে q, PACF থেকে p অনুমান; ADF থেকে d
  3. 3
    ARIMA(p,d,q) ফিট, AIC দিয়ে তুলনা (বা auto_arima)
  4. 4
    SARIMA(P,D,Q,s) দিয়ে সিজনালিটি; রেসিডুয়াল সাদা নয়েজ কিনা যাচাই
AR, I, MAতিন উপাদান
ACF/PACF দিয়ে p, q নির্বাচন
SARIMAসিজনাল সংস্করণ
5

Prophet

Easy forecasting library.
Advanced
📘 বাংলা: সহজ ফোরকাস্টিং লাইব্রেরি।
🌐 English: Easy forecasting library.

💡 ব্যবসা ও জনস্বাস্থ্য ডেটায় কম টিউনিংয়ে দ্রুত যুক্তিসঙ্গত পূর্বাভাস।

  1. 1
    ডেটা ফ্রেম: ds (তারিখ), y (মান) কলাম
  2. 2
    Prophet().fit(df)
  3. 3
    future = m.make_future_dataframe(periods=90); forecast = m.predict(future)
  4. 4
    ছুটি/ঈদ যোগ, changepoint_prior_scale দিয়ে ট্রেন্ড নমনীয়তা; plot_components দিয়ে ব্যাখ্যা
ট্রেন্ড + সিজনালিটি + ছুটির দিন
সহজ APIfit ও predict
অনিশ্চয়তা ব্যবধান
6

LSTM for Time Series

Deep-learning forecasting.
Advanced
📘 বাংলা: ডিপ লার্নিং দিয়ে পূর্বাভাস।
🌐 English: Deep-learning forecasting.

💡 বহু ভেরিয়েবল ও জটিল অরৈখিক সময়-নির্ভরতা ধরতে ডিপ লার্নিং।

  1. 1
    স্লাইডিং উইন্ডো: গত ৩০ দিন → পরের ৭ দিন
  2. 2
    ডেটা স্কেল করুন; সময়ক্রম রেখে train/val/test ভাগ
  3. 3
    LSTM লেয়ার (Keras/PyTorch) + Dense আউটপুট; EarlyStopping
  4. 4
    সরল বেসলাইনের (naive, ARIMA) সাথে তুলনা বাধ্যতামূলক
সিকোয়েন্স উইন্ডো তৈরি
LSTM সেলদীর্ঘ স্মৃতি
মাল্টিভেরিয়েট ফোরকাস্টিং
💻

হাতে-কলমে কোড · Hands-on code

Run চাপুন — পাইথন আপনার ব্রাউজারেই চলবে (Ctrl+Enter)
import numpy as np, pandas as pd, matplotlib.pyplot as plt
idx=pd.date_range("2022-01-01",periods=36,freq="MS"); t=np.arange(36)
temp=pd.Series(26+0.05*t+5*np.sin(2*np.pi*t/12)+np.random.default_rng(0).normal(0,.6,36),idx)
roll=temp.rolling(12).mean(); diff=temp.diff()
print(temp.head()); print("Seasonal lag-12 autocorrelation:",round(temp.autocorr(12),3))
temp.plot(label="monthly temp"); roll.plot(label="12-mo rolling mean"); plt.legend(); plt.title("Trend + seasonality"); plt.show()
📝

অনুশীলন · Practice tasks

  1. একটি সিরিজকে ট্রেন্ড, সিজন ও রেসিডুয়ালে ভাঙুন
  2. ডিফারেন্সিং করে স্টেশনারি বানান
  3. naive বনাম moving-average ফোরকাস্ট তুলনা
  4. ক্যাপস্টোন: Rainfall/temperature forecast for Dhaka
❓

কুইজ · Quick quiz

1. স্টেশনারিটি যাচাইয়ের টেস্ট?

2. ARIMA-র 'I' মানে?

🎬

ভিডিও লাইব্রেরি · Videos

সাইটের ভেতরে ফ্লোটিং প্লেয়ারে চলবে
এই শাখার ভিডিও এখনো সংরক্ষিত হয়নি। যেকোনো টপিক পেজ খুললে ভিডিও স্বয়ংক্রিয়ভাবে খুঁজে MySQL-এ সংরক্ষিত হবে (API key থাকলে)।

📺 Reference channels

🔗

সংযুক্ত বিষয় · Connected

← আগের শাখা🧩 Unsupervised Learningপরের শাখা →🧠 Deep Learning
🎬 Video