Thursday, April 8, 2021

Artificial neural networks

Perceptron

One of the oldest applications of artificial intelligence is based on the simulation of animal nerve cells (neurons). Neural networks are made up of many interconnected components, and they are capable of some computational activity, although the neurons that make up these networks are usually quite simplified, compared to those that are part of the nervous system of human beings and other animals.

This type of application has been the subject of multiple exaggerations and unusual predictions. These networks have been said to be capable of solving the most difficult problems, NP-complete problems, like the traveling salesman problem, and similar ones. A normal program can solve these problems, but the time needed grows exponentially as a function of the size of the problem, while a neural network can solve them in a short time. To some extent this is true, provided that we bear in mind that the solution obtained is not necessarily the best, but only an approximation, which is often sufficient for our needs.

The first neural networks were defined during the 1940s by Warren McCullogh and Walter Pitts. In the following decade, Frank Rosenblatt devised the perceptron, a two-layer neural network (input layer and output layer), capable of being tuned to give the appropriate response to a specific input. At the end of the 60s, Carver Mead proposed neuromorphic computing, which would mean building neural networks, not by means of programs running on classic computers, as had been done before, but with specially designed hardware, which would take advantage of integrated circuits, then under development, to implement networks formed by tiny devices emulating or simulating neurons.

Research in this field stalled after the publication of a book by Minski and Papert (Perceptrons: An Introduction to Computational Geometry), in which they proved that a two-layer perceptron is not capable of solving the exclusive-or function, one of the simplest functions in existence. A few years later, with the introduction of a third layer of neurons in the neural network, between the input and output layers, and with the invention of the backward propagation algorithm, the problem of the exclusive-or function was solved, and research in the field of neural networks started again to advance.

The first neural networks, developed since the eighties, had to be subject to supervised learning: a training phase during which they were offered concrete problems (input data sets) and their correct solution (the desired output data), so that the network would automatically modify the weights of its "neurons" to obtain the desired result. Once trained, and after giving reasonably good results with supervised learning problems, the network could be used to solve different problems of the same type. Of course, one never gets 100% efficiency, either with supervised problems, or with new ones.

With the 21st century, a new type of unsupervised learning began to be used, which did not need to choose training problems. This can be done in two ways:

         By means of techniques such as data mining, to automatically train the neural network, based on the enormous mass of data available in the Internet. This is done, for example, by Google Translate to get roughly correct translations. At the moment these translations are not perfect, and must always be corrected by hand, but their existence helps human translators a lot. And as the amount of data available increases, translations get progressively better.

         Or through automatic training that makes the neural network compete with itself, as is done in applications designed to play certain "smart" games, such as Alpha Zero (by DeepMind, currently a part of the Google conglomerate), which managed to reach world champion levels, both in chess and Go.

Currently, work is being done in several directions:

a)      Neuromorphic computing, which is just the implementation of neural networks through hardware devices that make use of nanotechnology, rather than using software that runs on a classic computer. Naturally, this makes them faster.

b)      New algorithms to solve, using neural networks, pattern recognition and machine learning problems.

c)      Implementation of networks based on more complex neurons, inspired by biological neurons.

In any case, despite the frequent exaggeration of the media, all this research must be considered as weak artificial intelligence, more or less sophisticated, but very far from strong artificial intelligence, which would compete with man in many fields of activity and be self-aware. This is still far out of our reach, assuming it be possible, which I doubt. And I say this, despite what I myself have implied in my science fiction novels, which doesn't need to be the same as what I think.



Thematic Thread on Natural and Artificial Intelligence: Previous Next
Manuel Alfonseca

No comments:

Post a Comment