An Artificial Neural Network (ANN) in Electronic Product Design

This paper reports on the development of a wearable gesture recognition device for communicating with children that have acute communication difficulties. The device was designed with the aid of an artificial neural network (ANN) to develop and refine the physical gestures made by the user. The findings of the evaluation of the data handling are discussed with a view to improving on both its functions in gesture recognition and further development of its database.

An ‘artificial neural network’ is, as it suggests, is a manmade system designed to mimic the cognitive ability of an animal brain. Gurney (1997) provided a neural model of the way in which artificial neural networks (ANNs) operate, it is estimated that the human brain comprises around 100 billion neurons. These neurons combine to make highly complex networks, as each neuron may have up to 10,000 connections. They communicate with each other via electrical impulses thus making up the brain (Drachman, 2005). Interneuron connections are mediated by synapses which are located on the end of dendrite cells that feed into the cell body, the soma. Here the synaptic inputs are integrated or summed together in some way and if the resultant is greater than a threshold level then the neuron will ‘fire’ a voltage impulse (Gurney, 1997). This output then feeds into other neuronal inputs.

Unlike conventional alphanumeric, equation-based computing, artificial neural networks provide for adaptability and ‘learning’ within a computer program. However, where biological and artificial neurons differ is in their ability to make each input more or less important than others through use of a weighting technique. Depending on the synaptic connection, each synapse’s electrochemical response can be polarised so that it is either excitatory (designed to promote synaptic firing) or inhibitory (designed to discourage synaptic firing). Additionally these ‘weights’ can change over time and this change in weight is interpreted as learning (Russell and Norvig, 2010).

In artificial neural networks, the equivalent to the neuron is called as a node or unit. A simple node works on the same level of understanding as biological neurons just given. As artificial neurons are currently based on digital inputs, the weighting technique differs slightly. Inputs, as in conventional computing, are still essentially made up of 1’s and 0’s. According to Gurney (1997), to achieve ‘weighting’, input data is passed through individual equations:

These weighted inputs are then summed together and passed through a threshold limit. If the resultant is higher than the threshold then the node will produce a 1 if not then it will produce a 0. This type of artificial neuron is the simplest and historically earliest. It was put forward by McCulloch and Pitts (1943) and is known as a threshold logic unit.

In the brain, learning is achieved by neurons becoming more or less sensitive to certain synaptic responses. This can be emulated in artificial neurons by altering an input’s weight. The modification of weights is usually done automatically through use of comparison of data to classification code (Gurney, 1997). For example, if one considers pattern recognition of text, say a handwritten paper was scanned and inputted into the neural network. The ANN is told to analyse the individual characters looking for specific characteristics e.g. roundness, how many straight lines there are, are there any holes etc. This information becomes the input data for the neural network. The network is then given the output data (the correct translation of the inputted data). Through use of back propagation the neural network will attempt to work out how to get from the output to the input and adjust the weights accordingly (Lampinen, Laaksonen, and Oja, 1998).

This process is called ‘training’, effectively allowing the neural network to ‘learn’. All artificial neural networks need to go through this process hundreds of times before they can start to make logical and accurate assumptions (Gurney, 1997). If you have ever used voice recognition software you will be aware that before you can start using it effectively that you must read from passages of text. Here you are literally teaching and familiarising the software to the way that you speak and pronounce words (Van Daalen, and Bots, 2010).