Zaman Serilerinde Tahminleme Analizleri : ARIMA

0 Shares
0
0
0

Günün hangi saatinde yoğun bir satın alma eğiliminin gerçekleşeceğini tahmin ederek, Google Ads ya da diğer performans mecralarında reklam maliyetleri ve reklam süreleri ve alanlarının planlanması ve optimizasyonu gibi faydalar sağlayabilirsiniz.

Zaman Serilerine Giriş

Zaman serilerini basitçe, zaman içerisinde sıralanan bir dizi veri noktası olarak tanımlayabiliriz.

Başka bir deyişle, veri f (t) = y zamanının bir fonksiyonudur. Genellikle zaman bağımsız bir değişkendir.

Veri noktaları saatlik, günlük, haftalık, aylık, üç aylık, yıllık gibi daha küçük veya daha büyük zaman ölçekleriyle ölçülebilir.

Zaman serisi verileri Y , Trend, Döngüler, Mevsimsellik ve Kalıntıların birleşiminden oluşur. Açıkçası, Trend, Döngü veya Mevsimsellik olmadığı zaman serileriyle karşılaşabilirsiniz. Bu nedenle, zaman serisi verilerinin bileşenlerini tanımlamak sizin görevinizdir.

Zaman Serilerinde Trend

Trend, bir zaman serisinin istikrarlı bir büyüme veya düşüş modeli sergileme eğilimini ifade eder. Daha basitçe tanımlamak gerekirse uzun vadeli yukarı veya aşağı hareket.

Doğrusal  (düz bir çizgi ile tanımlanan desen) ve doğrusal olmayan eğilim (kuadratik(quadratic) veya üstel gibi(exponential) doğrusal olmayan bir fonksiyonla tanımlanan desen) birbirinden ayırırız.

Doğrusal Trend Formülü y = ax + b

Zaman Serilerinde Döngü (Cycle)

Ekonomik hareketlere bağlı periyodik değişim. Mevsimsel değişimden farklıdır. Döngü, zaman serisi verilerinin otoregresif bileşeninin varyasyonudur. Döngüler her 2-10 yılda bir gibi daha uzun zaman aralıklarında, mevsimsel değişim ise daha kısa zaman aralıklarında gerçekleşir.

Döngülerin içerisinde Konjonktürel zaman serisi kalıpları yani refah dönemleri yada ekonomik kriz gibi yer alabilir. Bunlar periyodik olmasa da 5 ila 8 yıllık dalgalanmalar ile tekrarlanır.

Mevsimsel hareketlerde dönemler düzenli ve periyodik bir salınım gösterirken, konjonktürel hareketlerde dönemler düzensiz ve periyodik olmayan bir yapıdadır.

Zaman Serilerinde Mevsimsellik (Seasonality)

Mevsimsellik periyodik dalgalanmaları ifade eder. Mevsimsel bir seri, N’nin belirli bir değeri için her N periyodunu tekrarlayan bir desene sahip olan bir seridir. Desenin sezonun uzunluğu olarak tekrarlanmaya başlamasından önceki dönemlerin sayısını belirtir. Mevsimsel modeli kullanmak için, Sezonun uzunluğunu belirtebilir.

Zaman serilerinde mevsimsellikten bahsederken sadece mevsimsel etkilerden kaynaklanan değişikliklerden bahsedemeyiz elbetteki. Dondurma satışlarının yazın yüksek oluşu dışında, Blackfriday gibi her yıl kasım ayının belirli günlerinde yapılan kampanyalar da mevsimsel dalgalanmalara yol açabilir.

Sabit Seriler(Stationary) İçin Mevsimsel Faktörler:

1. Tüm verilerin örnek ortalamasını hesaplayın.

2. Her bir gözlemi örnek ortalamasına bölün. Bu, gözlemlenen verilerin her dönemi için mevsimsel faktörler verir.

3. Her mevsimdeki benzer dönemler için ortalama faktörler, yani bir sezonun ilk dönemine karşılık gelen tüm faktörler, sezonun ikinci dönemine karşılık gelen tüm faktörler ve diğerleri.

Zaman Serilerinde Kalıntılar (Residuals)

Artıklar – diğer bileşenler hesaplandıktan ve zaman serisi verilerinden çıkarıldıktan sonra kalan bir bileşen. Rastgele, özdeş ve bağımsız bir şekilde dağılmıştır.

Zaman Serisini Bileşenlerine Ayırma (Time Series Decomposition)

