Bisakah PCA diterapkan untuk data deret waktu?

22

Saya mengerti bahwa Principal Component Analysis (PCA) dapat diterapkan pada dasarnya untuk data cross sectional. Dapatkah PCA digunakan untuk data deret waktu secara efektif dengan menetapkan tahun sebagai variabel deret waktu dan menjalankan PCA secara normal? Saya telah menemukan bahwa PCA dinamis berfungsi untuk data panel dan pengkodean di Stata dirancang untuk data panel dan bukan deret waktu. Apakah ada tipe PCA tertentu yang bekerja pada data deret waktu?

Memperbarui. Biarkan saya jelaskan secara mendetail.

Saat ini saya sedang membangun indeks untuk Infrastruktur di India dengan variabel seperti panjang jalan, panjang rute kereta api, kapasitas pembangkit listrik, jumlah pelanggan telepon, dll. Saya memiliki 12 variabel hingga 22 tahun untuk 1 negara. Meskipun saya telah meninjau makalah yang menerapkan PCA pada deret waktu dan bahkan data panel, PCA dirancang untuk data cross sectional yang mengasumsikan asumsi awal. Panel dan data cross sectional melanggarnya dan PCA tidak memperhitungkan dimensi deret waktu di dalamnya. Saya telah melihat PCA dinamis diterapkan hanya pada data panel. Saya ingin tahu apakah ada PCA spesifik yang diterapkan pada deret waktu atau menjalankan PCA statis dengan tahun yang ditetapkan sebagai variabel deret waktu akan melakukan pekerjaan?

Nisha Simon
sumber
2
Singular Spectrum Analysis (SSA) sering disebut PCA untuk deret waktu. en.wikipedia.org/wiki/Singular_spectrum_analysis
Vladislavs Dovgalecs
1
Harap tinjau beberapa pos di bilah samping di sebelah kanan (->) yang merujuk ke PCA dan seri waktu. Jika ada yang menjawab pertanyaan Anda, silakan tautkan ke dalam komentar di sini, tetapi jika tidak ada yang menjawab, Anda dapat menjelaskan cara-cara spesifik di mana masalah Anda berbeda dari yang mana pun.
Glen_b -Reinstate Monica
Tak satu pun dari mereka menjawab pertanyaan pca pada deret waktu. Pertanyaan spesifik tentang topik tersebut berkaitan dengan sains atau tidak dijawab.
Nisha Simon
5
PCA, sebagai alat transformasi data, pengurangan dimensi, eksplorasi, dan visualisasi, tidak membuat asumsi apa pun. Anda dapat menjalankannya pada data apa pun, termasuk data deret waktu. Bahkan, PCA sangat sering diterapkan untuk data deret waktu (kadang-kadang disebut "PCA fungsional", kadang-kadang tidak). Saya bahkan tidak tahu apa artinya "PCA dinamis" dan "PCA statis"; jangan khawatir dan gunakan PCA standar.
Amuba kata Reinstate Monica
Anda mungkin ingin mempertimbangkan untuk menggunakan PCA Fungsional yang dirancang khusus untuk deret waktu. Paket FDA dalam R mengimplementasikan fPCA. Anda akan dapat menemukan fPCA multivarian.
Anne

Jawaban:

8

Salah satu pendekatan mungkin untuk mengambil perbedaan pertama kalinya dari 12 variabel Anda untuk memastikan stasioneritas. Kemudian menghitung kovarians matriks dan melakukan PCA di atasnya. Ini akan menjadi semacam PCA rata-rata sepanjang rentang waktu, dan tidak akan mengatakan apa-apa tentang bagaimana label waktu yang berbeda saling mempengaruhi. Tapi itu bisa menjadi titik awal yang baik.12×12

Jika Anda tertarik untuk mendekomposisi domain waktu juga saya akan memeriksa SSA seperti yang disarankan dalam komentar.

Ketika seri Anda (diasumsikan) stasioner, matriks kovarians tunggal bermakna. Jika data Anda terintegrasi dengan urutan 1 atau lebih tinggi, seperti yang saya duga, estimasi matriks kovarians tunggal tidak akan menghasilkan hasil yang konsisten. Jalan acak misalnya terintegrasi dari pesanan 1, dan perkiraan kovarian dari dua jalan acak tidak mengatakan apa-apa tentang gerakan bersama mereka, di sini analisis gabungan diperlukan.

Seperti yang disarankan dalam komentar, PCA sendiri tidak peduli dengan stasioneritas sehingga Anda dapat memberi makan PCA setiap matriks semi-pasti positif dan dekomposisi PC akan baik-baik saja dalam arti PCA.

Tetapi jika matriks kovarians Anda yang diperkirakan tidak mewakili sesuatu yang bermakna tentang data, maka PCA tentu saja tidak akan baik.

Duffau
sumber
1
+1. Apa yang Anda maksud dengan "perbedaan pertama kali"?
Amuba kata Reinstate Monica
Maksud saya perbedaan pertama, jadi untuk masing-masing dua belas x saya akan melakukan x_t - x_t-1.
Duffau
Jadi Anda menyarankan untuk melakukan PCA tentang turunan waktu dari setiap seri waktu, sebagai lawan dari deret waktu itu sendiri. Itu menarik; mengapa ini menjadi saran pertama Anda?
Amuba mengatakan Reinstate Monica
Untuk dua alasan: 1) Agar estimasi kovarians konsisten, asumsi cross sectional normal adalah untuk dua variabel acak untuk menjadi independen dan terdistribusi secara identik (iid). Ini memastikan konvergensi sampel berarti dengan nilai yang diharapkan, yang disebut Hukum angka besar (LLN). Dalam analisis deret waktu, asumsi dua proses stokastik yang sedang dilakukan adalah restriktif. Jadi diganti dengan gagasan stasioneritas (dari berbagai jenis). Agar LLN bertahan dan estimasi kovarian konsisten, kedua seri harus memiliki distribusi stasioner bersama.
Duffau
Jika setiap proses stokastik adalah staionary maka (saya paling positif itu) mereka bersama-sama diam, maka estimasi kovarian masuk akal. Perbedaan pertama adalah teknik standar dalam ekonometrika untuk membuat deret waktu "lebih stasioner". Dan dari sini estimasi dan PCA lurus ke depan. Singkatnya, karena mudah :-) .... ok tidak ada alasan kedua ..
Duffau
2

