Bir zaman serisi için tahminler nasıl yapılır?


9

Zaman serisi verilerinin analizine aşina değilim. Ancak, basit bir tahmin görevi olduğunu düşündüğüm şey var.

Ortak bir üretim sürecinden yaklaşık beş yıllık verilerim var. Her yıl doğrusal olmayan bir bileşenle monoton olarak artan bir işlevi temsil eder. Her yıl için 40 haftalık bir döngü boyunca her hafta sayım var. Süreç başlar, işlev sıfırdan başlar, işlevin ilk yarısında oldukça hızlı bir şekilde artar, son beş hafta boyunca tesviye edilmeden önce ikinci yarıda yavaşlar. Süreç yıllar boyunca tutarlıdır ve segmentler arasında yıldan yıla değişim oranı ve hacmi arasındaki küçük farklar vardır.

y1={0,Nt1,Nt2,...Nt39,Nt40}

y5={0,Nt1,Nt2,...Nt39,Nt40}

Burada x zamanındaki sayıya eşittir.Ntx

Amaç almaktır de (ya da daha iyi için veya o noktaya eğim) ve tahmin de . Örneğin, 5000 ise, o yıl için beklenen değeri nedir . Öyleyse soru şu, bu tür verileri nasıl modelleyeceksiniz? Özetlemek ve görselleştirmek yeterince kolaydır. Ancak tahminleri kolaylaştırmak ve bir hata ölçüsü eklemek için bir model istiyorum.Ntxt0txNt40Nt10Nt40


2
Kendinizi bu kadar ciddi bir şekilde sınırlamak istediğinizden emin misiniz? Bu sorunun herhangi bir pratik uygulaması varsa, x zamanındaki sayımı bildiğiniz zaman önceki tüm sayıları da bilirsiniz. Neden bu tahmine yardım etmek için kullanmıyorsunuz?
whuber

Aslında. Haklısın. Bunu işaret ettiğiniz için teşekkürler.
Brett

Yanıtlar:


6

Muhtemelen en basit yaklaşım, Andy W'nin önerdiği gibi, mevsimsel bir tek değişkenli zaman serisi modeli kullanmaktır. R kullanıyorsanız , tahmin paketinden birini auto.arima()veya tahmin paketini deneyin .ets()

Her ikisi de iyi çalışmalıdır, ancak genel bir zaman serisi yöntemi sağlanan tüm bilgileri kullanmaz. Özellikle, her yıl eğrinin şeklini biliyorsunuz, bu nedenle her yıl verilerini buna göre modelleyerek bu bilgileri kullanmak daha iyi olabilir. Aşağıda, bu bilgileri dahil etmeye çalışan bir öneri yer almaktadır.

Bir tür sigmoidal eğrinin hile yapacağına benziyor. örneğin, kaydırılmış bir lojistik:

ft,j=rteat(jbt)1+eat(jbt)
yıl için t ve hafta j nerede at, bt ve rt tahmin edilecek parametrelerdir. rt asimptotik maksimumdur, at artış hızını kontrol eder ve bt ne zaman orta nokta ft,j=rt/2. (Tarif ettiğiniz asimetrinin zamana göre artma oranını sağlamak için başka bir parametreye ihtiyaç duyulacaktır.bt ondan daha hızlı bt. Bunu yapmanın en basit yolu izin vermektirat zamandan önce ve sonra farklı değerler almak bt.)

Parametreler her yıl için en küçük kareler kullanılarak tahmin edilebilir. Her bir zaman serisinin parametreleri:a1,,an, b1,,bn ve r1,,rn. Bunlar standart zaman serisi yöntemleri kullanılarak tahmin edilebilir, ancakn=5tahmin oluşturmak için her bir serinin ortalamasını kullanmaktan çok fazla şey yapamazsınız. Sonra, 6. yıl için, haftadaki değerin bir tahminij basitçe f^(6,j) tahminleri nerede a6, b6 ve r6 kullanılmış.

Veriler 6. yıl için gözlemlenmeye başladığında, bu tahmini güncellemek isteyeceksiniz. Her yeni gözlem elde edildiğinde, sigmoidal eğriyi 6. yıldan itibaren verilere göre tahmin edin (üç parametre olduğu için başlamak için en az üç gözlem gerekir). Ardından, 5. yıla kadar olan veriler kullanılarak elde edilen tahminlerin ve yalnızca ağırlıkların eşit olduğu 6. yıldaki veriler kullanılarak elde edilen tahminlerin ağırlıklı bir ortalamasını alın.(40-t)/36 ve (t-4)/36sırasıyla. Bu çok ad hoc, ve eminim daha büyük bir stokastik model bağlamında daha objektif hale getirilebilir. Bununla birlikte, muhtemelen amaçlarınız için iyi çalışacaktır.


4

Sorduğunuz şey aslında Box Jenkins ARIMA modellemesinin ne yaptığıdır (yıllık döngüleriniz mevsimsel bileşenler olarak adlandırılacaktır). Kendi başınıza malzeme aramanın yanı sıra,

1980 Sosyal Bilimler için Uygulamalı Zaman Serisi Analizi , R McCleary; RA Hay; EE Meidinger; D McDowall

Her ne kadar geleceğe daha fazla tahmin etmek istediğinizin makul nedenlerini düşünebilsem de (ve böylece hatayı değerlendirirken) pratikte genellikle çok zordur. Çok güçlü mevsimsel bileşenleriniz varsa daha uygun olacaktır. Aksi takdirde, tahminleriniz muhtemelen görece daha az zaman diliminde bir dengeye ulaşacaktır.

Modellerinize uyması için R kullanmayı planlıyorsanız muhtemelen Rob Hyndman'ın web sitesine bakmalısınız (Umarım size benden daha iyi tavsiyeler verir!)


-2

yılda 5 yıllık verileriniz ve 40 gözleminiz var. Neden onları web'de yayınlamıyorsunuz ve 500 mil yükseklikte felsefe etmek yerine bunu sıfırda cevaplamamıza izin vermiyorsunuz. Numaraları dört gözle bekliyorum. Bunun gibi verileri gördük, örneğin haftada haftada zaman paylaşımında işlem yapan müşteri sayısı. Her yıl seri sıfırdan başlar ve sınırlayıcı bir değer biriktirir.


1
-1 Bu, yararlı bir yanıttan çok, kendi kendine bir reklam gibi görünür.
whuber

@whuber: Kasıtlı değil. Karşılaştığım benzer bir "yapışkan sorun" üzerine sadece bir yansıması.
IrishStat

Bu ilginç bir yorum yapar. Yorumlar, bizimle paylaştığınız için çok mutlu olduğumuz bu değerli deneyimi enjekte etmenin iyi yoludur. Cevaplar soruya gerçek yanıtlar için ayrılmalıdır: bunlar oylanacak, arşivlenecek, aranabilir hale getirilecektir, ve bu nedenle daha doğrudan alakalı, kalıcı değerde olmaları ve eleştirilere daha iyi dayanabilmeleri gerekir. (Tabii ki bu bir idealizasyon, ama bunun için çalışıyoruz. :-)
whuber

@whuber: Öğret! Ben öğrenirim ! "Yorum alanı" için yorumlar ayıracağım. Tekrarlamak gerekirse, hiçbir şeyi veya herhangi bir yazılım / danışmanlık parçasını tanıtmak gibi bir niyet yoktu, sadece köyün diğer insanlarıyla deneyimlerini paylaşmak için iyi niyetli bir isteklilikti. OP'nin yorumlarımın yararlı olduğunu düşündüğünden oldukça eminim. Brett ne diyor?
IrishStat
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.