Neural network. It is a paradigm of automatic learning and processing inspired by the way the nervous system works .
[ hide ]
- 1 General
- 2 Beginnings
- 3 Neural network analysis
- 4 Design and programming of an RNA
- 5 Structure
- 6 Advantages
- 7 Topology
- 8 Applications
- 9 Sources
In the field of artificial intelligence it is usually referred to more simply as networks of neurons or neural networks, networks of artificial neurons (commonly referred to as RNA or in English as: “ANN”. Although the acronym ANN is used in English) of Artificial Neural Networks) to refer to this field of computing in this article its Spanish equivalent RNA will be used). They are a paradigm of automatic learning and processing inspired by the way the nervous system of animals works. It is a system of interconnection of Neurons in a Network that collaborates to produce an exit stimulus.
Artificial Neural Networks (ANNs from Artificial Neural Networks) were originally an abstract simulation of biological nervous systems, made up of a set of units called “neurons” or “nodes” connected to each other. These connections bear a strong resemblance to the dendrites and axons in biological nervous systems.
The first neural network model was proposed in 1943 by McCulloch and Pitts in terms of a “nerve activity” computational model. The McCulloch-Pitts model is a binary model, and each neuron has a prefixed step or threshold. This first model served as an example for the later models of Jhon Von Neumann, Marvin Minsky, Frank Rosenblatt, and many others.
A first classification of the ANN models could be, taking into account their similarity with biological reality:
- Biological type models. This includes networks that try to simulate biological neural systems as well as auditory functions or some basic vision functions.
- The application-driven model. These models do not have to be similar to biological systems. Their architectures are strongly linked to the needs of the applications for which they are designed.
Neural network analysis
One of the missions in a neural network is to simulate the properties observed in biological neural systems through recreated mathematical models using artificial mechanisms (such as an integrated circuit, a computer, or a set of valves). The objective is to get the machines to give answers similar to those that the Brain is capable of giving , characterized by their generalization and robustness.
A neural network is composed of units called neurons. Each neuron receives a series of inputs through interconnections and emits an output. This output is given by three functions:
- A propagation function (also known as an excitation function), which usually consists of the sum of each input multiplied by the weight of its interconnection (net value). If the weight is positive, the connection is called excitatory; if it is negative, it is called inhibitory.
- An activation function, which modifies the previous one. It may not exist, in this case the output being the same propagation function.
- A transfer function, which is applied to the value returned by the activation function. It is used to limit the output of the neuron and is generally given by the interpretation that we want to give to these outputs. Some of the most used are the sigmoid (to obtain values in the interval [0,1]) and the hyperbolic-tangent (to obtain values in the interval [-1,1]).
Design and programming of an RNA
With a conventional programming paradigm in software engineering, the programmer’s objective is to mathematically model (with different degrees of formalism) the problem in question and then formulate a solution (program) using a coded algorithm that has a series of properties that allow solving said problem. In contrast, the RNA-based approach starts from a sufficiently significant input dataset and the objective is to make the network automatically learn the desired properties. In this sense, network design has less to do with issues such as data flows and condition detection, and more to do with issues such as network model selection, that of the variables to be incorporated and the preprocessing of the information that will form the training set. Likewise, the process by which the network parameters are adapted to the resolution of each problem is not generically called programming, but is usually called training.
For example, in a network that will be applied to the diagnosis of medical images; During the training phase the system receives images of tissues known to be carcinogenic and tissues known to be healthy, as well as the respective classifications of these images. If the training is adequate, once completed, the system will be able to receive images of unclassified tissues and obtain its healthy / unhealthy classification with a good degree of security. The input variables can be from the individual points of each image to a vector of characteristics of the same that can be incorporated into the system (for example, anatomical origin of the image tissue or the age of the patient from whom the sample was extracted. ).
Most scientists agree that an RNA is very different in terms of the structure of an animal brain. Like the brain, an RNA is made up of a massively parallel set of very simple process units, and it is in the connections between these units that the intelligence of the network resides. However, in terms of scale, a brain is vastly larger than any RNA created to date, and artificial neurons are also simpler than their animal counterpart.
Biologically, a brain learns by rearranging the synaptic connections between its component neurons. In the same way, RNAs have a large number of interconnected virtual processors that in a simplified way simulate the functionality of biological neurons. In this simulation, the reorganization of biological synaptic connections is modeled using a weighing mechanism, which are adjusted during the learning phase. In a trained RNA, the set of weights determines the knowledge of that RNA and has the property of solving the problem for which the RNA has been trained.
On the other hand, in an RNA, in addition to the weights and connections, each neuron has an associated mathematical function called the transfer function. This function generates the neuron’s output signal from the input signals. The function input is the sum of all input signals by the weight associated with the signal input connection. Some examples of inputs are the step or Heaviside function, the linear or mixed, the sigmoidal and the gaussian function, remembering that the transfer function is the relationship between the output signal and the input.
Artificial neural networks (RNA) have many advantages because they are based on the structure of the nervous system, mainly the brain.
- Learning: RNAs have the ability to learn through a stage called a learning stage. This consists of providing the RNA with data as input, in turn indicating the expected output (response).
- Self organization: An RNA creates its own representation of the information within it, discharging the user from this.
- Fault tolerance: Because an RNA stores information redundantly, it can continue to respond acceptably even if it is partially damaged.
- Flexibility: An RNA can handle minor changes to the input information, such as noise signals or other changes to the input (eg if the input information is the image of an object, the corresponding response remains unchanged if the image changes slightly its brightness or the object changes slightly).
- Real time: The structure of an ANN is parallel, so if this is implemented with computers or special electronic devices, responses can be obtained in real time.
Typology Models There are a number of models that appear in most academic studies and specialized bibliography.
- Adaline Multilayer Perceptron | Multilayer Perceptron
- Multilayer perceptron
- Associative memories
- Bolzman’s machine
- Cauchy machine
- Elman Networks Hopfield Networks Counterpropagation Network | Counterpropagation Network
- Counter-propagation network
- Radially based neuron networks
- Kohonen networks or self-organizing maps
- Dynamic cell growth Increasing Neural Gas | Increasing Neural Gas
- Increasing Neural Gas
- ART Networks (Adaptive Resonance Theory)
A first classification of the networks of artificial neurons that is usually made is based on the pattern of connections it presents. This is how three basic types of networks are defined: • Two types of forward propagation or acyclic networks in which all the signals go from the input layer to the output without cycles, or connections between neurons of the same layer. or Monolayer. Examples: Perceptron, Adaline. or Multilayer.
Examples: multilayer perceptron.
- Recurrent networks that have at least one closed cycle of neuronal activation. Examples: Elman, Hopfield, Bolzman’s machine
The characteristics of the ANNs make them quite appropriate for applications where an identifiable model that can be programmed is not available a priori, but there is a basic set of input examples (previously classified or not). They are also highly robust to both noise and malfunction of specific elements and are easily parallelizable.
This includes problems of classification and recognition of voice patterns, images, signals, etc. They have also been used to find patterns of economic fraud, make predictions in the financial market, make weather predictions, etc.
They can also be used when there are no precise mathematical models or algorithms with reasonable complexity; for example, the Kohonen network has been applied with more than reasonable success to the classic traveling salesman problem (a problem for which no algorithmic solution of polynomial complexity is known).
Another special type of artificial neural network has been applied in conjunction with genetic algorithms (AG) to create drivers for robots. The discipline that deals with the evolution of neural networks using genetic algorithms is called Evolutionary Robotics. In this type of application, the GA genome is made up of the network parameters (topology, learning algorithm, activation functions, etc.) and the adequacy of the network is given by the adequacy of the behavior exhibited by the controlled robot (normally a simulation of such behavior)