4 Artificial Neural networks
\label{artificial-neural-networks}
An artificial neural network (ANN) is a soft computing technique that
can be widely used to process the information [13-14]. It is
inspired through biological nervous systems, such as the working
mechanism of brain. It is represented in terms of weighted directed
graphs in which nodes act as artificial neurons and directed edges
between neurons defined weights. It can be divided into two
categories-feed-forward and recurrent networks. The feed-forward
networks are static, whereas, recurrent networks are dynamic systems.
That is, they produce only one set of output values rather than a
sequence of values from a given input. The Feed-forward networks are
memory-less and independent of the previous network state. When a new
input pattern is presented, the neuron outputs are computed. Because of
the feedback paths, the inputs to each neuron are then modified, which
leads the network to enter a new state. In literature, it is found that
the multilayer neural networks (MLNNs) have been successfully
implemented in decision support systems for disease diagnosis systems
[27-28]. In Multi-layer perceptron (MLP), [29-32] multiple
layers of neurons are present, but the minimum lays are three i.e. input
layer, one hidden layer, and an output layer which is responsible to
generate results. It is also observed that the back-propagation (BP)
algorithm [10] is widely used to train the network. Apart from the
input layer, every neuron in the other layers acts as a computational
element with a nonlinear activation function. The principle of the
neural network is that when data are available at the input layer, the
network neurons run calculations in the consecutive layers until an
output value is obtained at each of the output neurons. The output of
neural network specifies the appropriate class for the input data. Each
neuron in the input and hidden layers is connected to all other neurons
of the next layer by some weight values. The neurons of hidden layers
are responsible to compute the weighted sums of their inputs and add a
threshold. Fig. 2: shows the structure of multilayer perceptron using an
input layer, hidden layer and output layer. The input layer represents
the attributes of datasets, working of hidden layer represents the
attributes of datasets which are not linearly separated and output layer
provides the desired results. A threshold node is also added in input
layer which specifies the weight function. The resulting sums are used
to obtain the activity of the neurons by applying a sigmoid activation
function. This process is defined as follows:
\begin{equation}
p_{j}=\sum_{i=1}^{n}{w_{j,i}x_{i}+\theta_{j},\ \ \ \ m_{j}=f_{j}(p_{j})}\nonumber \\
\end{equation}
Where pj is the linear combination of inputs
x1,x2, . . . ,xn, and
the threshold \(\theta_{j}\), wji is the connection
weight between the input xi and the neuron j, and
fj is the activation function of the
jth neuron, and mj is the output. The
sigmoid function is a common choice of activation function. It is
defined as
\begin{equation}
f\left(t\right)=\frac{1}{1+e^{-t}}\nonumber \\
\end{equation}
To train the MLP, the back propagation learning method has been used
[32] which is a gradient descent method for the adaptation of the
weights. All the weight vectors (w) are initialized with small random
values from a pseudorandom sequence generator.However, this process can
take too many steps to train the network, and the adjusted weights are
computed at each step. To overcome the above mentioned problems, a
particle swarm optimization based approach is utilized to compute the
optimal value of the weight and threshold functions,because PSO havethe
capability to determine weight parallel and finding the optimal
solutions.
Figure 2: Three layer feed forward neural network: one input, one hidden
layer and one output layer for predicting Dengue disease