➢ Devansh Sarin - 20BEE0398, Suprajeet Reddy - 20BEE0367 1
Fault Detection Using CNN Neural Network
Devansh Sarin, Student, VIT Vellore and., Suprajeet Reddy, Student, VIT
Vellore.
● Convolution: It computes the output of those
Abstract— Friction is a day-to-day phenomenon neurons, which are associated with input's local
which is present in real system involving mechanical regions, such that each neuron will calculate a dot
motion. Faults occur in the system while working under product in between weights and a small region to
the friction. This problem is considered due to faults which they are actually linked to in the input volume.
occurring in every sphere and if we can analyze the For example, if we choose to incorporate 12 filters,
source and prevent it, it surely can increase the then it will result in a volume of [32x32x12].
efficiency. In this project, detection of faults in ● ReLU Layer (Rectified linear activation function):
mechanical systems caused due to friction is presented. It is specially used to apply an activation function
Convolutional Neural Networks (CNN) a deep learning elementwise, like as max (0, x) thresholding at zero. It
algorithm is used for the fault recognition. The final results in ([32x32x12]) image, which relates to an
outputs values are divided such that data points in same unchanged size of the volume.
group are more similar to other data points using
clustering technique. Then we plot the graph of the
sigmoidal output versus the initial values. In this graph B. Python Language
where the derivative of the graph does not exist is the
point of fault detection. Simulation results showing the
Python program is a tool that can be used to predict the
effectiveness of the proposed method to detect fault are
outcome of the stock markets for various companies using
presented. It has higher accuracy and uncomplicated
input data library packages that are available to install. NumPy is
a Python library used for working with arrays. It also has
I. INTRODUCTION functions for working in domain of linear algebra, Fourier
transform, and matrices. Another library similar and
helpful like NumPy is SKlearn. SKlearn is one of the most
Fault detection has been an active area of research for the
powerful libraries that is used to process machine learning
last few decades, which is an essential part of modern
industries to ensure safety and product quality. As and regression models. We used SKlearn to produce the
mechanical systems work under friction so faults do occur, graph outcome which was compared to analog result that
identifying the defects have much significance and is was calculated using the NumPy library installed in
beneficial. Our project aims to examine the outputs python.
emerging from the RGB values of the images.
CNN is a deep learning algorithm which takes in the RGB
values as inputs and an unsupervised learning method
clustering technique to form clusters of similar properties
are applied in this project. Observing the deviations from
the original values fault can be detected effectively.
A. Convolutional Neural Network
Convolutional Neural Networks are a special type of
feed-forward artificial neural network in which the
connectivity pattern between its neuron is inspired by
the visual cortex
● Input: If the image consists of 32 widths, 32 height
encompassing three R, G, B channels, then it will
hold the raw pixel([32x32x3]) values of an image.
➢ Devansh Sarin - 20BEE0398, Suprajeet Reddy - 20BEE0367 2
II. MATH
Kernel convolution is not only used in CNNs, but is also a Anyone who has ever tried to code their own neural network
key element of many other Computer Vision algorithms. It is from scratch knows, that forward propagation is less than half the
a process where we take a small matrix of numbers (called success. The real fun starts when you want to go back.
kernel or filter), we pass it over our image and transform it Nowadays, we don’t need to bother with backpropagation —
based on the values from filter. Subsequent feature map deep learning frameworks do it for us, but I feel it’s worth
values are calculated according to the following formula, knowing what’s going on under the hood. Just like in densely
where the input image is denoted by f and our kernel by h. connected neural networks, our goal is to calculate derivatives
The indexes of rows and columns of the result matrix are and later use them to update the values of our parameters in a
marked with m and n respectively. process called gradient descent.
In our calculations we will use a chain rule — which I mentioned
in previous articles. We want to assess the influence of the
change in the parameters on the resulting features map, and
subsequently on the final result. Before we start to go into the
After placing our filter over a selected pixel, we take each value details, let us agree on the mathematical notation that we will use
from kernel and multiply them in pairs with corresponding — in order to make my life easier, I will abandon the full
values from the image. Finally we sum up everything and put notation of the partial derivative in favour of the shortened one
the result in the right place in the output feature map. Above we visible below. But remember, that when I use this notation, I will
can see how such an operation looks like in micro scale, but always mean the partial derivative of the cost function.
what is even more interesting, is what we can achieve by
performing it on a full image.
The time has finally come to use everything we have learned
today and to build a single layer of our CNN. Our methodology
is almost identical to the one we used for densely connected
neural networks, the only difference is that instead of using a
simple matrix multiplication, this time we will use the
convolution. Forward propagation consists of two steps. The
first one is to calculate the intermediate value Z, which is
obtained as a result of the convolution of the input data from the
previous layer with W tensor (containing filters), and then
adding bias b. The second is the application of a non-linear
activation function to our intermediate value (our activation is
denoted by g). Fans of matrix equations will find appropriate
mathematical formulas below. If any of the operations in
question is not clear to you, I highly recommend my previous
article, in which I discuss in detail what is happening inside
densely connected neural networks. By the way, on illustration
below you can see a small visualization, describing the
dimensions of tensors used in equation.
➢ Devansh Sarin - 20BEE0398, Suprajeet Reddy - 20BEE0367 3
III. REPORT ANALYSIS
Code:
In this project we used CNN and an unsupervised
learning method clustering is applied. Convolutional
Neural Network: CNN is a deep learning algorithm
which take in an input image, assign importance to
various aspects/objects in the image. The RGB pixel
values of images are taken to the convolution layer
where convoluting of a image takes place with a filter
to get convolved feature maps. Activation function is
used on feature maps to bring non linearity. The
main purpose of pooling is to reduce the dimensions
and get a new feature map After going through the
process, outputs from the pooling layer are flattened
and given to Fully Connected Layer. The final outputs
values are divided such that data points in same group
are more similar to other data points using clustering
technique. Then we plot the graph of the sigmoidal
output versus the initial values. In this graph where
the derivative of the graph does not exist is the point
of fault detection.
For training Data, our CNN was able to achieve an accuracy of
94.6%.
For testing Data, our CNN was able to achieve an accuracy of
82.47%.
➢ Devansh Sarin - 20BEE0398, Suprajeet Reddy - 20BEE0367 4
REFERENCES
TOPIC: “Fault Detection in Mechanical Systems With Friction
Phenomena: An Online Neural Approximation Approach”.
They take in the velocity and position of the object before and after
performing the experiment and perform certain calculation Radial
Basis Function Supervised Learning with the help of Linear in the
weights Neural Network (LNN).
AUTHORS: Adam Papadimitropoulos, George A. Rovithakis, Senior
Figure 1. Output graph
Member, IEEE, and Thomas Parisini, Senior Member, IEEE.
As we can observe the output graph used to detect the TOPIC: “FAULT DETECTION AND ISOLATION IN A
fault in the system. The blue points indicates the estimated NONLINEAR ELECTROMECHANICAL SYSTEM ” .
friction and differs from the no-fault bound line.
In this problem they use the Bond Graph method (BG) which take
into account the static friction using the Stribeck model and the
dynamic friction using the LuGre model which taken in a function of
velocity and displacement and also TF and GY elements are used.
AUTHORS: Ming Yu, Mengxin Li.
TOPIC: “AUTOMATED FAULT DIAGNOSIS AND
ACCOMMODATION CONTROL FOR MECHANICAL SYSTEMS”.
In this problem they use signal processing of the state vector versus
time to classify the signal into separate cateogories using
unsupervised learning to detect the fault
. AUTHORS: Sunan Huang, Kok Kiong Tan, and Mingbo Xiao.
TOPIC: “PERIODICALLY NON-STATIONARY METHODS FOR
INVESTIGATION THE DEGRADATION OF THE TURBO-SET
FRICTION BEARINGS”
Figure 2 . Example of Input Image Here they undergo the process of signal processing of the vibrations
occurring in the ball bearings. For the Neural Network they just take
a random part of the signal and analyse it for the detection of faults
by identifying a change in the spectral density of the signal when
faults occur by way of clustering in unsupervised learning
AUTHORS: Thor Isayev, Thor Javorskyj, Thor Kravets, [Link].
[Link]
IV. CONCLUSION
After giving considerable of time on research we chose gives the output for the images. CNN is used because of
Convolutional neural network to detect the fault in the its high accuracy for images it follows a hierarchical
real systems caused due to the friction. Images of the model which works on building a network, like a funnel,
objects are taken and RGB values are analysed before and finally gives out a fully connected layer where all
and after the completion of the work. Convolution layer the neurons are connected to 8 each other and the output
carriers out the convolution operation called is processed. Observing the deviations from the output
kernel/filter which extract the high-level features from values fault detection with less error can be done. We can
the input image. Pooling layer helps in decreasing the observe the output graph used to detect the fault in the
computational power required to process the data system. The blue points indicates the estimated friction
through dimensionality reduction. Later softmax layer and differs from the no-fault bound line.
➢ Devansh Sarin - 20BEE0398, Suprajeet Reddy - 20BEE0367 5