Anomaly detection package
Project description
This library is Python projects for anomaly detection. This contains these techniques.
- Kullback-Leibler desity estimation
- Singular spectrum analysis
- Graphical lasso
- CUMSUM anomaly detection
- Hoteling T2
- Directional data anomaly detection
REQUIREMENTS
- numpy
- pandas
INSTALLATION
pip install pyanom
USAGE
Kullback-Leibler desity estimation
import numpy as np from pyanom.density_ratio_estimation import KLDensityRatioEstimation X_normal = np.loadtxt("../input/normal_data.csv", delimiter=",") X_error = np.loadtxt("../input/error_data.csv", delimiter=",") model = KLDensityRatioEstimation( band_width=0.1, learning_rate=0.1, num_iterations=100) model.fit(X_normal, X_error) anomaly_score = model.predict(X_normal, X_error)
Singular spectrum analysis
import numpy as np from pyanom.subspace_methods import SSA y_error = np.loadtxt("../input/timeseries_error2.csv", delimiter=",") model = SSA() model.fit(y_error, window_size=50, trajectory_n=25, trajectory_pattern=3, test_n=25, test_pattern=2, lag=25) anomaly_score = model.score()
Graphical lasso
import numpy as np from pyanom.structure_learning import GraphicalLasso X_normal = np.loadtxt("../input/normal_data.csv", delimiter=",") X_error = np.loadtxt("../input/error_data.csv", delimiter=",") model = GraphicalLasso() model.fit(X_normal, rho=0.01, normalize=True) anomaly_score = model.outlier_analysis_score(X_error)
CUSUM anomaly detection
import numpy as np from pyanom.outlier_detection import CAD y_normal = np.loadtxt( "../input/timeseries_normal.csv", delimiter=",").reshape(-1, 1) y_error = np.loadtxt( "../input/timeseries_error.csv", delimiter=",").reshape(-1, 1) model = CAD() model.fit(y_normal, threshold=1) anomaly_score = model.score(y_error)
Hoteling T2
import numpy as np from pyanom.outlier_detection import HotelingT2 X_normal = np.loadtxt("../input/normal_data.csv", delimiter=",") X_error = np.loadtxt("../input/error_data.csv", delimiter=",") model = HotelingT2() model.fit(X_normal) anomaly_score = model.score(X_error)
Directional data anomaly DirectionalDataAnomalyDetection
import numpy as np from pyanom.outlier_detection import DirectionalDataAnomalyDetection X_normal = np.loadtxt( "../input/normal_direction_data.csv", delimiter=",") X_error = np.loadtxt("../input/error_direction_data.csv", delimiter=",") model = DirectionalDataAnomalyDetection() model.fit(X_normal, normalize=True)) anomaly_score = model.score(X_error)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size pyanom-0.0.1b1-py3-none-any.whl (8.7 kB) | File type Wheel | Python version py3 | Upload date | Hashes View |
Filename, size pyanom-0.0.1b1.tar.gz (8.1 kB) | File type Source | Python version None | Upload date | Hashes View |