Authors

About Safekit

Safekit is a python software package for anomaly detection from multivariate streams, developed for the AIMSAFE (Analysis in Motion Stream Adaptive Foraging for Evidence) project at Pacific Northwest National Laboratory. An exposition of the models in this package can be found in the papers:

The code of the toolkit is written in python using the tensorflow deep learning toolkit and numpy.

Dependencies

Dependencies required for installation:

  • Tensorflow 1.0 or above
  • Numpy
  • Scipy
  • Sklearn
  • Matplotlib

Installation

A virtual environment is recommended for installation. Make sure that tensorflow 1.0+ is installed in your virtual environment.

Install tensorflow

From the terminal in your activated virtual environment:

(venv)$ git clone https:/github.com/hutchresearch/safekit.git
(venv)$ cd safekit/
(venv)$ python setup.py develop

To test your installation, from the top level directory run:

$ tar -xjvf data_examples.tar.bz2
$ python test/agg_tests.py data_examples/lanl/agg_feats data_examples/cert/agg_feats test.log
$ python test/lanl_lm_tests.py data_examples/lanl/lm_feats/ test.log

These two tests should take about 10 to 15 minutes each depending on the processing capability of your system. The tests range over many different model configurations and can be used as a somewhat comprehensive tutorial on the functionality of the code base.

Tutorials

Jupyter Notebooks of these tutorials are located at safekit/examples/

Indices and tables