Zaman serisini Python yardımı ile parçalarına ayırdığımızda, Residuals olarak görünen grafikte yer alan veri seti ana veri setinin trend ve sezonsallıktan arındırılmış hali olarak yorumlanabilir.

from statsmodels.tsa.seasonal import seasonal_decompose
decomposition = seasonal_decompose(ts_log)

trend = decomposition.trend
seasonal = decomposition.seasonal
residual = decomposition.resid

Trend ve sezonsallıktan arındırılmış olan durağan zaman serileri için ARIMA öngörüsü doğrusal (doğrusal regresyon gibi) denkleminden başka bir şey değildir. Tahmini, ARIMA modelinin parametrelerine (p, d, q) bağlıdır.

   – AR (Otomatik Regresyon) terimlerinin sayısı (p): Otoregresyon. Bir gözlem ile bazı gecikmeli gözlemler arasındaki bağımlı ilişkiyi kullanan bir model.

p: Modeldeki bağımlı değişkenin gecikme gözlemlerinin sayısı, gecikme sırası olarak da adlandırılır.

   – MA (Hareketli Ortalama) terimlerinin sayısı (q): Hareketli Ortalama. Bir gözlem ile bağımlılık arasındaki gecikme gözlemlerine uygulanan hareketli bir ortalama modelden kalan bir hata arasındaki bağımlılığı kullanan bir model.

q: Hareketli ortalama sırası olarak da adlandırılan hareketli ortalama penceresinin boyutu.

   – I (Entegrasyon) Farkların Sayısı (d): Zaman serilerini hareketsiz hale getirmek için ham gözlemlerin farklılaştırılmasının kullanımı (örneğin, bir önceki zaman adımında bir gözlemden bir gözlemin çıkarılması).

d: Ham gözlemlerin farklılaşma sayısı, aynı zamanda farklılaşma derecesi de denir.

Burada önemli bir konu ‘p’ ve ‘q’ değerlerinin nasıl belirleneceğidir. Bu sayıları belirlemek için iki grafik kullanıyoruz. Residuals datasını Otokorelasyon(ACF) ve Kısmi Otokorelasyon Fonksiyonu(PACF) içerisine sokup, buradan elde edilen değerler ışığında ARIMA içerisine yerleştirerek, veriye uygun tahminleme modeli oluşturulabilir.

Otokorelasyon Fonksiyonu (ACF)

Kısmi Otokorelasyon Fonksiyonu (PACF)

ARIMA Modelini Değerlendirme

ARIMA modelinin parametreleri belirlendikten sonra veri kümesini eğitim(train) ve test setlerine ayırın.

Veri setinin ne kadarlık bir bölümünü öğrenme, ne kadarlık bir ksımını test için kullanılacağının belirlenmesi gerekir. Sonrasında ise;

  1. Bir ARIMA modeli eğitin.
  2. Tek adımlı bir tahmin yapın.
  3. Gözlenen veriler ve tahminlenen verileri kaydederek,beklenen değerlere kıyasla tahminler için hata puanını hesaplayabilirsiniz.

ARIMA Kullanım Alanları

Otoregresif Entegre Hareketli Ortalama (ARIMA), geçmiş değerlerinin doğrusal bir kombinasyonunu ve bir dizi hatayı kullanarak bir zaman serisinin gelecekteki değerlerini tahmin eder.

Tahminleme analizleri kapsamında ARIMA modelinin veri seti üzerinde uygulanabilir olup olmadığı bilgisi, verilerin durağan(stationary) / durağan olmayan(non stationary) ve tek değişkenli olduğu, her türlü veri modeliyle, yani trend – mevsimsellik  – döngü olduğu durumlarda uygundur. ARIMA modeli kısa vadeli tahmin için önerilmektedir. ARIMA yalnızca tek değişkenli veri tahminleri içindir.

ARIMA, tahmin yaparken bağımlı değişkeni etkileyen başka değişkenlerin etkisini dikkate almaz, bununla birlikte küçük veri setleri üzerinde uygulandığında(tarih aralığı olarak) doğru sonuçlar elde edemeyebilirsiniz.

Referanslar

https://towardsdatascience.com/significance-of-acf-and-pacf-plots-in-time-series-analysis-2fa11a5d10a8

https://towardsdatascience.com/time-series-forecasting-arima-models-7f221e9eee06

0 Shares
Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bunlar da ilginizi çekebilir
firebase-analytics-console

Firebase Event Log’lama

Google’ın ücretsiz hesaplar için eski GA SDK’sını emekliye ayıracağını duyurmasının ardından Firebase’e geçişler daha da önem kazanmaya başladı.…