Ravee - 1 year ago 159
R Question

# How to interpret Neural Network graph in R

Friends, I was trying to learn neural network in R.
Can anybody help me to interpret the neural network graph in R?
Friends i got this graph

any help will be highly appreciated

This drawing represents a neural network in the context of the famous Iris dataset. This data set contains four properties of three types of the iris plant. Names of these properties are displayed on the left in the picture you've presented.

The data flows from the left to the right. The attributes (plant's properties) are presented to the input layer (first column of nodes from the left). Each of these values gets multiplied by an appropriate weight an presented to the nodes in the next layer - the hidden layer (middle column of the nodes). The hidden layer also gets a bias value input to it (a node labelled as `1` on the top row, at the left). The bias is needed for the neuron to able to represent any separating hyperplane, not only hyperplanes crossing the origin. For example, in a simplified 2D case and disregarding the activation function, a neural network node without the bias can represent any line of the form:

y = a*x

Where `x` is the input value, and `a` is the weight. With bias, it can represent all possible lines:

y = a*x + b*1

`1` corresponds to the `1` node in the diagram, and `b` is its weight (also visible in the diagram).

Exactly the same scenario is repeated for the output layer (the last column of the nodes in the picture).

The labels on the right represent class labels, which correspond to the names of the classified plants. This structure represents the Winner-take-all (WTA) paradigm. That is, the final decision depends on which of the output neurons has the highest value. For example, if the top output neuron has the output value `0.8`, the middle one `0.76` and the bottom gives `0.3` then the decision is that the presented attributes represent the "Iris setosa" class.