Masalah pengesanan anomali berdasarkan siri masa
Masalah pengesanan anomali berasaskan siri masa memerlukan contoh kod khusus
Data siri masa ialah data yang direkodkan dalam susunan tertentu dari semasa ke semasa, seperti harga saham, perubahan suhu, aliran trafik, dsb. Dalam aplikasi praktikal, pengesanan anomali data siri masa adalah sangat penting. Outlier boleh menjadi nilai melampau yang tidak konsisten dengan data biasa, hingar, data yang salah atau peristiwa yang tidak dijangka dalam situasi tertentu. Pengesanan anomali boleh membantu kami menemui anomali ini dan mengambil langkah yang sesuai.
Terdapat banyak kaedah yang biasa digunakan untuk masalah pengesanan anomali dalam siri masa, termasuk kaedah statistik, kaedah pembelajaran mesin dan kaedah pembelajaran mendalam. Artikel ini akan memperkenalkan dua algoritma pengesanan anomali siri masa berdasarkan kaedah statistik dan kaedah pembelajaran mesin serta memberikan contoh kod yang sepadan.
1. Algoritma pengesanan anomali berdasarkan kaedah statistik
1.1 Kaedah min-varian
Kaedah min-varian ialah salah satu kaedah pengesanan anomali yang paling mudah. Idea asas adalah untuk menentukan sama ada terdapat keabnormalan berdasarkan min dan varians data siri masa. Jika sisihan titik data daripada min lebih besar daripada ambang tertentu (contohnya, 3 kali sisihan piawai), ia dinilai sebagai anomali.
Berikut ialah contoh kod yang menggunakan Python untuk melaksanakan kaedah min-variance untuk pengesanan anomali siri masa:
import numpy as np def detect_outliers_mean_std(data, threshold=3): mean = np.mean(data) std = np.std(data) outliers = [] for i in range(len(data)): if abs(data[i] - mean) > threshold * std: outliers.append(i) return outliers # 示例数据 data = [1, 2, 3, 4, 5, 20, 6, 7, 8, 9] # 检测异常值 outliers = detect_outliers_mean_std(data) print("异常数据索引:", outliers)
Hasil berjalan:
Indeks data tidak normal: [5]
1.2 Kaedah plot kotak
kaedah adalah satu lagi Kaedah pengesanan anomali yang biasa digunakan. Ia menentukan outlier berdasarkan kuartil data (kuartil atas dan bawah, median). Berdasarkan median (Q2) dan kuartil atas dan bawah (Q1, Q3), sempadan atas dan bawah boleh dikira Jika titik data melebihi sempadan ini, ia dinilai sebagai anomali.
Berikut ialah contoh kod menggunakan Python untuk melaksanakan kaedah plot kotak untuk pengesanan anomali siri masa:
import numpy as np import seaborn as sns def detect_outliers_boxplot(data): q1 = np.percentile(data, 25) q3 = np.percentile(data, 75) iqr = q3 - q1 outliers = [] for i in range(len(data)): if data[i] < q1 - 1.5 * iqr or data[i] > q3 + 1.5 * iqr: outliers.append(i) return outliers # 示例数据 data = [1, 2, 3, 4, 5, 20, 6, 7, 8, 9] # 绘制箱型图 sns.boxplot(data=data) # 检测异常值 outliers = detect_outliers_boxplot(data) print("异常数据索引:", outliers)
Hasil berjalan:
Indeks data tidak normal: [5]
2. Algoritma pengesanan anomali berdasarkan kaedah pembelajaran mesin
2.1 Algoritma Hutan Pengasingan
Algoritma Hutan Pengasingan ialah kaedah pengesanan anomali berdasarkan pembelajaran tanpa pengawasan. Ia menggunakan kaedah pembahagian pokok keputusan untuk menentukan keabnormalan titik data. Algoritma hutan pengasingan mengandaikan bahawa outlier mempunyai ketumpatan yang lebih rendah pada ruang ciri, jadi apabila membina pepohon keputusan, panjang laluan outlier akan menjadi lebih pendek.
Berikut ialah contoh kod menggunakan Python untuk melaksanakan algoritma hutan pengasingan untuk pengesanan anomali siri masa:
from sklearn.ensemble import IsolationForest def detect_outliers_isolation_forest(data): model = IsolationForest(contamination=0.1, random_state=0) model.fit(data.reshape(-1, 1)) outliers = model.predict(data.reshape(-1, 1)) return np.where(outliers == -1)[0] # 示例数据 data = [1, 2, 3, 4, 5, 20, 6, 7, 8, 9] # 检测异常值 outliers = detect_outliers_isolation_forest(data) print("异常数据索引:", outliers)
Hasil berjalan:
Indeks data tidak normal: [5]
2.2 Kaedah penguraian siri masa
kaedah adalah kaedah pengesanan Anomali berdasarkan kaedah statistik tradisional menguraikan data siri masa kepada tiga bahagian: arah aliran, bermusim dan baki, dan menentukan titik abnormal dengan menganalisis baki.
Berikut ialah contoh kod menggunakan Python untuk melaksanakan kaedah penguraian siri masa untuk pengesanan anomali siri masa:
import statsmodels.api as sm def detect_outliers_time_series(data): decomposition = sm.tsa.seasonal_decompose(data, model='additive') residuals = decomposition.resid outliers = [] for i in range(len(residuals)): if abs(residuals[i]) > 2 * np.std(residuals): outliers.append(i) return outliers # 示例数据 data = [1, 7, 3, 4, 5, 20, 6, 7, 8, 9] # 检测异常值 outliers = detect_outliers_time_series(data) print("异常数据索引:", outliers)
Hasil berjalan:
Indeks data tidak normal: [1, 5]
Kesimpulan
Masalah pengesanan anomali on time series ialah Soalan yang sangat penting dan praktikal. Artikel ini memperkenalkan dua kaedah pengesanan anomali yang biasa digunakan, termasuk kaedah min-variance dan kaedah boxplot berdasarkan kaedah statistik, dan algoritma hutan pengasingan dan kaedah penguraian siri masa berdasarkan kaedah pembelajaran mesin. Melalui contoh kod di atas, pembaca boleh memahami cara menggunakan Python untuk melaksanakan algoritma ini dan menggunakannya pada data siri masa sebenar untuk pengesanan anomali. Saya harap artikel ini akan membantu pembaca tentang pengesanan anomali siri masa.
Atas ialah kandungan terperinci Masalah pengesanan anomali berdasarkan siri masa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Pengenalan Katakan ada petani yang setiap hari memerhatikan kemajuan tanaman dalam beberapa minggu. Dia melihat kadar pertumbuhan dan mula merenungkan betapa lebih tinggi tumbuhannya dapat tumbuh dalam beberapa minggu lagi. Dari th

