/CatGAN-bearing-faults

Implementation of categorical generative adversarial networks for unsupervised bearing fault diagnostics

Primary LanguageJupyter Notebook

CatGAN

Original paper: An unsupervised fault diagnosis method for rolling bearing using STFT and generative neural networks Hongfeng Taoa , Peng Wanga , Yiyang Chenb , Vladimir Stojanovicc, Huizhong Yang

Data was selected from Bearing data center datasets and represents 12KHz sampled vibration accelerometer output for different EDM-damaged fault diameter (0.007, 0.014, 0.021 in) in a different places (ball, inner race, outer race) and different load factor on the rotor.

Each signal have been processed to the time-frequency diagram with subsequent normalization to [0,1].

According to Kotelnikov-Nyquist-Shannon theorem the spectral width of such signal can be up to 6KHz.

High-resolution time-frequency diagrams are above:

Applying narrow segment width for STFT (256 samples) with the subsequent image down-sampling to 64 pixels we will have about 0.1 KHz per pixel line. Since the distance between major spectral peaks is greater than 0.1KHz such down-sampling seems to be correct for the analysis of resulting diagrams.

Raw output after 256-sample STFT (before down-sampling):

Since we have only one signal for normal data and for each type of faults, we need to cut them into short overlapping segments to form the train dataset. I'll take 1024 samples per segments with 128samples as a step, so I got about 1000 segment diagrams for each of 9 fault types and about 2000 diagrams for normal data, total 10408 diagrams.

The segment step and applied window function properties seems to be appropriate because generated images look different and all spectral characteristics are preserved

For unsupervised classifying damage type was trained categorical generative adversarial network. Resulting latent manifold is above.

For comparison, the result of supervised latent manifold: