A Simple Introduction to Neural Network

 

Introduction:
I was avoiding the Neural Network Algorithms for some time since the name only was dreadful. It is always linked with Artificial Intelligence, Deep Learning and I always thought that it must be saved for some time later. But then, Thanks to Andrew Ng Machine Learning Course that I had to give it some time and thought.
 
 
So, let me write down my understanding of the Neural Network.

What is a Neural Network?

 

 

A programming paradigm patterned on the Neuronal structure of our brains. 

The Term “Neuron” takes me straight to the Biology class of my school days. It was quite a hot topic and a “must study” for the Exams.  So, what is a Neuron? In some simple terms, our brain and spinal cord are made up of many cells. Neurons are cells that receive, process, and transmit information or nerve signals to and from the brain and nervous system. Below is how a single Neuron looks like:

 

 

Thus, a neuron consists of a cell body with branching dendrites (signal receivers) and a projection called an axon, which conducts the nerve signal to the other neurons in the Brain.  Thus the Neurons can connect to each other and form a Neural Network.

 

 How does Brain work?

 

It is really fascinating how a Brain learns so many things so fast!  When my daughter was born, she didn’t even know to raise a hand or even a finger. But in these three years, she learned so many new things and that’s amazing. Lots of neurons must have worked really hard! If I pay close attention to her learning process, she learns by comparisons, by making associations and by training her brain repeatedly. When I showed her a Car for the first time, she had no idea what I was talking about. But after pointing out a car every time we see one, she started identifying it. She was thrilled to recognize a car in her storybooks or in a toy shop and that’s how the brain works. 

 

 How does a Neural Network work?

 

The Neural Network is trying to mimic the Human Brain. But as for the training part, an Artificial Neural Network needs millions of images as input or training examples before they start identifying it accurately. Usually, the examples are hand-labeled in advance.
  For example,  a computer to identify an image of a car, we need to feed a labeled training set to the computer where there are some images which are labeled as “a CAR” and also some other images which are labeled as “Not a Car”. Then the computer  would find visual patterns in these images that consistently correlate with particular labels and finally, the system will be ready to identify one accurately. 

 

Thus Neural Networks are a means of doing machine learning, in which a computer learns to perform some task by analyzing the training examples. That means in a neural network, we don’t tell the computer how to solve a problem. Instead, it learns from observational data, figuring out its own solution to the problem at hand.

 

Areas of Applications:

 

  • Speech Recognition: I think “Siri” in iPhones is a good example that uses a deep neural network.

  • Signature Verification: Signatures are one of the most useful ways to authorize and authenticate a person in legal transactions or in the Banks. Pattern Matching utilizes neural networks.

  • Face Recognition: Facebook can recognize a face immediately we add a new photo. Thus, several Neural Networks work together to perform that magic.

Simple Representation of a Neuron Model:



We can represent what a Neuron does in a simplified way. Basically, a Neuron takes some inputs (dendrites), do some computations, and channeled that to the outputs(axons). A single Neuron can be represented pictorially as below:

Now, a Neural Network or an Artificial Neural Network (ANN) is a few Neurons grouped together and can be represented as below:


In the above Neural Network Representation, the input nodes i.e. layer 1 go into another node i.e. layer2 which finally outputs the hypothesis function i.e. the output layer. x0 is a “Bias Unit” and is always equal to 1.  

A neural network can have multiple Hidden layers and these layers are called Hidden maybe because these values are not visible in the Training Sets i.e. these values are neither inputs(x) nor outputs(y).

The nodes in the  Hidden Layer are called “Activation Units” and can be represented as ai(j) which means “Activation Unit” “i” in layer “j”. Thus for the above Neural Network, the Final Output can be represented by the below equation:

hθ(x) = a1(3) = g( θ10(2)a0(2) + θ11(2)a1(2) + θ12(2)a2(2) + θ13(2)a3(2))

Where,

Thus, we apply each row of the parameters or “weights” to the inputs to obtain the value for one activation unit. The parameter θ(j)  is a  Matrix of Weights controlling the function mapping from layer j to j+1.



A vectorized representation of a Neural Network is as below:



hΘ(x)=a(j+1)=g(z(j+1)) 

where

z(j+1)=Θ(j)a(j)anda(j)=g(z(j))

Hmmm, so now it is too much of equations and it needs some hands-on exercise to use the above equations and get a better understanding of a Neural Network. 

Well, Human Mind is complex, and simulating a Human Brain must be Super Complex. 

But, this is just the beginning! We really hope that “J.A.R.V.I.S” from “Iron Man” will soon be a reality.

Thank You!

0

Leave a Reply

Your email address will not be published. Required fields are marked *