Saya telah mencoba menyelesaikan masalah ini selama lebih dari setahun tanpa banyak kemajuan. Ini adalah bagian dari proyek penelitian yang saya lakukan, tetapi saya akan mengilustrasikannya dengan contoh cerita yang saya buat, karena domain sebenarnya dari masalah ini agak membingungkan (eye-tracking).
Anda adalah pesawat yang melacak kapal musuh yang melakukan perjalanan melintasi lautan, jadi Anda telah mengumpulkan serangkaian koordinat (x, y, waktu) dari kapal tersebut. Anda tahu bahwa kapal selam tersembunyi melakukan perjalanan dengan kapal untuk melindunginya, tetapi sementara ada korelasi antara posisi mereka, kapal selam itu sering mengembara dari kapal, jadi meskipun sering dekat, kapal selam itu bisa juga berada di sisi lain dari kapal selam itu. dunia sesekali. Anda ingin memprediksi jalur kapal selam, tetapi sayangnya itu tersembunyi dari Anda.
Tapi satu bulan di bulan April Anda melihat kapal selam lupa untuk menyembunyikan diri, jadi Anda memiliki serangkaian koordinat untuk kapal selam dan kapal sepanjang 1.000 perjalanan. Dengan menggunakan data ini, Anda ingin membuat model untuk memprediksi jalur kapal selam tersembunyi hanya dengan pergerakan kapal. Garis dasar naif adalah untuk mengatakan "posisi kapal selam menebak =" posisi kapal saat ini "tetapi dari data April di mana kapal selam itu terlihat, Anda melihat ada kecenderungan kapal selam sedikit lebih maju dari kapal, jadi" posisi kapal selam sedikit " tebak = posisi kapal dalam 1 menit "bahkan merupakan perkiraan yang lebih baik. Selanjutnya, data April menunjukkan bahwa ketika kapal berhenti di dalam air untuk waktu yang lama, kapal selam itu kemungkinan jauh berada berpatroli di perairan pantai. Ada pola lain tentu saja.
Bagaimana Anda membangun model ini, mengingat data April sebagai data pelatihan, untuk memprediksi jalur kapal selam? Solusi saya saat ini adalah regresi linier ad-hoc di mana faktor-faktornya adalah "waktu perjalanan", "koordinat x kapal", "adalah kapal menganggur selama 1 hari", dll. Dan kemudian meminta R mengetahui bobot dan melakukan validasi silang . Tetapi saya akan sangat suka cara untuk menghasilkan faktor-faktor ini secara otomatis dari data April. Juga, model yang menggunakan urutan atau waktu akan menyenangkan, karena regresi linier tidak dan saya pikir itu relevan.
Terima kasih telah membaca semua ini dan saya akan dengan senang hati menjelaskan apa pun.
sumber
Jawaban:
Berikut ini adalah pendekatan yang tidak menggunakan informasi "kontekstual" apa pun yaitu gagal memperhitungkan fakta bahwa "sub mengikuti kapal". Di sisi lain mudah untuk memulai dengan:
Ditunjukkan oleh
Saran saya adalah Anda memprediksi masing-masing secara terpisah (Anda dapat mengikat mereka nanti).
Kemudian
Strategi lain yang digunakan orang (yang saya pikir akan berhasil untuk Anda) adalah mereka memecah seri mereka menjadi
Dalam kasus kapal selam dan kapal laut, bagian polinom mungkin akan konstan dan bagian siklik sejumlah sinus dan kosinus (dari gelombang laut ...). Ini mungkin bukan kasus pelacakan mata.
Ada alat yang bisa mencari tahu ini untuk Anda. Berikut adalah dua yang saya ketahui:
Berikut ini adalah tangkapan layar dari alat SQL Server (bagian bertitik adalah prediksi):
Salah satu algoritma yang mereka gunakan disebut ARIMA. Ingin mengetahui cara kerjanya, saya melakukan beberapa Googling dan menemukan buku ini: First Course on Time Series (dan jangan khawatir, Anda tidak perlu memiliki SAS untuk diikuti. Saya tidak.). Sangat mudah dibaca.
Anda tidak harus tahu bagaimana ARIMA bekerja untuk menggunakan alat-alat ini, tapi saya pikir itu selalu lebih mudah jika Anda memiliki konteks, karena ada "parameter model" yang harus ditetapkan dll.
sumber