Memristor-array-chippen tilsluttes den brugerdefinerede computerchip, danner den første programmerbare memristor -computer. Holdet demonstrerede, at det kunne køre tre standardtyper af maskinlæringsalgoritmer. Kredit:Robert Coelius, Michigan Engineering
Den første programmerbare memristor -computer - ikke bare en memristor -array, der drives via en ekstern computer - er blevet udviklet ved University of Michigan.
Det kan føre til behandling af kunstig intelligens direkte på små, energi-begrænsede enheder såsom smartphones og sensorer. En smartphone AI -processor ville betyde, at stemmekommandoer ikke længere skulle sendes til skyen for fortolkning, fremskynde responstiden.
"Alle ønsker at sætte en AI-processor på smartphones, men du vil ikke have, at dit mobiltelefonbatteri aflades meget hurtigt, " sagde Wei Lu, U-professor i elektroteknik og computerteknik og seniorforfatter af undersøgelsen i Naturelektronik .
I medicinsk udstyr, evnen til at køre AI-algoritmer uden skyen ville muliggøre bedre sikkerhed og privatliv.
Hvorfor memristors er gode til maskinlæring
Nøglen til at gøre dette muligt kunne være en avanceret computerkomponent kaldet memristor. Dette kredsløbselement, en elektrisk modstand med en hukommelse, har en variabel modstand, der kan tjene som en form for informationslagring. Fordi memristorer gemmer og behandler information på samme sted, de kan komme uden om den største flaskehals for computerhastighed og kraft:forbindelsen mellem hukommelse og processor.
Dette er især vigtigt for maskinlæringsalgoritmer, der beskæftiger sig med masser af data til at gøre ting som at identificere objekter på fotos og videoer - eller forudsige, hvilke hospitalspatienter der har højere risiko for infektion. Allerede, programmører foretrækker at køre disse algoritmer på grafiske behandlingsenheder frem for en computers hovedprocessor, den centrale behandlingsenhed.
"GPU'er og meget tilpassede og optimerede digitale kredsløb anses for at være omkring 10-100 gange bedre end CPU'er med hensyn til effekt og gennemløb." sagde Lu. "Memristor AI-processorer kunne være yderligere 10-100 gange bedre."
GPU'er klarer sig bedre til maskinlæringsopgaver, fordi de har tusindvis af små kerner til at køre beregninger på én gang, i modsætning til rækken af beregninger, der venter på deres tur på en af de få kraftfulde kerner i en CPU.
Et memristor -array tager dette endnu længere. Hver memristor er i stand til at lave sin egen beregning, gør det muligt at udføre tusindvis af operationer i en kerne på én gang. I denne computer i eksperimentel skala, der var mere end 5, 800 memristorer. Et kommercielt design kan omfatte millioner af dem.
Wei Lu står sammen med førsteforfatteren Seung Hwan Lee, en elektroteknisk ph.d. -studerende, der holder memristor -arrayet. Kredit:Robert Coelius, Michigan Engineering
Memristor -arrays er især velegnede til maskinlæringsproblemer. Årsagen til dette er den måde, maskinlæringsalgoritmer omdanner data til vektorer - i det væsentlige, lister over datapunkter. Ved at forudsige en patients risiko for infektion på et hospital, for eksempel, denne vektor viser muligvis numeriske repræsentationer af en patients risikofaktorer.
Derefter, maskinlæringsalgoritmer sammenligner disse "input" -vektorer med "feature" -vektorer, der er gemt i hukommelsen. Disse funktionsvektorer repræsenterer visse træk ved dataene (f.eks. Tilstedeværelsen af en underliggende sygdom). Hvis matchet, systemet ved, at inputdataene har den egenskab. Vektorerne opbevares i matricer, som ligner matematikens regneark, og disse matricer kan afbildes direkte på memristor-arrays.
Hvad mere er, når data føres gennem arrayet, hovedparten af den matematiske behandling sker gennem de naturlige modstande i memristorerne, eliminerer behovet for at flytte funktionsvektorer ind og ud af hukommelsen for at udføre beregningerne. Dette gør arrays meget effektive ved komplicerede matrixberegninger. Tidligere undersøgelser viste muligheden for memristor -arrays for at fremskynde maskinlæring, men de havde brug for eksterne computerelementer for at fungere.
Bygger en programmerbar memristor -computer
For at bygge den første programmerbare memristor-computer, Lu's team arbejdede sammen med lektor Zhengya Zhang og professor Michael Flynn, både af el- og computeringeniør på U-M, at designe en chip, der kunne integrere memristor -arrayet med alle de andre elementer, der er nødvendige for at programmere og køre det. Disse komponenter omfattede en konventionel digital processor og kommunikationskanaler, samt digitale/analoge konvertere til at fungere som tolke mellem den analoge memristor array og resten af computeren.
Lu's team integrerede derefter memristor-arrayet direkte på chippen på U-M's Lurie Nanofabrication Facility. De udviklede også software til at kortlægge maskinlæringsalgoritmer på memristor-arrayets matrix-lignende struktur.
Holdet demonstrerede enheden med tre brød-og-smør-maskinlæringsalgoritmer:
Der er udfordringer med at opskalere til kommerciel brug - memristorer kan endnu ikke laves så identiske, som de skal være, og informationen, der er lagret i arrayet, er ikke helt pålidelig, fordi den kører på analogs kontinuum frem for det digitale enten/eller. Disse er fremtidige retninger for Lu's gruppe.
Lu planlægger at kommercialisere denne teknologi. Undersøgelsen har titlen, "Et fuldt integreret omprogrammerbart memristor -CMOS -system til effektive operationer med flere gange."