With the reduced cost of capturing data through sensors, as well as the increased connectivity between devices, being able to extract valuable information from data is becoming increasingly important. Finding patterns in large quantities of data is the realm of machine learning and statistics, and in my opinion, there are huge possibilities to harness the information hidden in these data to improve performance within several different domains. Anomaly detection and condition monitoring, as covered in this article, are just one of many possibilities. (Article also available HERE)
Three sets of data each consisting of four bearings were run to failure under constant load and running conditions. The vibration measurement signals are provided for the datasets over the lifetime of the bearings until failure. Failure occurred after 100 million cycles with a crack in the outer race (See readme document from download page for further info on the experiments). As the equipment was run until failure, data from the first two days of operation was used as training data to represent normal and “healthy” equipment. The remaining part of the datasets for the time leading up to the bearing failure was then used as test data, to evaluate whether the different methods could detect the bearing degradation in advance of the failure.
In this section, I will go through a practical use case for condition monitoring using the two different approaches described above. As most of the data we are working on with our clients are not openly available, I have chosen to rather demonstrate the two approaches on data made available by NASA, which can be downloaded HERE.
For this use case, the goal is to detect gear bearing degradation on an engine, and give a warning that allows for predictive measures to be taken in order to avoid a gear failure (which could e.g. be a planned maintenance/repair of the equipment).
…ous variables and should be able to re-construct them back to the original variables at the output. The main idea is that as the monitored equipment degrades, this should affect the interaction between the variables (e.g. changes in temperatures, pressures, vibrations, etc.). As this happens, one will start to see an increased error in the networks re-construction of the input variables. By monitoring the re-construction error, one can thus get an indication of the “health” of the monitored equipment, as this error will increase as the equipment degrades. Similar to the first approach of using the Mahalanobis distance, we here use the probability distribution of the reconstruction error to identify whether a data point is normal or anomalous.
Architecturally, the simplest form of an autoencoder is a feedforward, non-recurrent neural network very similar to the many single layer perceptrons which makes a multilayer perceptron (MLP) — having an input layer, an output layer and one or more hidden layers connecting them — but with the output layer having the same number of nodes as the input layer, and with the purpose of reconstructing its own inputs.
An autoencoder is a type of artificial neural network used to learn efficient data codings in an unsupervised manner. The aim of an autoencoder is to learn a representation (encoding) for a set of data, typically for dimensionality reduction. Along with the reduction side, a reconstructing side is learnt, where the autoencoder tries to generate from the reduced encoding a representation as close as possible to its original input.
In order to use the MD to classify a test point as belonging to one of N classes, one first estimates the covariance matrix of each class, usually based on samples known to belong to each class. In our case, as we are only interested in classifying “normal” vs “anomaly”, we use training data that only contains normal operating conditions to calculate the covariance matrix. Then, given a test sample, we compute the MD to the “normal” class, and classify the test point as an “anomaly” if the distance is above a certain threshold.
Anomaly detection (or outlier detection) is the identification of rare items, events or observations which raise suspicions by differing significantly from the majority of the data. Typically, anomalous data can be connected to some kind of problem or rare event such as e.g. bank fraud, medical problems, structural defects, malfunctioning equipment etc. This connection makes it very interesting to be able to pick out which data points can be considered ano…