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!

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

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Cara menulis algoritma peramalan siri masa menggunakan C# Peramalan siri masa ialah kaedah meramal arah aliran data masa hadapan dengan menganalisis data lepas. Ia mempunyai aplikasi yang luas dalam banyak bidang seperti kewangan, jualan dan ramalan cuaca. Dalam artikel ini, kami akan memperkenalkan cara menulis algoritma ramalan siri masa menggunakan C#, dengan contoh kod khusus. Penyediaan Data Sebelum melakukan peramalan siri masa, anda perlu menyediakan data terlebih dahulu. Secara umumnya, data siri masa hendaklah mempunyai panjang yang mencukupi dan disusun mengikut urutan kronologi. Anda boleh mendapatkannya daripada pangkalan data atau

XGBoost ialah perpustakaan pembelajaran mesin sumber terbuka yang popular yang boleh digunakan untuk menyelesaikan pelbagai masalah ramalan. Seseorang perlu memahami cara menggunakannya dengan InfluxDB untuk ramalan siri masa. Penterjemah |. Disemak oleh Li Rui |. Sun Shujuan XGBoost ialah perpustakaan pembelajaran mesin sumber terbuka yang melaksanakan algoritma peningkatan kecerunan teragih yang dioptimumkan. XGBoost menggunakan pemprosesan selari untuk prestasi pantas, mengendalikan nilai yang hilang dengan baik, berprestasi baik pada set data kecil dan mengelakkan pemasangan berlebihan. Semua kelebihan ini menjadikan XGBoost penyelesaian yang popular untuk masalah regresi seperti ramalan. Ramalan adalah misi kritikal untuk pelbagai objektif perniagaan seperti analisis ramalan, penyelenggaraan ramalan, perancangan produk, belanjawan, dsb. Banyak masalah ramalan atau ramalan melibatkan siri masa

Jangan ubah maksud kandungan asal, perhalusi kandungan, tulis semula kandungan dan jangan teruskan. "Regression kuantil memenuhi keperluan ini, menyediakan selang ramalan dengan peluang yang dikira. Ia adalah teknik statistik yang digunakan untuk memodelkan hubungan antara pembolehubah peramal dan pembolehubah tindak balas, terutamanya apabila taburan bersyarat pembolehubah tindak balas adalah menarik Apabila. Tidak seperti regresi tradisional kaedah, regresi kuantil memfokuskan pada menganggar magnitud bersyarat pembolehubah bergerak balas dan bukannya min bersyarat "Rajah (A): Regresi kuantil Regresi kuantil ialah anggaran. Kaedah pemodelan untuk hubungan linear antara set regresi X dan kuantil. daripada pembolehubah yang dijelaskan Y. Model regresi yang sedia ada sebenarnya adalah kaedah untuk mengkaji hubungan antara pembolehubah yang dijelaskan dan pembolehubah penjelasan. Mereka memberi tumpuan kepada hubungan antara pembolehubah penjelasan dan pembolehubah yang dijelaskan

Hari ini saya ingin berkongsi kerja penyelidikan terbaru dari University of Connecticut yang mencadangkan kaedah untuk menyelaraskan data siri masa dengan model pemprosesan bahasa semula jadi (NLP) yang besar pada ruang terpendam untuk meningkatkan prestasi peramalan siri masa. Kunci kepada kaedah ini ialah menggunakan petunjuk spatial terpendam (prompt) untuk meningkatkan ketepatan ramalan siri masa. Tajuk kertas: S2IP-LLM: SemanticSpaceInformedPromptLearningwithLLMforTimeSeriesForecasting Alamat muat turun: https://arxiv.org/pdf/2403.05798v1.pdf 1. Model latar belakang masalah besar

Siri M-Competitions Makridakis (masing-masing dikenali sebagai M4 dan M5) telah diadakan pada tahun 2018 dan 2020 (M6 juga diadakan pada tahun ini). Bagi mereka yang tidak tahu, pertandingan siri-m boleh dianggap sebagai ringkasan keadaan semasa ekosistem siri masa, memberikan bukti empirikal dan objektif untuk teori dan amalan ramalan semasa. Keputusan daripada M4 2018 menunjukkan bahawa kaedah "ML" tulen mengatasi kaedah statistik tradisional dengan margin besar yang tidak dijangka pada masa itu. Dalam M5[1] dua tahun kemudian, skor tertinggi adalah dengan hanya kaedah "ML". Dan semua 50 teratas pada asasnya berdasarkan ML (kebanyakannya model pokok). Permainan ini menyaksikan LightG

Cara menggunakan PHP untuk melaksanakan pengesanan anomali dan analisis penipuan Abstrak: Dengan perkembangan e-dagang, penipuan telah menjadi masalah yang tidak boleh diabaikan. Artikel ini memperkenalkan cara menggunakan PHP untuk melaksanakan pengesanan anomali dan analisis penipuan. Dengan mengumpul data transaksi pengguna dan data tingkah laku, digabungkan dengan algoritma pembelajaran mesin, tingkah laku pengguna dipantau dan dianalisis dalam masa nyata dalam sistem, potensi penipuan dikenal pasti, dan langkah yang sepadan diambil untuk menanganinya. Kata kunci: PHP, pengesanan anomali, analisis penipuan, pembelajaran mesin 1. Pengenalan Dengan perkembangan pesat e-dagang, bilangan transaksi yang dilakukan oleh orang di Internet

Siri masa ialah urutan titik data, biasanya terdiri daripada pengukuran berturut-turut yang diambil dalam tempoh masa. Analisis siri masa ialah proses pemodelan dan analisis data siri masa menggunakan teknik statistik untuk mengekstrak maklumat yang bermakna daripadanya dan membuat ramalan. Analisis siri masa ialah alat berkuasa yang boleh digunakan untuk mengekstrak maklumat berharga daripada data dan membuat ramalan tentang peristiwa masa hadapan. Ia boleh digunakan untuk mengenal pasti arah aliran, corak bermusim dan perhubungan lain antara pembolehubah. Analisis siri masa juga boleh digunakan untuk meramalkan peristiwa masa hadapan seperti jualan, permintaan atau perubahan harga. Jika anda bekerja dengan data siri masa dalam Python, terdapat banyak perpustakaan yang berbeza untuk dipilih. Jadi dalam artikel ini, kami akan menyusun perpustakaan paling popular untuk bekerja dengan siri masa dalam Python. S

Penjelasan terperinci tentang model ARMA dalam Python Model ARMA ialah jenis model siri masa yang penting dalam statistik, yang boleh digunakan untuk ramalan dan analisis data siri masa. Python menyediakan banyak perpustakaan dan kotak alat yang boleh menggunakan model ARMA dengan mudah untuk pemodelan siri masa. Artikel ini akan memperkenalkan model ARMA dalam Python secara terperinci. 1. Apakah model ARMA? Model ARMA ialah model siri masa yang terdiri daripada model autoregresif (model AR) dan model purata bergerak (model MA). Antaranya, model AR
