Artificial neuron

From Citizendium
Revision as of 01:17, 5 July 2007 by imported>Felipe Ortega Gutiérrez (→‎Transfer Functions)
Jump to navigation Jump to search

Artificial neurons are processing units based on the biological neural model. The first artificial neuron model was created by McCullough and Pitts, and then newer and more complex models have appeared. Since the connectivity in the biological neurons is higher, artificial neurons must be considered as only an approximation to the biological model.

Artifical neurons can be organized and connected in order to create artificial neural networks, which process the data carried through the neural connections in different layers. Learning algorithms can also be applied to artificial neural networks in order to modify their behavior.

McCullough-Pitts neuron with 4 inputs.

Behavior

A neuron may have multiple inputs, each input has an assigned value called weight, which represents the strength of the connection between the source and destination neuron. The input signal value is multiplied by the weight .


The sum of all input values multiplied by their respective weights is called activation, or weighted-sum. It represents the sum of all the input values, considering the strength each input connection.


After the activation is produced, a function modifies it, producing an output. That function is often called transfer function and its purpose is to filter the activation. The output value can be expressed as:

Transfer Functions

Transfer function is the name given for the functions which filter the activation value. This functions can be discrete or continuous. Some of the most used transfer functions are:

Step function

The step function (also called hard-limiter) is piecewise defined function used to produce binary outputs. In this function, the result is 0 if the activation is less than a value called threshold, often symbolized with theta (). Otherwise, the result is 1.


Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle y = \left\{ \begin{matrix} 1 & \mbox{if }a \ge \theta \\ 0 & \mbox{if }a < \theta \end{matrix} \right.}

Ramping function

The ramping function is also a piecewise defined function, shaped as a ramp. It's mathematically defined as follows:


Sigmoid

The sigmoid function is used to produce continuous values. It's an S-shaped curve, and it's used when the inputs are between 0 and 1.


Where is the activation, is the threshold (that can be zero, simplifying the equation), and is a value which defines the curvature of the sigmoid.

Hyperbolic Tangent

The hyperbolic tangent is an hyperbolic trigonometric function, used when the activation values are between -1 and 1. Its shape is very similar to the shape of the sigmoid.


Other functions

There are even more functions used as transfer functions, such as: sine, cosine, linear combination, and others.

Pattern classification

The space in which the inputs belong is the pattern space. The number of dimensions of the pattern space is defined by the number of inputs of the neuron. For this reason, when the number of inputs is greater than three, the pattern space is called pattern hyperspace.

The pattern hyperspace can be separated by decision hypersurfaces, which performs classification (separation of different portions of the pattern hyperspace into "classes").

Analogy to Biological Neurons

In biological neurons there is a similar behavior. Inputs are electrical pulses transmitted to the synapses (terminals in the dendrites). Electrical pulses produce a release of neurotransmitters which may alter the dendritic membrane potential (Post Synaptic Potential). The Post Synaptic Potential travels over the axon, reaching another neuron, which will sum all the Post Synaptic Potentials received, and fire an output if the total sum of the Post Synaptic Potentials in the axon hillock received exceeds a threshold.