University of Michigan researchers have built a memristor computer capable of identifying Greek letters, reconstructing compressed images, and detecting cancers.
A memristor is a non-volatile type of resistive memory that retains its state, which could be on, off or an in-between value. When current flows through it that state changes and persists. There’s more information here.
Memristors are analog and HP researchers in 2008 suggested they could be built into an analog computer. This would sum or subtract lots of in-between states of the memristor to arrive at a judgement about a problem such as face or speech recognition.
The idea is that a memristor functions like synapses in the human brain, which assimilate the input from previous synapses and pass on their resulting state to other synapses. This makes memristors interesting to neuromorphic computing researchers, who try to mimic brain functions using electronic circuits.
A conventional computer with CPU and DRAM has data loaded into DRAM from a backing store, then processed by the CPU, and fresh data loaded into DRAM. In a memristor array the data is already present, embodied in the cell states, and the data load time is cut.
Researchers from HRL Labs and the University of Michigan, led by Wei Lu, fabricated a functioning memristor array in 2012, and called it an artificial synapse for neuromorphic computing. They said memristors combine the functions of memory and logic like the synapses of biological brains.
Seven years later University of Michigan researchers, again led by Wei Lu, have built a Memristor computer.
University of Michigan device
The researchers built a crossbar memristor array chip, with 5,800 memristors. It plugs into another chip containing a digital OpenRISC CPU, communications channels, and two types of converter: analog-to-digital and digital-to-analog. The resulting hybrid device forms the first programmable memristor computer.
The researchers say that it could be faster than both digital processors and GPUs in working on neuromorphic problems, which require many cores to work in parallel. A CPU has up to 64 cores while a GPU can have thousands of more specialised cores, and works 10 to 100 times faster than a CPU.
The memristor array could be reloaded with a set of values or data vectors that represent a particular state or thing: the Greek letter ‘alpha’, an image, or the attributes of particular types of cancer. An input dataset is compared against this matrix of data vectors to see if it matches.
The researchers developed software to map machine learning algorithms onto the memristor array’s matrix-like structure and applied three types of machine learning problem to this hybrid chip.
- Perceptron information classification with 100 per cent accurate identification of imperfect Greek letters (noisy 5×5 pixel arrays); ‘Ω’, ‘M’, ‘Π’, ‘Σ’, and ‘Φ’, after online learning runs.
- Sparse coding; the hybrid chip was able to find the most efficient way to reconstruct simple images (4×4 bar patterns) in a set and identified compressed patterns with 100 per cent accuracy.
- Two-layer neural network; after learning runs it found commonalities and differentiating factors in simple breast cancer screening data, classifying each case as malignant or benign with 94.6 per cent accuracy.
Research findings are published in a paper, “A fully integrated reprogrammable memristor-CMOS system for efficient multiply-accumulate operations” [paywall].
The researchers envisage a memristor array with millions of cells that would work 10 to 100 times faster again than GPUs.
This research project is highly promising but it would be useful to know how the hybrid chip’s speed compares to a digital CPU or a GPU system doing the same work on the three problems. This would give a base point from which we can assess the practical utility of memristor technology.