Ya, PCA pada deret waktu dilakukan sepanjang waktu dalam rekayasa keuangan (keuangan kuantitatif) dan neurologi.

Dalam rekayasa keuangan, matriks data dibangun dengan aset (misalnya, saham) dalam kolom yang mewakili fitur, dan baris yang mewakili misalnya hari (atau objek) untuk perdagangan akhir hari. Dengan demikian, matriks dataXt×hal telah t baris dan halkolom. Namun, perhatikan bahwa pengembalian log,rt=catatan(Pt)-catatan(Pt-1)=catatan(Pt/Pt-1), digunakan karena harga harian terdistribusi secara normal - yaitu miring dengan ekor kanan. Karena ada 250 hari perdagangan / tahun, layak untuk mengambil data 1000 hari yang mewakili 4 tahun perdagangan. Karena unit yang sama (misalnya USD) biasanya digunakan untuk pengembalian harga log harian, makahal×halmatriks kovarians untuk fitur digunakan untuk komposisi eigend. Jika tidak, jika mata uang yang berbeda digunakan, matriks korelasi digunakan untuk komposisi eigend, karena rata-rata korelasi-nol menstandarkan kolom-kolom dariX. Ketika selesai menjalankan PCA pada aset, Anda dapat melihat stok mana yang memuat PC mana, semacam pendekatan pengelompokan, atau menggunakan skor PC untuk input ke dalam analisis lain. PCA juga dijalankan di Internett×tmatriks kovarians selama berhari-hari, dengan aset dalam baris, untuk menciutkan hari-hari yang berkorelasi bersama menjadi satu PC, karena ide umumnya adalah bahwa hari dapat menjadi berlebihan - dan ketika memasukkan data ke dalam mis. jaringan saraf, Anda tidak ingin baris data menjadi redundan atau fitur yang akan dikorelasikan (Anda ingin mereka menjadi ortogonal), karena jaring saraf akan menghabiskan waktu untuk mempelajari korelasinya. Namun pendekatan ini tidak fokus pada autokorelasi.

Dalam keuangan kuantitatif, ada juga minat yang besar dalam pertama kali menemukan cutoff kebisingan dalam nilai eigen dari matriks kovarians (korelasi) untuk banyak aset untuk meningkatkan optimalisasi portofolio (Markowitzian), karena Anda menginginkan portofolio yang berada di "perbatasan efisien" "Dengan aset yang tidak berkorelasi. Pendekatan ini mengeksploitasi hukum Marcenko-Pastur dan rasionyaγ=t/n dari matriks data X untuk menyesuaikan kepadatan nilai eigen, dan menemukan cuttoff noise yang dikenal sebagai λ+, di atas itu nilai eigen mewakili sinyal, dan di bawahnya nilai eigen mewakili noise. Setelah nilai eigen kebisingan diidentifikasi, dataset baru didasarkan pada (multivarian) regresi data asli pada skor PC yang mewakili vektor eigen kebisingan,Y=Fnβ, dan residu kemudian digunakan sebagai dataset denoised, yaitu, X^=Y-Y^. Nilai kekayaan (pengembalian kumulatif) dari portofolio yang dibangun menggunakan bobot yang berasal dari dataset baru (residual) telah terbukti jauh lebih besar daripada tanpa menggunakan pendekatan ini. Terakhir, ada juga metode dasar untuk menghapus "efek pasar" atau korelasi luas di antara pengembalian saham dengan regresi data aset pada PC pertama yang mewakili nilai eigen utama (terbesar),Y=f1β, dan menarik kembali residu untuk mewakili data baru, yang akan menghapus korelasi pasar yang luas. (sejak PC pertama selalu mewakili saham dengan multikolinieritas tinggi). Pendekatan ini mengatasi sentimen pasar yang berakar pada "mentalitas kawanan."

Dalam neurologi, PCA dijalankan pada time-series untuk potensi aksi dalam berbagai band gelombang yang diperoleh dari EEG. Mengubah potensi aksi menjadi vektor skor PC ortogonal (tidak berkorelasi) dan memasukkan PC ke dalam analisis lain adalah sarana utama yang dengannya daya statistik ditingkatkan dalam pemodelan genetik statistik sifat-sifat kompleks untuk genetika perilaku (karena fenotipe misalnya bi-polar, novelty- mencari, schizotypal, schozephrenia sering tumpang tindih). Studi-studi kembar genetik Australia yang besar berperan dalam mengurai sifat-sifat yang tumpang tindih ini dalam genetika perilaku, karena jika ada perbedaan penyakit di antara kembar identik yang dipelihara bersama (tumbuh dalam rumah tangga yang sama), inferensial kausal dapat menunjukkan paparan di lingkungan yang berbeda ketika mereka lebih tua daripada genetika identik mereka.

JoleT
sumber