Title:PANTHER: A Programmable Architecture for Neural Network Training Harnessing Energy-efficient ReRAM
Ladda ner PDF
Sammanfattning: Den breda användningen av djupa neurala nätverk har åtföljts av ständigt ökande energi- och prestandakrav på grund av den kostsamma karaktären av träning av dem. Många specialarkitekturer har föreslagits för att påskynda utbildningen: både digitala och hybrid digitala-analoga arkitekturer med hjälp av resistiva RAM (ReRAM). ReRAM-baserade acceleratorer har visat att ReRAM-kryssskenor är effektiva när det gäller att utföra matris- och vektormultiplikationsoperationer som är vanliga i utbildningen. De lider dock fortfarande av ineffektivitet på grund av användningen av seriell läsning och skrivning för att utföra viktgradienten och uppdateringssteget. Ett fåtal arbeten har visat att det är möjligt att utföra yttre produkter i crossbars, vilket kan användas för att genomföra viktgradient- och uppdateringssteget utan användning av seriell läsning och skrivning. Dessa arbeten har dock begränsats till operationer med låg precision som inte är tillräckliga för typiska träningsbelastningar. Dessutom har de begränsats till en begränsad uppsättning utbildningsalgoritmer endast för fullt sammankopplade lager. För att ta itu med dessa begränsningar föreslår vi en bitskivningsteknik för att öka precisionen hos Reram-baserade yttre produkter, som skiljer sig avsevärt från bitskivning för enbart matris- och vektormultiplikation. Vi införlivar denna teknik i en arkitektur med tre varianter som är anpassade till olika träningsalgoritmer. För att utvärdera vår konstruktion för olika typer av lager i neurala nätverk (fullt sammankopplade, konvolutionella osv.) och träningsalgoritmer utvecklar vi PANTHER, en ISA-programmerbar träningsaccelerator med kompilatorstöd. Vår utvärdering visar att PANTHER uppnår upp till 8,02\times$, 54,21\times$ och 103\times$ energiminskningar samt 7,16\times$, 4,02\times$ och 16\times$ minskningar av exekveringstiden jämfört med digitala acceleratorer, ReRAM-baserade acceleratorer respektive GPU:er.