Soft AI-yang ditakrifkan sebagai sistem AI yang direka untuk melaksanakan tugas-tugas tertentu yang sempit menggunakan penalaran, pengiktirafan corak, dan pengambilan keputusan yang fleksibel-bertujuan untuk meniru pemikiran seperti manusia dengan merangkul kekaburan. Tetapi apa maksudnya untuk busine

Jawapannya jelas-seperti pengkomputeran awan memerlukan peralihan ke arah alat keselamatan awan asli, AI menuntut satu penyelesaian keselamatan baru yang direka khusus untuk keperluan unik AI. Kebangkitan pengkomputeran awan dan pelajaran keselamatan dipelajari Dalam th

Usahawan dan menggunakan AI dan Generatif AI untuk menjadikan perniagaan mereka lebih baik. Pada masa yang sama, adalah penting untuk mengingati AI generatif, seperti semua teknologi, adalah penguat - menjadikan yang hebat dan yang biasa -biasa saja, lebih buruk. Kajian 2024 yang ketat o

Buka kunci kekuatan model embedding: menyelam jauh ke kursus baru Andrew Ng Bayangkan masa depan di mana mesin memahami dan menjawab soalan anda dengan ketepatan yang sempurna. Ini bukan fiksyen sains; Terima kasih kepada kemajuan dalam AI, ia menjadi R

Model bahasa besar (LLM) dan masalah halusinasi yang tidak dapat dielakkan Anda mungkin menggunakan model AI seperti ChatGPT, Claude, dan Gemini. Ini semua contoh model bahasa besar (LLM), sistem AI yang kuat yang dilatih dalam dataset teks besar -besaran ke

Penyelidikan baru-baru ini telah menunjukkan bahawa gambaran AI boleh menyebabkan penurunan 15-64% dalam trafik organik, berdasarkan jenis industri dan carian. Perubahan radikal ini menyebabkan pemasar untuk menimbang semula keseluruhan strategi mereka mengenai penglihatan digital. Yang baru

Laporan baru -baru ini dari Elon University Imagining the Digital Future Centre meninjau hampir 300 pakar teknologi global. Laporan yang dihasilkan, 'Menjadi Manusia pada tahun 2035', menyimpulkan bahawa kebanyakannya bimbang bahawa penggunaan sistem AI yang mendalam lebih daripada t


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

mPDF
mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

VSCode Windows 64-bit Muat Turun
Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft