Bir ARIMAX modelinin düzenlenmesi veya cezalandırılmasıyla takılması (örneğin, kement, elastik ağ veya sırt regresyonuyla)


29

Kullandığım auto.arima () işlevi tahmini kovaryatların çeşitli ARMAX modellerini uyması için paketin. Bununla birlikte, sıklıkla seçim yapabileceğim çok sayıda değişkenim var ve bunlar genellikle bir alt kümesiyle çalışan son bir modelle sonuçlanır. Değişken seçim için geçici teknikleri sevmiyorum, çünkü ben insanım ve önyargılıyım, ancak zaman aşımına uğrayan zaman serileri zor , bu yüzden mevcut değişkenlerimin farklı alt kümelerini otomatik olarak denemek için iyi bir yol bulamadım ve kendi en iyi kararımı kullanarak modelleri ayarlamama şaşırdım.

Glm modellerine uyduğumda , glmnet paketi aracılığıyla düzenlileştirme ve değişken seçimi için elastik ağı veya lassoyu kullanabilirim . ARMAX modellerinde elastik ağı kullanmak için R'de mevcut bir araç takımı var mı, yoksa kendim mi kullanacağım? Bu iyi bir fikir mi?

düzenleme: AR ve MA terimlerini manuel olarak hesaplamak (AR5 ve MA5'e kadar) ve modele uyacak glmnet kullanımı mantıklı mıdır?

düzenleme 2: Görünüşe göre FitAR paketi bana yoldan ayrılıyor ama hepsi değil.


2
Bu sorun hakkında bir şeyler yapmayı başarabildiyseniz bilmek isterim. Herhangi bir güncelleme için işaretlendi - bu yüzden sadece burada tabanına dokunarak.
Vishal Belsare

Bunu çözmek için asla yönetilemedi. Kendi uygulamamı yazmayı düşündüm ama başaramadım. Belki AR ve MA terimlerini elle hesaplayabilir ve ardından bu verilere glmnet uygulayabilirsiniz?
Zach,

1
Selam Zach, bunu daha ileri götürüp almadığınızı veya hala park edip etmediğini merak ettim. Çok fazla seri tahmin etmek için böyle bir algoritmaya ihtiyacım var.
Matt Weller

3
@MattWeller forecastR için mükemmel bir paketin yazarı Rob Hyndman'la biraz konuştum . Tam ARIMA ile zor olacağını söyledi çünkü Kement'i doğrusal olmayan ARIMA optimizerinin etrafına sarmanız gerekecekti. Kısmi bir çözüm glmnet, gecikmeli değişkenlerle bir AR modeline uymak olacaktır . Bildiğim kadarıyla, henüz kimse tam bir ARIMA modeliyle yapmadı.
Zach

Yanıtlar:


7

Bu bir çözüm değil, bildiğim olasılıklar ve zorluklar üzerine düşünceler.

Zaman serisi modelini olarak eş değişkenler ve zaman gecikmeli gözlemlerden hesaplanan x t ile belirtmek mümkün olduğunda, en küçük kareler elastik net cezalandırılmış hesaplamak da mümkündür. tahmincisi ve p R. glmnet kullanarak Bu işlem için kod yazmak gerekir x t glmnet de belirtilmelidir modeli matris oluşturulur. Bu AR modelleri için işe yarıyor ama doğrudan ARMA modelleri için değil. Dahası, glmnet'in çapraz doğrulama prosedürleri zaman serisi verileri için kendi başına mantıklı değildir.

Yt+1=xtβ+ϵt+1
xtβxt

Daha genel modeller için değerinin hesaplanması için bir algoritma bir uygulama doğrusal olmayan en küçük kareler esnek ağ ceza tahmin P gereklidir. Bildiğim kadarıyla, R'de böyle bir uygulama yoktur. Halen Y t + ' nin durumunu çözmek için bir uygulama yazıyorum.

Yt+1=f(xt,β)+ϵt+1
β
Yt+1=xtg(β)+ϵt+1
nokta kement cezalandırma üzerinde olduğu bir model seçimi için önemli olduğunu olmak olup g ( β ) . ARIMA parametresini doğru bir şekilde hatırlarsam, bu formu da alır - fakat şu anda herhangi bir kod sunamıyorum. Düzgün olmayan ayrılabilir en aza indirme için bir koordinat gradyan iniş yöntemine dayanmaktadır (olacaktır) .βg(β)

Diğer bir husus, ceza miktarının seçimi (ayarlama parametreleri). Genellikle, zaman serileri için bir çeşit çapraz onaylama gerektirecektir, ancak belirli modeller için daha az hesaplama gerektiren yöntemler üzerinde çalışmayı umuyorum.


R için şapka paketi, glmnet parametrelerini seçmek için kullanılabilecek zaman serileri çapraz onaylama uygulamasına sahiptir. Cevap için teşekkürler.
Zach,

2

Bu sorunu otomatik olarak anahtar teslimi bir şekilde çözmek için bir müşteri tarafından zorlandım. Önceden beyazlatılmış her bir çift için (yani y ve bir aday x), önceden beyazlatılmış serinin çapraz bağıntılarını hesaplayan, herhangi bir DEAD ZAMANI da dahil olmak üzere PDL'yi (veya ADL AUTOREGRESSIVE DISTRIBUTED LAG MODELİ) tanımlayan bir yaklaşım uyguladım. Sağlam tahminler ver, bu yapı için bir "ölçü" geliştir. TÜM aday regresörleri için bunu yaptıktan sonra, onları "ölçü" ile sıralayın ve sonra "ölçü" ye göre en iyi K regresörlerini seçin. Bu bazen Doğrusal Filtreleme olarak da adlandırılır. Bu buluşsal yöntemi, ticari olarak temin edilebilir zaman serisi paketimize başarıyla dahil ettik. "KENDİNİZİ YARATABİLİR"


Özellikle Kement veya elastik ağı bir ARIMA modeline dahil etmek istiyorum.
Zach,

3
Gerçekten doğrusal bir filtre aramıyorum (bu yararlı olsa da). Özellikle Kement, sırt regresyonu veya elastik ağı ARIMAX modeline dahil etmenin bir yolunu istiyorum.
Zach

2
Şu an seviye kaymaları, yerel zaman eğilimleri, katsayı kaymaları veya sabit olmayan hata farkları ile ilgilenmiyorum. ARIMAX modellerine kement, sırt veya elastik net düzeneği uygulamakla özellikle ilgileniyorum.
Zach,

2
Yukarıdaki metodolojiye kement, sırt veya elastik net düzeneğini dahil edebilir ve açık kodlu bir programlama dilinde bazı örnek kodlar gönderirseniz, size ödül vermekten memnuniyet duyarım.
Zach,

1
Şimdiden tahmin etme (aşağıya doğru) ile tanımlama yapmaya çalışıyorsunuz ve bu işe yaramıyor çünkü bu pek çok muhtemel atım, seviye kayması, mevsimsel atım ve zaman eğilimi kombinasyonuna sahip. Bu yapılara ihtiyaç duyulur ancak dikkate alınmazsa, parametre tahmini önyargılıdır ve parametrik anlamlılık testleri pencereden dışarı çıkar.
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.