Code Monkey home page Code Monkey logo

dl-based-intelligent-diagnosis-benchmark's Introduction

DL-based-Intelligent-Diagnosis-Benchmark

Code release for Deep Learning Algorithms for Rotating Machinery Intelligent Diagnosis: An Open Source Benchmark Study ISA Transactions arXiv by Zhibin Zhao, Tianfu Li, and Jingyao Wu.

Correction

  • 2020.05.14, we modified the errors of the dataloaders related to XJTU dataset.

Guide

This project just provides the baseline (lower bound) accuracies and a unified intelligent fault diagnosis library which retains an extended interface for everyone to load their own datasets and models by themselves to carry out new studies. Meanwhile, all the experiments are executed under Window 10 and Pytorch 1.1 through running on a computer with an Intel Core i7-9700K, GeForce RTX 2080Ti, and 16G RAM.

R_A: random split with data augmentation, R_NA: random split without data augmentation, O_A: order split with data augmentation

Requirements

  • Python 3.7
  • Numpy 1.16.2
  • Pandas 0.24.2
  • Pickle
  • tqdm 4.31.1
  • sklearn 0.21.3
  • Scipy 1.2.1
  • opencv-python 4.1.0.25
  • PyWavelets 1.0.2
  • pytorch >= 1.1
  • torchvision >= 0.40

Datasets

Pakages

This repository is organized as:

  • AE_Datasets contains the loader of different datasets for AE models.
  • CNN_Datasets contains the loader of different datasets for MLP, CNN, and RNN models.
  • datasets contains the data augmentation methods and the Pytorch datasets for 1D and 2D signals.
  • models contains the models used in this project.
  • utils contains the functions for realization of the training procedure.

Usage

  • download datasets

  • use the train.py to test MLP, CNN, and MLP models

  • for example, use the following commands to test MLP for SEU with mean-std normalization and data augmentation

  • python train.py --model_name MLP --data_name SEU --data_dir ./Data/Mechanical-datasets --normlizetype mean-std --processing_type O_A --checkpoint_dir ./Benchmark/Benchmark_Results/Order_split/SEU/MLP_mean-std_augmentation

  • use the train_ae.py to test AE models

  • for example, use the following commands to test SAE for SEU with mean-std normalization and data augmentation

  • python train_ae.py --model_name Sae1d --data_name SEU --data_dir ./Data/Mechanical-datasets --normlizetype mean-std --processing_type O_A --checkpoint_dir ./Benchmark/Benchmark_Results/Order_split/SEU/Sae1d_mean-std_augmentation

Citation

Codes:

@misc{Zhao2020,
author = {Zhibin Zhao and Tianfu Li and Jingyao Wu and Chuang Sun and Shibin Wang and Ruqiang Yan and Xuefeng Chen},
title = {Deep Learning Algorithms for Rotating Machinery Intelligent Diagnosis},
year = {2020},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/ZhaoZhibin/DL-based-Intelligent-Diagnosis-Benchmark}},
}

Paper:

@article{zhao2020deep,
  title={Deep Learning Algorithms for Rotating Machinery Intelligent Diagnosis: An Open Source Benchmark Study},
  author={Zhibin Zhao and Tianfu Li and Jingyao Wu and Chuang Sun and Shibin Wang and Ruqiang Yan and Xuefeng Chen},
  journal={ISA Transactions},
  year={2020}
}

Contact

dl-based-intelligent-diagnosis-benchmark's People

Contributors

zhaozhibin avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.