Bagaimana cara membuat perkiraan untuk rangkaian waktu?

9

Saya tidak begitu terbiasa dengan analisis data deret waktu. Namun, saya memiliki apa yang saya pikir merupakan tugas prediksi sederhana untuk ditangani.

Saya memiliki sekitar lima tahun data dari proses pembuatan umum. Setiap tahun merupakan fungsi yang meningkat secara monoton dengan komponen non-linear. Saya memiliki hitungan untuk setiap minggu selama siklus 40 minggu untuk setiap tahun. Proses dimulai, fungsinya dimulai dari nol, meningkat agak cepat pada paruh pertama fungsi, melambat di babak kedua sebelum naik level selama lima minggu terakhir. Proses ini konsisten sepanjang tahun dengan perbedaan kecil dalam tingkat perubahan dan volume di seluruh segmen dari tahun ke tahun.

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

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

Dimana sama hitung saat x.Ntx

Tujuannya adalah untuk mengambil pada t x (atau lebih baik t 0 ke t x , atau kemiringan ke titik itu) dan memprediksi N pada t 40 . Misalnya, jika N t 10 adalah 5000 berapakah nilai yang diharapkan dari N t 40 untuk tahun itu. Jadi, pertanyaannya adalah, bagaimana Anda memodelkan data seperti itu? Cukup mudah untuk merangkum dan memvisualisasikan. Tapi saya ingin model untuk memfasilitasi prediksi dan memasukkan ukuran kesalahan.Ntxt0txNt40Nt10Nt40

Brett
sumber
2
Apakah Anda yakin ingin membatasi diri Anda dengan sangat keras? Jika masalah ini memiliki aplikasi praktis, maka pada saat Anda mengetahui jumlah pada waktu x Anda juga tahu semua jumlah sebelumnya. Mengapa tidak menggunakannya untuk membantu prediksi?
whuber
Memang. Kamu benar. Terima kasih telah menunjukkannya.
Brett

Jawaban:

6

Mungkin pendekatan yang paling sederhana adalah, seperti yang disarankan Andy W, untuk menggunakan model deret waktu univariat musiman. Jika Anda menggunakan R, coba salah satu auto.arima()atau ets()dari paket perkiraan .

Keduanya seharusnya berfungsi dengan baik, tetapi metode deret waktu umum tidak menggunakan semua informasi yang disediakan. Secara khusus, tampaknya Anda mengetahui bentuk kurva di setiap tahun, jadi mungkin lebih baik menggunakan informasi itu dengan memodelkan data setiap tahun sesuai dengan itu. Berikut ini adalah saran yang mencoba untuk memasukkan informasi ini.

Kedengarannya seperti semacam kurva sigmoidal akan melakukan trik. misalnya, bergeser logistik: untuk tahuntdan minggujdi manasebuaht,btdanrtadalah parameter yang akan diestimasi. rtadalah maksimum asimtotik,sebuahtkontrol tingkat kenaikan danbtadalah titik tengah ketikaft,j=rt/2

ft,j=rteat(jbt)1+eat(jbt)
tjatbtrtrtatbtft,j=rt/2. (Parameter lain akan diperlukan untuk memungkinkan asimetri Anda menggambarkan di mana tingkat meningkat hingga waktu lebih cepat dari itu setelah b t . Cara termudah untuk melakukannya adalah untuk memungkinkan sebuah t untuk mengambil nilai yang berbeda sebelum dan sesudah waktu b t .)btbtatbt

a1,,anb1,,bnr1,,rnn=5jf^(6,j)a6b6r6

(40t)/36(t4)/36masing-masing. Itu sangat ad hoc, dan saya yakin itu bisa dibuat lebih objektif dengan menempatkannya dalam konteks model stokastik yang lebih besar. Namun demikian, itu mungkin akan berfungsi baik untuk keperluan Anda.

Rob Hyndman
sumber
4

Apa yang Anda tanyakan pada dasarnya adalah apa yang dilakukan pemodelan Box Jenkins ARIMA (siklus tahunan Anda akan disebut sebagai komponen musiman). Selain mencari bahan sendiri, saya sarankan

Analisis Rangkaian Waktu Terapan untuk Ilmu Sosial 1980 oleh R McCleary; RA Hay; EE Meidinger; D McDowall

Meskipun saya dapat memikirkan alasan yang masuk akal mengapa Anda ingin meramalkan lebih jauh ke masa depan (dan karenanya menilai kesalahan saat melakukannya) sering kali sangat sulit dalam praktiknya. Jika Anda memiliki komponen musiman yang sangat kuat, itu akan lebih layak. Kalau tidak, perkiraan Anda kemungkinan akan mencapai keseimbangan dalam beberapa periode waktu mendatang.

Jika Anda berencana menggunakan R agar sesuai dengan model Anda, Anda mungkin harus memeriksa situs web Rob Hyndman (Mudah-mudahan dia akan memberi Anda saran yang lebih baik daripada saya!)

Andy W
sumber
-2

Anda memiliki 5 tahun data dan 40 pengamatan per tahun. Mengapa Anda tidak mempostingnya di web dan memungkinkan kami untuk benar-benar menjawab ini dari nol daripada berfilosofi pada ketinggian 500 mil. Saya menantikan angkanya. KAMI telah melihat data seperti ini misalnya jumlah pelanggan yang berdagang di minggu pembagian waktu mereka setiap minggu. Seri setiap tahun dimulai dari nol dan terakumulasi hingga nilai yang membatasi.

IrishStat
sumber
1
-1 Ini terdengar lebih seperti iklan mandiri daripada balasan yang membantu.
whuber
@whuber: Tidak disengaja. Hanya refleksi pada "masalah lengket" yang sama yang saya temui.
IrishStat
Itu akan membuat komentar yang menarik. Komentar adalah cara yang baik untuk menyuntikkan beberapa pengalaman berharga ini sehingga kami sangat senang Anda berbagi dengan kami. Balasan harus disediakan untuk tanggapan aktual terhadap pertanyaan: mereka akan dipilih, diarsipkan, dibuat dapat dicari, dll., Dan oleh karena itu harus lebih relevan secara langsung, bernilai permanen, dan dapat bertahan dari kritik dengan lebih baik. (Tentu saja ini adalah idealisasi, tapi itulah yang kami perjuangkan. :-)
whuber
@whuber: Kamu mengajar! Saya belajar ! Saya akan memesan komentar untuk "area komentar". Untuk menegaskan kembali sama sekali tidak ada niat untuk mempromosikan apa pun atau perangkat lunak / konsultasi tertentu apa pun hanya niat baik untuk berbagi pengalaman kepada orang lain di desa. Saya cukup yakin bahwa OP menganggap komentar saya bermanfaat. Bagaimana menurutmu Brett?
IrishStat