Zaman Serileri

Barış Kavuş
4 min readMar 19, 2021

--

Merhaba!

Bu yazıda Zaman Serisi temel kavramlarına ve üstel düzeltme yöntemlerine giriş yapmış olacağız.

Zaman Serisi stokastik bir süreçtir ve zamana göre sıralanmış gözlem değerlerinden oluşur. Aşağıda Zaman Serisi bileşenleri ve temel kavramlar ele alınmıştır.

Stationary (Durağanlık): Serinin istatistiksel özelliklerinin (ortalama, varyans vs.) zaman içerisinde değişmemesidir. Bir zaman serisinin ortalaması, varyansı ve kovaryansı zaman boyunca sabit kalıyorsa, serinin durağan olduğu söylenir.

Trend: Bir zaman serisinin uzun vadedeki artış ya da azalışının gösterdiği yapıdır.

Trend iki şekilde ifade edilebilir:

  • Doğrusal Trend
  • Doğrusal Olmayan Trend

Seasonality (Mevsimsellik): Zaman serisinin belirli bir davranışı belirli periyotlarla tekrar etmesi durumudur. Yani bir zaman serisi belirli faktörlerden etkileniyorsa (hafta, ay, yıl vb.) mevsimsel olduğu gözlemlenir.

  • Toplamsal Model: Bir seride mevsimsellik, trend bileşeninden etkilenmiyorsa toplamsal modeldir.
  • Çarpımsal Model: Bir seride farklı varyanslılık durumu varsa çarpımsal modeldir.

Aşağıdaki grafikte trend ve mevsimselliğin bir arada olduğunu gözlemleyebiliriz.

Önemli Not: Grafikler ile mevsimsellik tam olarak belirlenemiyorsa seriye Kruskal Wallis Testi uygulanır. Eğer seride mevsimsellik yok ise test sonucunda periyotlar arasında fark olmadığı gözlemlenir. Veriler küçükten büyüğe sıralanır. Sıra sayıları karşılık gelen periyotlarda yerine yazılır. Test istatistiği değeri, ki-kare tablo değeriyle veya p-value ile karşılaştırılır.

Seri toplamsal ise;

Seri çarpımsal ise;

Cycle (Döngü): Veride sabit bir frekansta olmayan artış ve düşüşler sergilediğinde bir döngü oluşur. Bu dalgalanmalar farklı koşullar neticesinde genellikle 1 yılın üzerinde gözlemlenir.

Moving Average (Hareketli Ortalama): Bir zaman serisinin gelecek değeri kendisinin k adet önceki değerinin ortalamasıdır.

Moving Average

Aşağıda saatlik reklam izleme sayıları verilmiştir. 23:00'da ki gerçek değer 80285. Hedefimiz bu değeri hareketli ortalama ile tahmin etmek olsun.

Son 3 gözlemin ortalaması;

(123395+103080+95155)/3 = 107210

Weighted Average ( Ağırlıklı Ortalama): Hareketli ortalamaya benzemektedir. Daha sonlarda olan gözlemlere daha fazla ağırlık verme anlayışı vardır.

Weighted Average

Aynı şekilde 23:00'da gerçekleşecek izleme sayısını ağırlıklı ortalama yöntemiyle tahmin edelim ve ağırlıkları sırasıyla 0.1, 0.3, 0.6 olarak belirtelim.

Son 3 gözlemin ortalaması;

(123395*0.1)+(103080*0.3)+(95155*0.6)/3 = 100356

Görüldüğü gibi ağırlıklı ortalama ile gerçek değere daha yakın bir tahmin değeri elde edilmiştir. Bu durumda zaman serisinin en çok kendisinden bir önceki değerden etkilendiğini söylenebilir.

Bu işlemleri bütün veride zamana göre ağırlık vererek yapabiliriz. Peki nasıl?

Smoothing Yöntemleri (Üstel Düzeltme Yöntemleri)

Üstel Düzeltme Yöntemi verilerdeki son değişim ve sıçramaları dikkate alarak tahminlerin ya da öngörülerin devamlı güncelleştirildiği bir yöntemdir. Son dönemlerdeki gözlemlere daha fazla ağırlık verilir. Bu işlem bir veya daha fazla düzleştirme katsayısı (smoothing) kullanılarak yapılır.

  • Single Exponential Smoothing (Level)
  • Double Exponential Smoothing (Level +Trend)
  • Triple Exponential Smoothing (Holt-Winters) (Level + Trend + Mevsimsellik)

1. Single Exponential Smoothing: Basit üstel düzeltme yöntemidir. Bu yöntem trend ve mevsimselliğin olmadığı tek değişkenli zaman serileri için uygundur. 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.

α değerinin seçimi önemlidir. Her α değeri için MAE (Minimum Absolute Error) hesaplanır. MAE değerini minimum yapan α optimaldir. Bu değer 1'e yakınsa, son gözlemlerin değerleri doğrudan serinin tahminini etkiler ve bu durum fazla sıçramalara neden olur.

2. Double Exponential Smoothing: İkili üstel düzeltme yöntemidir. Bu yöntem trend içeren fakat mevsimselliğin olmadığı tek değişkenli zaman serileri için uygundur. Temel yaklaşımı basit üstel düzeltme yöntemi ile aynıdır.

Double Exponential Smoothing = Level + Trend

β trend bileşenidir. 0 ile 1 arasında değişkenlik gösterir. Seçim mantığı ise α bileşeni ile aynıdır.

3. Triple Exponential Smoothing (Holt-Winters): En gelişmiş smoothing yöntemidir. Bu yöntem dinamik olarak level, trend ve mevsimsellik etkilerini değerlendirerek tahmin yapmaktadır. Trend ve/veya mevsimsellik içeren tek değişkenli seriler için uygundur.

Mevsimsellik bileşenin katsayısı γ (gama)’dır. Bu katsayı diğer katsayılarda olduğu gibi 0 ile 1 arasında değer alır.

Triple Exponential Smoothing = Level + Trend + Mevsimsellik

Zaman Serisinin doğasını anlayabilmek için teorik konuların göz ardı edilmemesi gerekir.

Yeniden görüşmek dileğiyle…

Github: github.com/bariskavus

Kaggle: kaggle.com/bariskavus

LinkedIn: linkedin.com/in/barskavus/

KAYNAKLAR

https://www.veribilimiokulu.com/bootcamp-programlari/veri-bilimci-yetistirme-programi/

--

--