İlişkiliyse, bir zaman serisini başka bir zaman serisinden tahmin etme


14

Bu sorunu bir yıldan fazla bir süredir fazla ilerleme olmadan çözmeye çalışıyorum. Yaptığım araştırma projesinin bir parçası, ama oluşturduğum bir hikaye örneğiyle göstereceğim, çünkü sorunun asıl alanı biraz kafa karıştırıcı (göz izleme).

Siz okyanusun içinden geçen bir düşman gemisini takip eden bir uçansınız, bu yüzden geminin bir dizi (x, y, zaman) koordinatlarını topladınız. Gizli bir denizaltının onu korumak için gemiyle birlikte seyahat ettiğini biliyorsunuz, ancak konumları arasında bir korelasyon olsa da, denizaltı genellikle gemiden uzaklaşıyor, bu yüzden genellikle yakınındayken, aynı zamanda geminin diğer tarafında da olabilir. zaman zaman dünya. Denizaltının yolunu tahmin etmek istiyorsunuz, ama maalesef sizden gizleniyor.

Ancak Nisan ayında bir ay denizaltının kendini gizlemeyi unuttuğunu fark edersiniz, bu nedenle 1000 denizaltı boyunca hem denizaltı hem de gemi için bir dizi koordinatınız olur. Bu verileri kullanarak, sadece geminin hareketleri göz önüne alındığında gizli denizaltı yolunu tahmin etmek için bir model oluşturmak istersiniz. Naif taban çizgisi "denizaltı pozisyonu tahmin =" geminin mevcut pozisyonu "demek olacaktır, ancak denizaltının görünür olduğu Nisan verilerinden, denizaltının geminin biraz önünde olma eğilimi olduğunu fark edersiniz, yani" denizaltı pozisyonu tahmin = geminin 1 dakikadaki pozisyonu "daha da iyi bir tahmin. Nisan ayı verileri, gemi uzun bir süre suda durduğunda, denizaltının kıyı sularında devriye gezmesi ihtimalinin çok yüksek olduğunu gösteriyor. elbette.

Denizaltı yolunu tahmin etmek için Nisan verileri eğitim verisi olarak verildiğinde bu modeli nasıl inşa edersiniz? Şu anki çözümüm, faktörlerin "açma zamanı", "geminin x koordinatı", "1 gün boyunca gemi boşta" olduğu ve daha sonra R'nin ağırlıkları bulup çapraz onaylama yaptığı geçici bir doğrusal regresyon. . Ancak bu faktörleri Nisan verilerinden otomatik olarak oluşturmanın bir yolunu gerçekten çok isterim. Ayrıca, dizilim veya zaman kullanan bir model güzel olurdu, çünkü lineer regresyon bunu yapmaz ve bence bu konuyla ilgilidir.

Bütün bunları okuduğunuz için teşekkürler ve her şeyi açıklığa kavuşturmaktan mutluluk duyarım.


5
tj(r(tj),θ(tj))rθ|θ|rr

2
Olasılıkla benzer bir şey önerecektim - gemi ve denizaltı arasındaki mesafe olan bir değişkene ihtiyacınız var. Kutupsal koordinatlar hakkında güzel olan şey, bu bilginin yanı sıra yönlülüğün de dahil edilmesidir. Daha sonra bu yeni değişken üzerinde doğrusal bir regresyon deneyebilirsiniz.
öğrenci

Önerileriniz için teşekkürler. Kutupsal koordinatlarla uğraştığım bir şey, açı değişkenini dener ve tahmin edersem, o "0 döngüsünü" bu yüzden tahmin bakış açısından anlamsızdır. Herhangi bir öneri nasıl başa?
Gemicilik ve Denizaltı

@probabilityislogic Bunu biraz düşündükten sonra, kutupsal koordinatları kullanmak mantıklı olur ama tahmin etmek için değişken olarak teta yerine sin (teta) kullanılır mı? Her ne kadar o zaman bir delta_y gibi davranırdı.
Cargoship ve Denizaltı

Kutupsal koordinatların kullanımı ile ilgili olarak, Yön İstatistikleri hakkında bilgi edinmek isteyebilirsiniz .
steadyfish

Yanıtlar:


3

Burada "bağlamsal" herhangi bir bilgi kullanmayan bir yaklaşım var, yani "bir sub, bir gemiyi takip ediyor" gerçeğini hesaba katmıyor. Öte yandan, başlamak kolaydır:

Gösteren:

xsub(t),ysub(t)

xship(t),yship(t)

t

xdist(t)=xship(t)xsub(t)

ydist(t)=yship(t)ysub(t)

Benim önerim, bunların her birini ayrı ayrı tahmin etmenizdir (daha sonra birbirine bağlayabilirsiniz).

x

Sonra

xdist(t)=100±10wiggle(t)

wiggle

xywiggleμσxdist

xdist(t)=μ+σWx(t)

Wx(t)xdist

İnsanların uyguladığı başka bir strateji (ki bunun sizin için çalışacağını düşünüyorum), dizilerini

Polynomial base + Cyclic pattern + Bounded randomness

Bir denizaltı ve gemi söz konusu olduğunda, polinom kısmı muhtemelen sabit, döngüsel kısmı ise sinüslerin ve kosinüslerin toplamıdır (okyanusun dalgalarından ...). Bu, göz takibi için geçerli olmayabilir.

Bunu sizin için çözebilecek araçlar var. İşte bildiğim iki:

  1. DTREG (30 günlük değerlendirme lisansı)
  2. SQL Server ürünlerinin bir parçası olan Microsoft Zaman Serisi Algoritması . Şu anda 180 günlük değerlendirme sürümünü kullanıyorum, kullanımı kolaydır.

İşte SQL Server aracından bir ekran görüntüsü (noktalı kısım tahminidir):

resim açıklamasını buraya girin

Kullandıkları algoritmalara ARIMA denir. Nasıl çalıştığını öğrenmek için biraz Google Çalışması yaptım ve şu kitabı buldum: Zaman Serisinde İlk Kurs (ve endişelenmeyin, takip etmek için SAS'a ihtiyacınız yok. Yapmıyorum.). Çok okunabilir.

ARIMA'nın bu araçları kullanmak için nasıl çalıştığını bilmek zorunda değilsiniz, ancak ayarlanacak "model parametreleri" olduğu için bağlamınız varsa her zaman daha kolay olduğunu düşünüyorum.


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.