Artificial neural networks are, in the simplest sense, the electronic reproduction of modeled biological neural networks. The functional aspects and structure of the biological models are reproduced in a manner that allows programs to recreate some of the unique aspects of the way human brains think and solve problems. There are many different ways to model an ANN; although, all carry the same premise: the computer learns from a dynamic process of examples and training instead of being pre-programmed with a linear database that contains all the information it needs.
How They Function
Just like their biological counterparts, ANNs measure weights and inputs against a threshold to determine whether they become active or not. Unlike a human mind, however, these weights can be adjusted in order to push the artificial neurons to tend towards certain behavior. This weight-controlling combines with the basic training required to get the neurons in shape for whatever their task might be. As the neurons carry out their task, they are allowed to reproduce or die off based on their success – in correlation to evolution’s “survival of the fittest”. The program’s “memory” is created through the increasing strength and expanding connections between units and across the network.
Connectionist Computation and ANNs
ANNs’ functionality is based heavily on the idea of connectionism, an idea that crosses fields of study from philosophy to psychology and into artificial intelligence. Connectionism states that mental or behavioral phenomena are the emergent processes of interconnected networks of simple units. When one unit in the system is activated, it spreads throughout the network and influences the rest of the connected system. In theory, any mental state that a living being can experience can be described as an activation of neural units in a network.
Ways to Train Artificial Neurons
Training the individual units of an artificial network is required if one wishes to steer them in a preferred direction. Units without training tend to act erratically, and, although they may begin to exhibit communal behavior, their lack of focus makes them essentially useless in real-world applications. There are two general ways to train ANNs to perform their tasks efficiently: unsupervised learning and supervised learning.
Unsupervised Learning
In this model, the neurons receive no outside input beyond their initial training. Hidden layers of evaluative programming are written and measure the weights of information to determine its relevance. The weights then proceed to the artificial neuron where they are combined and a final decision is made based on whether the threshold has been broken or not. In this manner, the neural units are pretty much allowed to do whatever they want as long as they follow the rules. This method is good for most straight-forward programs that have definite solutions.
Supervised Learning
Under supervised learning a programmer uses his judgment to assist the neurons in their development. When a neuron (or network) comes to a conclusion, the programmer can tell it not only whether it is right or wrong but also how right or wrong it is. This trains the neurons to head in a particular direction with their growth, a direction that is usually determined ahead of time by the programmer. Due to the partially subjective quality of the goal, this type of learning is better for applications like language acquisition and sensory input tasks such as recognizing facial expressions, voices, body language, etc.
ANNs in the Development of AI
ANNs are already being used as “mini-brains” by scientists who wish to poke at problems to which they do not know the answers. By setting the network with relevant information, the neurons can come up with their own answers and may eventually solve the problem put before them. Also, ANNs offer the best solution for control of robots, which need to be able to process things like spatial recognition in order to move properly. The trial and error functionality of ANNs working on robot motor skill issues has shown to eventually produce results and allow the machines to travel and even adjust for varied terrain.
In the grand scheme of things, mimicking the human brain makes computers think and act more in line with what people might consider to be human behavior. As the technology and intricacies of programming advance, these human-like thinking processes will become more complex and more indistinguishable from those of sentient beings. By using the concept of unsupervised learning, an AI will be able to figure things out for itself through experimentation. This becomes even more important if the AI has a robotic body that it can use to interact with the world. Supervised learning will allow an AI to be taught by those who are knowledgeable; it could even be taught conflicting information in order to challenge its mind to make a decision based on the analysis and comparison of real and false knowledge. Being fooled is one thing that humans do well, and an AI that can be tricked is that much closer to true intelligence.
How ANNs are Currently Being Used
ANNs are being used in a variety of useful ways, and new developments being made all the time. The most obvious is in duplicating the workings of the brain in order to understand it further, but there are many other areas for these technological marvels.
- Language learning in artificial intelligence.
- Facial and speech recognition, and other categorical, spatial recognition tasks that can be detected with external sensors.
- Analytical problem solving.
- Robotic navigation, motor skill adjustment and sense processing.
- Running automated vehicles and machinery.
- Predictive software for areas such as the stock market.
- Video games.
- Pattern and sequence recognition and analysis.
As wonderful and limitless as ANNs may seem to be, there are some fundamental problems that limit what programmers are currently able to do with them. When ANNs are let loose on a problem, they sometimes come up with the correct solutions but in ways that make little sense. It is also hard to analyze the way that the networks are getting to their results, which means there is little means to backtrack and find out what the machine was “thinking” when it came to a certain conclusion. Even if the ANNs work properly, scientists are at a loss sometimes to figure out how they did it. This deviation from traditional scientific method is one of the reasons that linear algorithmic programming has not faded from the field of artificial intelligence.