Latest News
|NewsletterConventional computing methods can solve most data processing and control tasks as long as you throw enough high-speed silicon at the problem.
Our brains, though, can complete some remarkably complex tasks, faster than a room full of computers, and yet we achieve this with neurons that do not respond in much less than a millisecond.
That networks of biological neurons can often operate more efficiently than nanosecond-switching logic-gates is not startling news but applying that knowledge to building alternative models of computation has had mixed results.
Anyone working in electronics a decade ago will remember the excitement, followed by disappointment, generated by fuzzy logic microcontrollers that used artificial neural network algorithms and machine-learning to ‘revolutionise’ embedded systems. There was no revolution.
But the idea has not disappeared and today, driven by increasingly stringent emissions regulations, software and hardware-based neural network-based techniques are being successfully applied to engine control and diagnostics in automotive embedded systems.
In the Aston Martin DB9, for example, Ford has used a software neural network running on the main ECU for detecting misfires in the car’s high revving V12 engine. The neural approach is promoted as a high-tech feature but it was probably the only cost-effective way Ford could make the DB9 meet the demanding Californian emissions requirements (the higher the engine cylinder-count, the higher the RPM, and hence the bigger the computing overhead associated with detecting misfire).
Artificial neural networks work well where there is a causal relationship between one or more inputs and a physical quantity, but where there is no straightforward analytical relationship between the inputs and the output.
| Axeon's Paul Neil |
“The virtue of the neural network solution is that it is general purpose and it is data-driven. You don’t program it, you train it, so the quality of solution is very much dependent on the quality and quantity of data you train it with,” explains Paul Neil, engineering manager at Axeon, one of very few companies with a commercially available hardware neural network.
Axeon’s Vindax processor is a co-processor that accelerates neural algorithms in hardware, the result of Professor Neil Lightowler’s research on neural networks at Aberdeen University a few years back.
The latest version, the VX1064, is a pure SIMD array of 64 hardware, processing elements (neurons). Although it has 64 physical elements, neural networks of arbitrary size can be mapped onto it and more than one application can be run at any time.
For a 64-neuron map running a fairly complex application, the current implementation will deliver performance in excess of 0.5 million classifications per second. As you go up to 1,024, it degrades to around 100k classifications/second.
“This is performance which represents at least two orders of magnitude increase over conventional software solutions running today,” says Neil. “Our approach has the advantage that you can free up bandwidth from your ECU [engine control unit] to do other things.”
| Axeon's development board for Vindax |
Axeon is working with major US and European OEMs, including General Motors with whom it recently published a paper on using neural networks for developing virtual sensors for monitoring engine control performance.
Usually, a mass air flow sensor on the manifold input tells the ECU how much air is being sucked in, while an oxygen sensor on the exhaust measures how complete the combustion has been inside the cylinder.
In the GM application, the mass air flow sensor function is replaced by the neural network, which takes in a set of secondary data inputs - the engine speed, the position of the throttle, intake air temperature, and manifold pressure. “We can train the neural network to replicate the transfer function relating these secondary inputs and the mass of air in the intake manifold,” explains Neil. “This function approximation can reduce the cost of the system and improve the performance in ways that conventional techniques would find difficult.”
Axeon’s usage model is for many applications to run on the same device, re-using the sensor data from the previous ignition. So as well as running a virtual sensor application, the same device could run a classification application where the network receives an event stream and sorts them into different classes as used in the DB9 for misfire detection, for example.
| Professor Steve Furber |
Today’s neural networking techniques are clearly very powerful, but Steve Furber, ICL Professor of Computer Engineering at Manchester University and a principal architect of the ARM processor, thinks there is more scope to use these ideas.
He is planning to study various models of neurons in real time, on a network of specially designed multiprocessor SoCs, based on multiple ARM processors.
Furber’s interest has been sparked by his research on asynchronous logic - neurons are similar to asynchronous logic in that there is no clock and they appear to act as autonomous components.
With ARM and the start-up Silistix as industrial partners, plus Southampton University, Furber is going back to the basic biology in order to model phenomena that are insufficiently understood, in this case neural ‘spiking’ behaviour.
A neuron has a very large number of inputs and a single output. Every so often, the output sends out a sharp electrical spike and every ‘spike’ is roughly the same shape and size, suggesting that the predominant detailed information appears to be in the timing.
“Traditionally, people who’ve looked at spiking behaviour have assumed that the information is carried in the ‘rate’ at which the neurons spike,” explains Furber. “But if you look at how quickly we respond to something we see, it’s easy to show that there is insufficient time for any neuron involved to spike more than once.”
The idea is to use the multiprocessor chips to model various ways in which neurons may express information in their patterns of spikes. In asynchronous logic, for example, you may have a three-of-six code where there are six components and three of them are active in any particular operation.
The information is encoded in the choice of the three; therefore there are 20 different ways you can pick three out of six. The Manchester researchers have extended the idea by adding rank-order, which means if the order matters, there are then 120 different ways to pick three out of six. For neurons, the numbers involved might be 20 in 200 or 100 in 1000.
If this model is correct, then populations of neurons producing firing patterns have a very high information capacity, based around the dynamic behaviour of the ‘spikes’.
The chips will contain 20 or so ARM processors and each processor will be able to model 100s or maybe 1,000s of neurons. “It’s building a sandpit for playing with spiking neurons,” he says. Furber is thinking of a system that might have 10,000 of these two chip nodes in it, with 200,000 ARM processors in it, to see the scale effects.
The main feature of the system architecture is a communications fabric that propagates these data-less ‘spike’ events such that there is a ‘sea’ of connected neurons. The fabric is based on a self-timed network-on-chip technology developed by Silistix, a company spun-out from Furber’s group at Manchester.
In electronics today we worry about the speed of light and the time it takes for a signal to get across a chip, but this is not a concern in neural networks which have slow communications and very slow components but huge amounts of parallelism. The promise is of alternative computational architecture that can outperform our fastest systems in tasks such as face recognition, speech processing, and the use of natural language.