Time Series Forecasting (Zaman Serileri Analizi)

Şevval Yurtekin
4 min readAug 2, 2021

--

https://www.analyticssteps.com/blogs/introduction-time-series-analysis-time-series-forecasting-machine-learning-methods-models

Herkese merhaba, bu yazımda sizlere zaman serisi analizi için bilmemiz gereken kavramlardan ve yöntemlerden bahsedeceğim.

Zaman Serisi Nedir?

Zamana göre sıralanmış gözlem değerlerinden oluşan veridir. Bazı temel kavramlar bulunmaktadır. Şimdi onlara değineceğim.

Stationary (Durağanlık)

  • Serinin istatistiksel özelliklerinin zaman içerisinde değişmemesi olarak adlandırılmaktadır.
  • Bir zaman serisinin ortalaması, varyansı ve kovaryansı zaman boyunca sabit kalıyorsa, serinin durağan olduğu ifade edilmektedir.
  • Bir beklenti olarak diyebiliriz ki, serinin durağan olması tahmin başarısını yükseltmektedir.
https://ichi.pro/tr/adim-adim-zaman-serisi-analizi-231932920417662

Trend

  • Bir zaman serisinin uzun vadedeki artış ya da azalışının gösterdiği yapıya trend denir.
  • Trend durağanlığı bozmaktadır.

Seasonality (Mevsimsellik)

  • Zaman serisinin belirli bir davranışını belirli periyotlar ile tekrar etmesi durumuna mevsimsellik denir.

Cycle (Döngü)

  • Döngüsellik tekrar eden düzenler barındırmaktadır. Bir çeşit mevsimselliktir ama ikisi farklıdır.
  • Mevsimsellik daha belirgin, kısa vadeli aralıklarla gün, hafta, yıl gibi zaman birimleriyle örtüşecek şekilde gerçekleşir. Fakat döngüsellik ne zaman gerçekleşeceği belirli değildir.

Moving Average (Hareketli Ortalama)

Bir zaman serisinin gelecek değerleri kendisinin k adet önceki değerinin ortalamasıdır.

Formülden de anlaşılacağı gibi önceki değerlerin ortalaması alınarak hesaplanır. Asıl amacı, serinin trendini göstererek, değerleri düzeltmektir. Trend takibi için kullanılır.

  • Hareketli ortalamada windows size (periyot) arttıkça serinin gerçek değerlerinden uzaklaşılır.

Weighted Average (Ağırlıklı Ortalama)

Gözlem birimlerine ağırlık verir. Hareketli ortalamaya benzer. Daha sonlarda olan gözlemlere daha fazla ağırlık verme fikrini taşımaktadır.

Seri kendisinden önceki değerlerden etkileniyor ama geçmişten gelen bilgileri de taşımak istiyor.

Yukarıdaki tabloda, günlük adım sayıları belirtilmiştir. Örneğin 3 Ağustos’taki verinin elimizde olmadığını ve tahmin etmeye çalıştığımızı düşünelim. Hareketli ortalamaya göre son üç gözlemin ortalamasını alırsak, tahmin değerini bulmuş oluruz. Çok başarılı bir sonuç elde etmedik. Ağırlıklı ortalamada ise son üç gözlemi ağırlandırarak tahmin değerini bulmaya çalışıyoruz. Daha yakın bir değer tahmin ettik.

  1. Smoothing Yöntemleri (Düzeltme)
  • SES (Single Exponential Smoothing)
  • DES (Double Exponential Smoothing)
  • TES (Triple Exponential Smoothing Holt Winters)

SES (Single Exponential Smoothing)

Sadece durağan serilerde uygulanabilir. Trend ve mevsimsellik olmamalı.

Üssel düzeltme yaparak tahminde bulunur. Geçmiş gerçek değerler ve geçmiş tahmin edilen değerlerin üssel olarak ağırlıklandırılması ile tahmin yapılır.

Gelecek yakın geçmiş ile daha fazla ilişkilidir varsayımı ile geçmişin etkileri ağırlıklandırılır.

Alfa, smoothing faktörü temsil etmektedir. (0,1)

  • Alfa 0.5 değerinde olursa geçmiş tahmin edilen değerler ile geçmiş gerçek değerlere aynı oranda ağırlık vermiş olur.
  • Alfa 1'e yakın olursa geçmiş değerlere daha fazla ağırlık vermiş olur. Geçmiş değerlerin tahminlerine daha az ağırlık verir.
  • Alfa 0'a yakın olursa geçmiş tahmin edilen değerlere daha fazla ağırlık verilir yani(remembering), learning daha az ağırlıklı olur.

DES (Double Exponential Smoothing)

Level (SES) ve trend içeren serilerde uygulanabilir. Mevsimsellik içermemeli.

Trend etkisini göz önünde bulundurarak üssel düzeltme yapar.

DES = Level (SES) + Trend

TES (Triple Exponential Smoothing Holt Winters)

Yukarıdaki yöntemlerin en gelişmişidir. Bu yöntem level, trend ve mevsimsellik etkilerini değerlendirerek tahmin yapmaktadır.

Level (SES) + Trend + Mevsimsellik

2. İstatistiksel Yöntemler

AR (p) Autoregression

  • Önceki zaman adımlarındaki gözlemlerin doğrusal bir kombinasyonu ile tahmin işlemi yapılır.
  • Trend ve mevsimsellik içermeyen tek değişkenli zaman serileri için uygundur. (SES’e benzer.)
  • p zaman gecikme sayısıdır. p = 1 değeri ise bir önceki zaman adımı ile model kurulmuş demektir.

MA (q): Moving Average

q : zaman gecikme sayısıdır.

  • Önceki zaman adımlarında elde edilen hataların doğrusal bir kombinasyonu ile tahmin yapılır.
  • Trend ve mevsimsellik içermeyen tek değişkenli zaman serileri için uygundur.

ARMA(p,q) = AR(p) + MA(q)

  • Trend ve mevsimsellik içermeyen tek değişkenli zaman serileri için uygundur.
p : gerçek değerlerdeki gecikme sayısı, q: artık, hatalardaki gecikme sayısı.
  • AutoRegressive Moving Average, AR ve MA yöntemlerini birleştirmektedir.
  • Geçmiş değerler ile geçmiş hataların doğrusal bir kombinasyonu ile tahmin yapılır.

ARIMA(p,d,q) : Autoregressive Integrated Moving Average)

p: gerçek değer gecikme sayısı, d: fark işlemi sayısı, q: hata gecikme sayısı

  • Önceki zaman adımlarındaki farkı alınmış gözlemlerin ve hataların doğrusal bir kombinasyonu ile tahmin yapılır. (serinin farkını alma işlemi seriyi durağanlaştırmak için kullanılır)
  • Tek değişkenli, trendi olan zaman serileri için uygundur. Mevsimsellik olmamalı.
  • DES’e benzer. (trendi modelleyebildiği için)

SARIMA(p,d,q) (P,D,Q)m : Seasonal Autoregressive Integrated Moving-Average

p: gerçek değer gecikme sayısı, d: fark işlemi sayısı, q: hata gecikme sayısı

  • ARIMA + mevsimsellik.
  • Trend ve/veya mevsimsellik içeren tek değişkenli zaman serileri için uygundur.
  • P, D, Q mevsimsellik gecikme sayılarıdır.
  • m tek bir mevsimlik dönem için zaman adımı sayısıdır.

REFERANSLAR

--

--