Machines could be taught to think like humans more efficiently with a new type of neural network made from memristors.
It is claimed the network, a so-called reservoir computing system, could predict words before they are said during conversation, and help predict future outcomes based on the present.
The research team that created the reservoir computing system, led by Wei Lu, professor of electrical engineering and computer science at the University of Michigan, recently published their work in Nature Communications.
Reservoir computing systems improve on a typical neural network’s capacity and reduce the required training time. They have previously been created with larger optical components but the U-M group created their system using memristors, which require less space and can be integrated more easily into existing silicon-based electronics.
Memristors are resistive devices that can perform logic and store data, which contrasts with typical computer systems where processors perform logic separate from memory modules. In this study, Lu’s team used a special memristor that memorises events only in the near history.
Inspired by brains, neural networks are composed of neurons, or nodes, and synapses, which are the connections between nodes.
To train a neural network for a task, a neural network takes in a large set of questions and the answers to those questions. In this process of supervised learning, the connections between nodes are weighted more heavily or lightly to minimise the amount of error in achieving the correct answer.
Once trained, a neural network can then be tested without knowing the answer; a system can process a new photo and correctly identify a human face, because it has learned the features of human faces from other photos in its training set.
“A lot of times, it takes days or months to train a network,” Lu said. “It is very expensive.”
Image recognition is also a relatively simple problem, as it doesn’t require any information apart from a static image. More complex tasks, such as speech recognition, can depend highly on context and require neural networks to have knowledge of what has just occurred, or what has just been said.
“When transcribing speech to text or translating languages, a word’s meaning and even pronunciation will differ depending on the previous syllables,” Lu said.
This requires a recurrent neural network, which incorporates loops within the network that give the network a memory effect. However, training these recurrent neural networks is especially expensive, Lu said.
According to U-M, reservoir computing systems built with memristors can skip most of the expensive training process and still provide the network the capability to remember. This is because the most critical component of the system–the reservoir–does not require training.
When a set of data is inputted into the reservoir, the reservoir identifies important time-related features of the data, and hands it off in a simpler format to a second network. This second network then only needs training like simpler neural networks, changing weights of the features and outputs that the first network passed on until it achieves an acceptable level of error.
The team proved the reservoir computing concept using a test of handwriting recognition, a common benchmark among neural networks. Numerals were broken up into rows of pixels, and fed into the computer with voltages like Morse code, with zero volts for a dark pixel and a little over one volt for a white pixel.
Using 88 memristors as nodes to identify handwritten versions of numerals, compared to a conventional network that would require thousands of nodes for the task, the reservoir achieved 91 per cent accuracy.
Reservoir computing systems are especially adept at handling data that varies with time, like a stream of data or words, or a function depending on past results.
To demonstrate this, the team tested a complex function that depended on multiple past results, which is common in engineering fields. The reservoir computing system was able to model the complex function with minimal error.