Artificial neural networks (ANN) in machine learning (artificial intelligence) are complex compounds of algorithms that work in an organized manner to extract labels or results for a given set of data. It is believed that this technology is akin to the biological arrangement of neurons in the human central nervous system (CNS); wherein a set of neurons transfers stimuli to another set which consequently relates them to another set of neurons till the brain gets to interpret the stimuli and instigate a reaction. Each compound of algorithms simulates a human neuron (nerve cell) and it connects with other compounds of brotherly algorithms to make computations and transmit information. Although this comparison [to the brain cells] is informal because we are not quite yet certain how the human central nervous system works its intricacy, thus we cannot simply compare it to the artificial neural network which obviously is incompetent in terms of intelligence, decisiveness, and originality. This is why some folks will tell you computers can never be as smart as humans, or at least cannot have the same type of natural [animate] intelligence, because artificial neural networks which are themselves the modelled brains of these [artificial intelligence] computers don’t yet seem to compare to the human brain. However, the artificial intelligence we have today, and the ones we perceive of the future, are very much impressive when it comes to data [or information] processing. This, perhaps, could be the championship of the computer over humans, because today, we can make a 1GB computer process stored data faster than a human student ever could — of course, if students had that superpower as artificial neural networks, they wouldn’t be perplexed remembering things in the exams at all. So, if the artificial neural networks are indeed competent in data processing, an advantage that has yielded a lot of awesomeness in artificial intelligence today, how do they do it?
A typical artificial neural network (the brain of the AI) consists of a few, scores, cents, thousands, or even millions of artificial neurons called units — like the human brain has billions of units of brain cells. The units of the artificial neural network are arranged in a series of layers, each connecting to the layers on either side.
From the image above, we see the arrangement of these layers. The first layer receives data, input, or signals (if a sensor) that the artificial neural network will attempt to recognize and process — thus, it is called the input layer. The next sets of layers just before the last layer are called the hidden layers, consisting of sets of other artificial neurons that take the processed results from the input layer to re-process them. The last layer is the output layer, and it simply outputs the results of the computations from previous layers. Simple artificial neural networks, like a perceptron, consist of one input layer of artificial neurons, one or a few more hidden layers of artificial neurons and an output layer of artificial neurons. Other complex artificial neural networks will consist of tens, hundreds, thousands, and millions of hidden layers so that they get inputs or raw information from one layer (the input layer), process it through a very rich myriad of layers inside, and then give computed results through the last layer (output layer) — these ones are called Deep Neural Networks (DNN).
Neural networks, apart from their numerous layers, have more intricate structures and connections between individual artificial neurons of each layer. Each artificial neuron, which means a unit in one layer, could be connected to one or more artificial neurons of the next layer as in the former image. The connections between artificial neurons are represented by individual numbers called weights, which can be either positive or negative, depending on which artificial neuron succeeds the other in the network. The artificial neuron with a larger weight will have a larger influence in the computation over the ones with lesser weights — this happens to be the way brain cells trigger one another across tiny gaps called synapses. The bias is a conventional value attributed to each artificial neuron.
Each artificial neuron has its own number associated to it, called activation. This number represents the artificial neuron and is also used in its computation. There is a complex calculation between the activations, weights, and biases of connections to obtain the value (or activation) of a destination artificial neuron in the network. Mathematical functions such as sigmoid function, rectified linear activation unit, ReLU function for short, threshold function, and hyperbolic tangent function are used as the basis of algorithms that work these computations. Each of these functions aims to compute the value of the destination artificial neuron in the network by calculating the sum of the products of connected units with its given bias. The first of the hidden layers obtains values for individual artificial neurons in it and passes these values for the computation of subsequent hidden layers — like a chain reaction in chemistry. This discourse is not intended to dissect the flow of mathematical logic in the computer’s brain as much as it is an overview which allows you to understand how we use machine learning to build the brains of AI — thus, we shall rather briefly discuss the applications of artificial neural networks, something less abstract; I wouldn’t want to bore you with mathematics [in this ‘overview’].
Artificial Neural Networks (ANN) are used in recognition systems, such as speech recognition, handwriting or text recognition, computer vision, and also natural language processing (which conversational robots use). We cannot list all the applications of neural networks as much as we don’t yet know the limitations of artificial intelligence itself. Artificial neural networks are the brains of artificial intelligence systems, and any computer program professing to apply artificial intelligence but does not have a neural network of algorithms underlying its codes is only like some of the invertebrate animals which live but don’t have brains. Police departments in developed and some developing countries use artificial neural networks in their computer vision systems to identify the registration plate numbers of cars from their traffic cameras. These systems could detect the speed of cars or whether a driver disobeys any of the traffic laws, simply by calculating their velocity mathematically. They capture the plate number of that car which the police will obtain from the system; thus, the law need not be perplexed searching for the criminal or prosecuting the innocent, the AI gets the exact culprit’s plate number with other necessary details.
There are several types of artificial neural networks, but the most common ones are Convolutional Neural Network (CNN), Feedforward Neural Network (FNN), Recurrent Neural Network (RNN), Modular Neural Network (MNN), Kohonen Self Organizing Neural Network,
Radial basis function Neural Network, etcetera. These networks are inspired by the concept of the biological brain, though we don’t see any significant resemblance. They differ, basically, in their abstract structures, functions, and uses.
For the most part, a higher knowledge in mathematics is essential for any programmer who desires to engage this field of building brains for AI, but everything seems to have cheaper alternatives. There are python programs that can be written in these neural networks without the programmer having to know all the hows of the mathematical logic and induction that make the algorithms work, therefore, if they so wish, they can learn more about this field. Artificial neural networks, by the way, keeps growing and we see better computations every day because the AI continues to learn. Soon enough, even though AI, in my opinion, will definitely not have the human type of intelligence, there will be computer actions that will be difficult to distinguish from human actions.
University of Lagos, Nigeria.
SGC GI: 048 — Robotics/IoT/AI