Cheol-H-Jeong / SMD_Anomaly_Detection

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Residual Error based Anomaly Detection Using Auto-Encoder in SMD Machine Sound

About

This is the implementation of the paper "Residual Error based Anomaly Detection Using Auto-Encoder in SMD Machine Sound" by Dong Yul Oh and Il Dong Yun.

For more information check out the paper [PDF] on MDPI Sensors.

All of these scripts are based on the [sample] dataset provided in our paper. Note that all rights reserved to [Crevis Co., Ltd], and only a few samples for the SMD machine sound can be released. The experimental results of this demo may differ (have poorer performance) from those in the paper because of the lack of training data.

Getting started

Dependencies

Python 3.5.0
Tensorflow 1.4.0
Psutil 5.4.1
Numpy 1.13.3
Matplotlib 1.2.0
Librosa 0.5.1

Training & Validation

Script:
setup_dataset.py: data pre-processing and building tfrecords.
model.py: the network architecture as proposed in our paper.
main.py: training script for this model.

Usage:
python setup_dataset.py transforms the audio files in each class into the tfrecords using STFT.
python setup_dataset.py test checks if the tfrecords is created properly.
python main.py --train=true trains the model only with normal data.
python main.py measures AUC and the residual errors for each abnormal and normal test case.

BibTeX

If you use this code in your project, please cite our paper:

@Article{s18051308,
    AUTHOR         = {Oh, Dong  Yul and Yun, Il  Dong},
    TITLE          = {Residual Error Based Anomaly Detection Using Auto-Encoder in SMD Machine Sound},
    JOURNAL        = {Sensors},
    VOLUME         = {18},
    YEAR           = {2018},
    NUMBER         = {5},
    ARTICLE NUMBER = {1308},
    URL            = {http://www.mdpi.com/1424-8220/18/5/1308},
    ISSN           = {1424-8220},
    DOI            = {10.3390/s18051308}
}

About


Languages

Language:Python 100.0%