All Projects → tsurubee → Banpei

tsurubee / Banpei

Licence: mit
Anomaly detection library based on singular spectrum transformation(sst)

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Banpei

Awesome Aiops
AIOps学习资料汇总,欢迎一起补全这个仓库,欢迎star
Stars: ✭ 931 (+303.03%)
Mutual labels:  anomaly-detection, time-series-analysis
awesome-time-series
Resources for working with time series and sequence data
Stars: ✭ 178 (-22.94%)
Mutual labels:  time-series-analysis, anomaly-detection
Matrixprofile
A Python 3 library making time series data mining tasks, utilizing matrix profile algorithms, accessible to everyone.
Stars: ✭ 141 (-38.96%)
Mutual labels:  anomaly-detection, time-series-analysis
Anomaly Detection Resources
Anomaly detection related books, papers, videos, and toolboxes
Stars: ✭ 5,306 (+2196.97%)
Mutual labels:  anomaly-detection, time-series-analysis
Bayesloop
Probabilistic programming framework that facilitates objective model selection for time-varying parameter models.
Stars: ✭ 87 (-62.34%)
Mutual labels:  anomaly-detection, time-series-analysis
Pyodds
An End-to-end Outlier Detection System
Stars: ✭ 141 (-38.96%)
Mutual labels:  anomaly-detection, time-series-analysis
Stumpy
STUMPY is a powerful and scalable Python library for modern time series analysis
Stars: ✭ 2,019 (+774.03%)
Mutual labels:  anomaly-detection, time-series-analysis
Pyfts
An open source library for Fuzzy Time Series in Python
Stars: ✭ 154 (-33.33%)
Mutual labels:  time-series-analysis
Lstm anomaly thesis
Anomaly detection for temporal data using LSTMs
Stars: ✭ 178 (-22.94%)
Mutual labels:  anomaly-detection
Deep Sad Pytorch
A PyTorch implementation of Deep SAD, a deep Semi-supervised Anomaly Detection method.
Stars: ✭ 152 (-34.2%)
Mutual labels:  anomaly-detection
Novelty Detection
Latent space autoregression for novelty detection.
Stars: ✭ 152 (-34.2%)
Mutual labels:  anomaly-detection
Anogan Keras
Unsupervised anomaly detection with generative model, keras implementation
Stars: ✭ 157 (-32.03%)
Mutual labels:  anomaly-detection
Midas
Go implementation of MIDAS: Microcluster-Based Detector of Anomalies in Edge Streams
Stars: ✭ 180 (-22.08%)
Mutual labels:  anomaly-detection
Kitnet Py
KitNET is a lightweight online anomaly detection algorithm, which uses an ensemble of autoencoders.
Stars: ✭ 152 (-34.2%)
Mutual labels:  anomaly-detection
Taganomaly
Anomaly detection analysis and labeling tool, specifically for multiple time series (one time series per category)
Stars: ✭ 200 (-13.42%)
Mutual labels:  anomaly-detection
Adaptive Alerting
Anomaly detection for streaming time series, featuring automated model selection.
Stars: ✭ 152 (-34.2%)
Mutual labels:  anomaly-detection
Anogan Tf
Unofficial Tensorflow Implementation of AnoGAN (Anomaly GAN)
Stars: ✭ 218 (-5.63%)
Mutual labels:  anomaly-detection
Bamboobsc
bambooBSC is an opensource Balanced Scorecard (BSC) Business Intelligence (BI) Web platform. BSC's Vision, Perspectives, Objectives of strategy, Key Performance Indicators (KPIs), Strategy Map, and SWOT, PDCA & PDCA report, Time Series Analysis.
Stars: ✭ 197 (-14.72%)
Mutual labels:  time-series-analysis
Log Anomaly Detector
Log Anomaly Detection - Machine learning to detect abnormal events logs
Stars: ✭ 169 (-26.84%)
Mutual labels:  anomaly-detection
Spark Iforest
Isolation Forest on Spark
Stars: ✭ 166 (-28.14%)
Mutual labels:  anomaly-detection

Banpei

Build Status

Banpei is a Python package of the anomaly detection.
Anomaly detection is a technique used to identify unusual patterns that do not conform to expected behavior.

System

Python ^3.6 (2.x is not supported)

Installation

$ pip install banpei

After installation, you can import banpei in Python.

$ python
>>> import banpei

Usage

Example

Singular spectrum transformation(sst)

import banpei 
model   = banpei.SST(w=50)
results = model.detect(data)

The input 'data' must be one-dimensional array-like object containing a sequence of values.
The output 'results' is Numpy array with the same size as input data.
The graph below shows the change-point scoring calculated by sst for the periodic data.

sst_example

The data used is placed as '/tests/test_data/periodic_wave.csv'. You can read a CSV file using the following code.

import pandas as pd
raw_data = pd.read_csv('./tests/test_data/periodic_wave.csv')
data = raw_data['y']

SST processing can be accelerated using the Lanczos method which is one of Krylov subspace methods by specifying True for the is_lanczos argument like below.

results = model.detect(data, is_lanczos=True)

Real-time monitoring with Bokeh

Banpei is developed with the goal of constructing the environment of real-time abnormality monitoring. In order to achieve the goal, Banpei has the function corresponded to the streaming data. With the help of Bokeh, which is great visualization library, we can construct the simple monitoring tool.
Here's a simple demonstration movie of change-point detection of the data trends.

sst detection
https://youtu.be/7_woubLAhXk
The sample code how to construct real-time monitoring environment is placed in '/demo' folder.

The implemented algorithm

Outlier detection

  • Hotelling's theory

Change point detection

  • Singular spectrum transformation(sst)

License

This project is licensed under the terms of the MIT license, see LICENSE.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].