All Projects → baidu → Curve

baidu / Curve

Licence: apache-2.0
An Integrated Experimental Platform for time series data anomaly detection.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Curve

Hastic Server
Hastic data management server for analyzing patterns and anomalies from Grafana
Stars: ✭ 292 (-28.43%)
Mutual labels:  anomaly-detection, monitoring-tool
Credit Card Fraud Detection Using Autoencoders In Keras
iPython notebook and pre-trained model that shows how to build deep Autoencoder in Keras for Anomaly Detection in credit card transactions data
Stars: ✭ 337 (-17.4%)
Mutual labels:  anomaly-detection
Static status
🚦Bash script to generate a static status page.
Stars: ✭ 286 (-29.9%)
Mutual labels:  monitoring-tool
Vott
Visual Object Tagging Tool: An electron app for building end to end Object Detection Models from Images and Videos.
Stars: ✭ 3,684 (+802.94%)
Mutual labels:  labeling
Rrcf
🌲 Implementation of the Robust Random Cut Forest algorithm for anomaly detection on streams
Stars: ✭ 289 (-29.17%)
Mutual labels:  anomaly-detection
Deep Svdd Pytorch
A PyTorch implementation of the Deep SVDD anomaly detection method
Stars: ✭ 320 (-21.57%)
Mutual labels:  anomaly-detection
2018 Machinelearning Lectures Esa
Machine Learning Lectures at the European Space Agency (ESA) in 2018
Stars: ✭ 280 (-31.37%)
Mutual labels:  anomaly-detection
Overwatch
Overwatch is a general RPC monitoring system.
Stars: ✭ 373 (-8.58%)
Mutual labels:  monitoring-tool
Deepadots
Repository of the paper "A Systematic Evaluation of Deep Anomaly Detection Methods for Time Series".
Stars: ✭ 335 (-17.89%)
Mutual labels:  anomaly-detection
Ano pred cvpr2018
Official implementation of Paper Future Frame Prediction for Anomaly Detection -- A New Baseline, CVPR 2018
Stars: ✭ 309 (-24.26%)
Mutual labels:  anomaly-detection
Spidermon
Scrapy Extension for monitoring spiders execution.
Stars: ✭ 309 (-24.26%)
Mutual labels:  monitoring-tool
Skyline
Anomaly detection
Stars: ✭ 303 (-25.74%)
Mutual labels:  anomaly-detection
Luminaire
Luminaire is a python package that provides ML driven solutions for monitoring time series data.
Stars: ✭ 316 (-22.55%)
Mutual labels:  anomaly-detection
Spectral
Python module for hyperspectral image processing
Stars: ✭ 290 (-28.92%)
Mutual labels:  anomaly-detection
Outlier Exposure
Deep Anomaly Detection with Outlier Exposure (ICLR 2019)
Stars: ✭ 343 (-15.93%)
Mutual labels:  anomaly-detection
Clearly
Clearly see and debug your celery cluster in real time!
Stars: ✭ 287 (-29.66%)
Mutual labels:  monitoring-tool
Monitoror
Unified monitoring wallboard — Light, ergonomic and reliable monitoring for anything.
Stars: ✭ 3,400 (+733.33%)
Mutual labels:  monitoring-tool
Filemonitor
文件变化实时监控工具(代码审计/黑盒/白盒审计辅助工具)
Stars: ✭ 393 (-3.68%)
Mutual labels:  monitoring-tool
Chronos
📊 📊 📊 Monitors the health and web traffic of servers, microservices, and containers with real-time data monitoring and receive automated notifications over Slack or email.
Stars: ✭ 347 (-14.95%)
Mutual labels:  monitoring-tool
Keras Anomaly Detection
Anomaly detection implemented in Keras
Stars: ✭ 335 (-17.89%)
Mutual labels:  anomaly-detection

Curve

Sorry to tell contributors and users. We decided to archive the project temporarily due to the employee work plan of collaborators.

There are no more official support. Collaborators may offer a bit personal support.

Curve is an open-source tool to help label anomalies on time-series data. The labeled data (also known as the ground truth) is necessary for evaluating time-series anomaly detection methods. Otherwise, one can not easily choose a detection method, or say method A is better than method B. The labeled data can also be used as the training set if one wants to develop supervised learning methods for detection.

Curve is designed to support plugin, so one can equip Curve with customized and powerful functions to help label effectively. For example, a plugin to identify anomalies which are similar to the one you labeled, so you don't have to search them through all the data.

Curve is originally developed by Baidu and Tsinghua NetMan Lab.

Getting Started

Run and stop

Simply use control.sh to start or stop Curve.

./control.sh start
./control.sh stop

Server will blind 8080 by default, you can change it in ./api/uwsgi.ini.

The first start will take a while because of the compilation. If you pull updates from github, Rebuild will be triggered during start or reload.

Data format

You can load a CSV file into Curve. The CSV should have the following format

  • First column is the timestamp
  • Second column is the value
  • Third column (optional) is the label. 0 for normal and 1 for abnormal.

The header of CSV is optional, like timestamp,value,label.

Some examples of valid CSV

  • With a header and the label column
timestamp value label
1476460800 2566.35 0
1476460860 2704.65 0
1476460920 2700.05 0
  • Without the header
1476460800 2566.35 0
1476460860 2704.65 0
1476460920 2700.05 0
  • Without the header and the label column
1476460800 2566.35
1476460860 2704.65
1476460920 2700.05
  • Timestamp in human-readable format
20161015000000 2566.35
20161015000100 2704.65
20161015000200 2700.05

Additional

Recommend environments

For PC

Darwin(Mac OSX) or Linux(Ubuntu, CentOS, Arch, etc.) is Recommended

  • Dependency:
    • Python 2.7.3+/3.1.2+(Python 3 does not seem to be supported as of now.), if python is not owned by current user, virtualenv is required
    • Node.js 4.7.0+
    • gcc, pip and npm path is correctly set

Control Scripts for Windows is under development

For VPS like EC2

Minimal

  • Server: 1 CPU, 512MB RAM, 5GB Storage
  • System: Ubuntu10.04LTS or CentOS5.5

Swap is required during build

Recommend

  • Server: 1 CPU, 1GB RAM, 10GB Storage
  • System: Ubuntu16.04LTS or CentOS7

Backend Unit Test

cd api && pytest

Plugin dir

api/curve/v1/plugins

GitHub oauth

GitHub Oauth is supported, please put a configuration file into api/curve/auth/github_oauth.json like this:

{
  "id": "your github application Client ID",
  "secret": "your application Client Secret"
}

Doc:Creating-An-Github-Oauth-App

Change Log

  • 2018-08-07 [Function Optimization]: Refactoring code
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].