AI-modellen en platforms
Onderzoekers creëren alternatief voor GPU

Computerwetenschappers van de Rice University, samen met medewerkers van Intel (INTC ), hebben een meer kostenefficiënt alternatief voor GPU ontwikkeld. De nieuwe algoritme heet “sub-lineaire diepe leerengine” (SLIDE) en maakt gebruik van algemene centrale verwerkingseenheden (CPUs) zonder gespecialiseerde versnellingshardware.
De resultaten werden gepresenteerd in het Austin Convention Center, dat het machine learning systems-congres MLSys organiseert.
Een van de grootste uitdagingen binnen kunstmatige intelligentie (AI) is gespecialiseerde versnellingshardware, zoals graphics processing units (GPUs). Voordat de nieuwe ontwikkelingen plaatsvonden, werd aangenomen dat het gebruik van deze gespecialiseerde versnellingshardware noodzakelijk was om diepe leer technologie te versnellen.
Veel bedrijven hebben veel belang gehecht aan investeringen in GPUs en gespecialiseerde hardware voor diepe leer, die verantwoordelijk is voor technologie zoals digitale assistenten, gezichtsherkenning en productaanbevelingssystemen. Een van deze bedrijven is Nvidia (NVDA ), dat de Tesla (TSLA ) V100 Tensor Core GPUs creëert. Nvidia rapporteerde onlangs een stijging van 41% in de omzet in het vierde kwartaal ten opzichte van vorig jaar.
De ontwikkeling van SLIDE opent geheel nieuwe mogelijkheden.
Anshumali Shrivastava is een assistent-professor aan de Brown School of Engineering van Rice en hielp SLIDE te ontwikkelen met graduate students Beidi Chen en Tharun Medini.
“Onze tests laten zien dat SLIDE de eerste slimme algoritme-implementatie van diepe leer op CPU is die GPU-hardwareversnelling kan overtreffen op industrie-schaal aanbevelingsdatasets met grote volledig verbonden architecturen”, zei Shrivastava.
SLIDE gaat langs de uitdaging van GPUs vanwege zijn compleet andere benadering van diepe leer. Momenteel is de standaard trainingsmethode voor diepe neurale netwerken “back propagation” en vereist matrixvermenigvuldiging. Deze workload vereist het gebruik van GPUs, dus de onderzoekers pasten de neurale netwerktraining aan zodat het kon worden opgelost met hash-tabellen.
Deze nieuwe benadering vermindert de computationele overhead voor SLIDE aanzienlijk. Het huidige beste GPU-platform dat bedrijven zoals Amazon (AMZN ) en Google (GOOGL ) gebruiken voor cloud-gebaseerde diepe leer heeft acht Tesla V100’s en heeft een prijskaartje van ongeveer $100.000.
“We hebben er een in het lab en in ons testgeval namen we een workload die perfect is voor V100, een met meer dan 100 miljoen parameters in grote volledig verbonden netwerken die in GPU-geheugen passen”, zei Shrivastava. “We trainden het met het beste (software) pakket dat er is, Google’s TensorFlow, en het duurde 3,5 uur om te trainen.
“We toonden vervolgens aan dat onze nieuwe algoritme de training in één uur kan doen, niet op GPUs maar op een 44-core Xeon-klasse CPU”, vervolgde hij.
Hashen is een type data-indexeer methode die in de jaren 90 is uitgevonden voor internetzoekopdrachten. Numerieke methoden worden gebruikt om grote hoeveelheden informatie te coderen als een reeks cijfers, die een hash wordt genoemd. Hashes worden opgesomd om tabellen te creëren die snel kunnen worden doorzocht.
“Het zou geen zin hebben om onze algoritme te implementeren op TensorFlow of PyTorch, omdat het eerste wat ze willen doen is alles omzetten in een matrixvermenigvuldigingsprobleem”, zei Chen. “Dat is precies waar we vanaf wilden. Dus we schreven onze eigen C++-code van scratch.”
Volgens Shrivastava is het grootste voordeel van SLIDE dat het gegevensparallel is.
“Met gegevensparallel bedoel ik dat als ik twee gegevensinstanties heb die ik wil trainen, laten we zeggen een is een afbeelding van een kat en de andere van een bus, ze waarschijnlijk verschillende neuronen activeren en SLIDE kan deze twee onafhankelijk updaten of trainen”, zei hij. “Dit is een veel betere benutting van parallelisme voor CPUs.”
“De andere kant, in vergelijking met GPU, is dat we een grote hoeveelheid geheugen nodig hebben”, zei hij. “Er is een cache-hiërarchie in het hoofdgeheugen en als je niet voorzichtig bent, kun je een probleem krijgen dat cache thrashing wordt genoemd, waarbij je veel cache-misses krijgt.”
SLIDE heeft de deur geopend voor nieuwe manieren om diepe leer te implementeren en Shrivastava gelooft dat het pas het begin is.
“We hebben nog maar het oppervlak geschampt”, zei hij. “Er is nog veel dat we kunnen doen om te optimaliseren. We hebben nog geen vectorisatie gebruikt, of ingebouwde versnellers in de CPU, zoals Intel Deep Learning Boost. Er zijn nog veel andere trucs die we kunnen gebruiken om dit nog sneller te maken.”












