Data siri masa terdapat di mana-mana merentasi pelbagai industri, namun sementara ramalan siri masa mendapat perhatian yang besar, klasifikasi siri masa sering diabaikan. Artikel ini menyediakan pengenalan menyeluruh kepada klasifikasi siri masa, meneroka aplikasi dunia sebenar, menyemak pelbagai kaedah dan menunjukkan beberapa teknik ini dalam projek pengelasan berasaskan Python. Mari mulakan!
Memahami Klasifikasi Siri Masa
Klasifikasi siri masa ialah teknik pembelajaran mesin yang diselia di mana satu atau lebih ciri, diukur dari semasa ke semasa, digunakan untuk menetapkan kategori. Objektifnya adalah untuk melabelkan siri masa dan bukannya meramalkan nilai masa hadapan.
Aplikasi Dunia Sebenar bagi Klasifikasi Siri Masa
Klasifikasi siri masa mendapat penggunaan yang meluas, terutamanya dengan data penderia. Aplikasi utama termasuk:
Aplikasi pelbagai ini menyerlahkan kepentingan klasifikasi siri masa dalam pelbagai bidang.
Ikhtisar Model Pengelasan Siri Masa
Banyak pendekatan wujud untuk klasifikasi siri masa. Bahagian ini menawarkan gambaran keseluruhan ringkas bagi setiap satu, dengan penjelasan yang lebih terperinci tersedia dalam panduan khusus ini [pautan ke panduan, jika ada].
1. Model Berasaskan Jarak: Model ini menggunakan metrik jarak (cth., jarak Euclidean) untuk mengklasifikasikan sampel. Dynamic Time Warping (DTW) menawarkan pendekatan yang lebih mantap, menampung siri panjang yang berbeza-beza dan mengendalikan corak yang sedikit di luar fasa. Contohnya termasuk jiran terdekat K (KNN) dan ShapeDTW.
2. Model Berasaskan Kamus: Model ini mengekod corak siri menggunakan simbol dan leverage simbol kekerapan untuk pengelasan. Contohnya termasuk BOSS, WASEL, TDE dan MUSE.
3. Kaedah Ensemble: Ini bukan model itu sendiri melainkan rangka kerja yang menggabungkan berbilang penganggar asas untuk ramalan yang lebih baik. Kelebihan utama ialah keupayaan mereka untuk mengendalikan data multivariat menggunakan model univariat (cth., pembungkusan). Contohnya termasuk beg, ensembel berwajaran dan hutan siri masa.
4. Kaedah Berasaskan Ciri: Kaedah ini mengekstrak ciri daripada siri masa (cth., statistik ringkasan, Catch22, profil matriks, TSFresh) yang kemudiannya digunakan untuk melatih pengelas.
5. Model Berasaskan Selang: Ini mengekstrak berbilang selang daripada siri masa, mengira ciri menggunakan kaedah yang dinyatakan di atas, dan kemudian melatih pengelas. Contohnya termasuk RISE, CIF dan DrCIF.
6. Model Berasaskan Kernel: Model ini menggunakan fungsi kernel untuk memetakan siri masa ke ruang berdimensi lebih tinggi untuk pengelasan yang lebih mudah. Contohnya termasuk Pengelas Vektor Sokongan (SVC), Roket dan Arsenal (kumpulan Roket).
7. Pengelas Shapelet: Pengelas ini mengenal pasti dan menggunakan shapelet (urutan diskriminasi) untuk pengelasan berdasarkan perbandingan jarak.
8. Pengelas Meta: Ini menggabungkan pelbagai kaedah untuk prestasi pengelasan yang mantap. HIVE-COTE, menggabungkan TDE, Shapelet, DrCIF dan Arsenal, adalah contohnya, walaupun ia mahal dari segi pengiraan.
Pilihan kaedah bergantung pada faktor seperti ciri data, sumber pengiraan dan ketepatan yang diingini.
Projek Klasifikasi Siri Masa Hands-On (Python)
Bahagian ini menggunakan beberapa teknik yang dinyatakan di atas pada set data BasicMotions [pautan ke set data], yang terdiri daripada data pecutan dan giroskop daripada individu yang melakukan pelbagai aktiviti (berdiri, berjalan, berlari, badminton).
Persediaan:
<code class="language-python">import pandas as pd import numpy as np import matplotlib.pyplot as plt from sktime.datasets import load_basic_motions from sklearn.model_selection import GridSearchCV, KFold</code>
Pemuatan Data:
<code class="language-python">X_train, y_train = load_basic_motions(split='train', return_type='numpy3D') X_test, y_test = load_basic_motions(split='test', return_type='numpy3D')</code>
Penggambaran Data (contoh membandingkan berjalan kaki dan badminton):
<code class="language-python"># ... (Visualization code as provided in the original article) ...</code>
KNN Klasifikasi:
<code class="language-python"># ... (KNN code as provided in the original article) ...</code>
Membungkus dengan WASEL:
<code class="language-python"># ... (Bagging with WEASEL code as provided in the original article) ...</code>
Penilaian:
<code class="language-python"># ... (Evaluation code as provided in the original article) ...</code>
Kesimpulan
Artikel ini memberikan pengenalan kepada klasifikasi siri masa, meliputi aplikasinya dan pelbagai kaedah. Projek praktikal menunjukkan aplikasi KNN dan bagging dengan WASEL. Penerokaan lanjut dalam bidang ini adalah digalakkan.
Langkah Seterusnya
Untuk meneruskan pembelajaran, pertimbangkan untuk meneroka sumber yang disebut dalam artikel asal, termasuk panduan kaedah pengelasan siri masa dan kursus mengenai subjek tersebut.
Rujukan
Atas ialah kandungan terperinci Pengenalan Lengkap kepada Klasifikasi Siri Masa dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!