Short introduction to neural networks

Neural networks is the kind of artificial intelligence that emulates the biological brains’ way of working. When talking about neural networks, one should first of all consider advantages and drawbacks from using conventional computer programmes:

  • Advantage: Calculations with big figures can be done fast and precisely.
  • Drawback: Solutions can only be given to such problems, which the program is designed to solve. New information and new situations requires changes to the program, before they can be integrated in the problem solving process.

Example: A conventional computer can “read” a letter, because each letter is expressed by a binary number, e.g. A equals 65, which can then be converted to binary code. But the human brain works differently, which is why we as human beings are able to read various forms of handwritten As. Just like the human brain a neural network can be trained to read handwritten letters.

The big difference between the conventional computer and the biological brain is that a personal computer has 1 or in our days up to 4 or even 6 CPUs (= Central Processing Unit), where as the biological brain has billions – since each brain cell is in itself a small computing unit used for primitive calculations. The brain cells are connected in a huge network, which as a whole is marvellous thing – even in much more primitive animals than human beings. For instance, each biological neuron in a biological brain can have up to 10,000 connections to other neurons (Lawrence 1993), whereas an artificial neural network doesn’t have more than a few thousands connections altogether. (This last information was given to me during my education as a datamatician in 1997 – I don’t have a particular written source for it.)

The special thing about a neural network compared to conventional computer programmes is that it can be trained to do something. When the programmer has finished his job of designing and programming it, the neural network is empty, just like a newborn baby’s brain is practically empty, at least when it comes to skills. Training a neural network consists in learning by example and associating input with output. You may e.g. ask the neural network to make a guess: “It’s green and its shape is long – what is it? Take a pick between pumpkin, cucumber, banana and potato.” So the neural network makes a guess. Every right guess will be rewarded, every wrong guess will be punished (mildly). Gradually the neural network will make more and more right guesses.

Another special thing about neural networks is that the result of the training is not stored in one location within the programme – instead it is distributed in a network of “weights”. If an input is e.g. “green” in the above example, the weight associated with green as input and cucumber as output will be more “heavy” than the equivalent weight for potato, when the network has finished its schooling.

The distributed intelligence in a neural network means that after it has been trained, it cannot explain to you how it came to its conclusion. So, if for instance I train a neural network to identify cancer patients from their astrological charts, the neural network cannot identify which particular astrological influence made it conclude that a particular horoscope belongs to a cancer patient. If you want the answer to that question, you will have to go through very tedious work of analyzing thousands of weights in the “stomach” of the neural network. Believe me: It’s not worth the effort.

There is a parallel between the genes and the brains here – both are distributed. Says professor Oliver Dean from King’s College: “You cannot say there is a gene for intelligence. Instead there are a lot of different genes, which each has a small influence on the intelligence, and they don’t have any effect, before you put them together.” (Palmgren, 2011 – my translation from Danish to English)

The distribution of intelligence in genes and brain cells, makes the brain very resilient. Consider the heart in comparison. Either it’s working – or you have a dramatic situation, which very quickly might lead to sudden death. With the brain you can have damage in one department and perfect functionality in another department. And when you get old the brain will decay gracefully – if you loose brain functionality due to old age, it will happen gradually, so that almost nobody will notice it.

These 2 opposite principles are symbolized in astrology by Leo and the Sun (= anatomically the heart) and Aquarius and Uranus (= anatomically the brain). The association between Leo, the Sun and the anatomical heart is part of the astrological tradition and can be found in most basic astrology books (e.g. Parker, 1984). As for the association between Aquarius, Uranus and the brain it is my own observation. Linda Goodman (Goodman 1968 and 1978) describes people with sun sign Aquarius as very “brainy”, and most modern basic astrology books (e.g. Parker, 1984) associates Uranus with advanced computer technology, which is a very “brainy” phenomena.

Neural networks are applied in the following business areas: Predictions (e.g. weather forecasts, financial forecasts), economical decision making (e.g. for insurances or advertising), pattern recognition (e.g. reading handwritten letters), modelling of human behaviour (e.g. speech reproduction), mechanical control (e.g. making a robot move correctly), medical research (like investigating the structure of proteins), filtering of video signals containing “noise”, error detection (e.g. in the car industry) and optimizing air control planning (like how to find the shortest route between 2 cities at a particular time). Actually neural networks are applied so many places in modern societies, that it’s a wonder that the most human beings haven’t discovered yet, how they have taken over everything!

It’s easy to see the advantages of neural networks: They are capable of learning by creating their own internal representation of a problem area based on the raw information they receive. And they are excellent at solving tasks dealing with generalisation, association and classification.

Here is a list of disadvantages from using neural networks:

  • Not accurate: Would you rely on a neural network, which was 65% accurate in its predictions regarding the stock market or the horse races? Yes, because it would still make a profit in the long run.
  • Not good at deduction or logical operations like making a conclusion by going from A to B to C.
  • Cannot perform operations involving several steps like e.g. baking a cake.
  • Cannot solve even elementary mathematical assignments. What’s 2+2? The neural network would say e.g. 3.9 or 4.2 and very rarely 4.0.
  • Unexplainable: Neural networks work at an intuitive level and cannot explain to the outer world how they reach their conclusions.
  • Poor performance: Usually it’s the training phase, which involves months or even years, before a neural network can be put into use. But even the design phase or the actual execution after training may take more time than with most conventional computer programs.

You will choose to use a neural network, when you don’t know the rules for solving the problem at hand but instead are in possession of a huge number of relevant examples of the problem and its solution. Because a neural network learns to generalize by associating and mimicking from the examples.

Neural networks can deal with a certain amount of uncertainty, as long as it has a sufficiently large number of examples available. Even if the rules change over time, a neural network can adapt itself to the changed situation.

You don’t have to understand how a neural network works, as long as you understand the nature of the problem at hand. However, you must be able to discriminate to a certain degree which data are essential for the problem solution, and which are not.

Copyright Eskild Rasmussen