A neural network is basically a realization of a non-linear mapping from to

where and are respectively the dimension of the input and the output space (dimension of the realtive vectors).

The Perceptron

An artificial neuron (AN) implements a non-linear mapping from ususally to or , depending on the activation function used. That is, e.g.

An AN receives a vector of input signals, either from the environment or from other ANs. To each input signal is associated a weight that strengthen or deplete the input signal. The AN computes the net input signal, and uses an activation function to compute the output signal, , given the net input. The strenght of the output signal is further influenced by a treshold value, , also referred to as the bias

Calculating the Net Input Signal

The net input signal to an AN is usually computed as the weighted sum of all the input signals

Activation Functions

The function receives the net input signal and the bias, and determines the output of the neuron. Different types of activation functions can be used. The most common used are:

  1. Linear fuction

    where is the slope of the function.

  2. Step function

    The step function produce two scalar output values, or . Usually they assume the values and , or and .

  3. Sigmoid function

    The sigmoid fucntion is a continuous function that lies in the range . The parameter controls the stepness of the function.

  4. Hyperbolic tangent

    or also approximated as

    The output of the hyperbolic tangent is in the range .

  5. Gaussian function

    where is the mean and is the standard deviation of the Gaussian distribution.

AN Geometry

Single neurons can be used to realize linearly separable functions without any error. Linear separability means that the neuron can separate the space of -dimensional input vectors yielding an above-threshold response from those having a below-threshold response by an -dimensional hyperplane. The hyperplane separates the input vectors for which grom the input vectors for which .

Given the input signal and a value for , the weights values , can easily be calculated by solving

where is the matrix of input patterns as given in the truth tables. !!!!images!!!

An example of linear function that is not linearly saparable is the XOR. A single perceptron cannot implement this function. To be able to learn functions that are not linearly separable we need to use a layered NN of several neurons.

Artificial Neuron Learning

For very simple problem is easy to find by hand some values for and such that the AN yields the desired output. But we want to find an automated approach that allows us to determine these values also in cases where no prior knowledge about the target output exists. Here comes to help the learning paradigm. Basically a learning algorithm adjusts the weight and the bias values until several criteria are satisfied.

There are three main types of learning: