science >> Wetenschap >  >> Elektronica

Onderzoekers melden doorbraak in gedistribueerd diep leren

Anshumali Shrivastava is een assistent-professor informatica aan de Rice University. Krediet:Jeff Fitlow/Rice University

Online shoppers rijgen meestal een paar woorden aan elkaar om te zoeken naar het product dat ze willen, maar in een wereld met miljoenen producten en shoppers, de taak om die niet-specifieke woorden aan het juiste product te koppelen, is een van de grootste uitdagingen bij het ophalen van informatie.

Met behulp van een verdeel-en-heers-benadering die gebruikmaakt van de kracht van gecomprimeerde waarneming, computerwetenschappers van Rice University en Amazon hebben aangetoond dat ze de hoeveelheid tijd en rekenkracht kunnen verminderen die nodig zijn om computers te trainen voor het zoeken naar producten en soortgelijke "extreme classificatieproblemen" zoals spraakvertaling en het beantwoorden van algemene vragen.

Het onderzoek wordt deze week gepresenteerd op de 2019 Conference on Neural Information Processing Systems (NeurIPS 2019) in Vancouver. De resultaten omvatten tests die in 2018 zijn uitgevoerd toen hoofdonderzoeker Anshumali Shrivastava en hoofdauteur Tharun Medini, beide van rijst, waren op bezoek bij Amazon Search in Palo Alto, Californië.

In tests op een Amazon-zoekdataset met ongeveer 70 miljoen zoekopdrachten en meer dan 49 miljoen producten, Shrivastava, Medini en collega's toonden hun benadering van het gebruik van "samengevoegde gemiddelde classificaties via hashing, " (MACH) vereist een fractie van de opleidingsmiddelen van sommige ultramoderne commerciële systemen.

"Onze trainingstijden zijn ongeveer 7-10 keer sneller, en onze geheugenvoetafdruk is 2-4 keer kleiner dan de beste basisprestaties van eerder gerapporteerde grootschalige, gedistribueerde deep-learningsystemen, " zei Shrivastava, een assistent-professor computerwetenschappen bij Rice.

Medini, een doctoraat student aan Rijst, zei dat het zoeken naar producten een uitdaging is, gedeeltelijk, vanwege het enorme aantal producten. "Er zijn ongeveer 1 miljoen Engelse woorden, bijvoorbeeld, maar er staan ​​al snel meer dan 100 miljoen producten online."

Beidi Chen en Tharun Medini, afgestudeerde informaticastudenten van Rice University, werken samen tijdens een groepsbijeenkomst. Krediet:Jeff Fitlow/Rice University

Er zijn ook miljoenen mensen die voor die producten winkelen, elk op hun eigen manier. Sommigen typen een vraag. Anderen gebruiken trefwoorden. En velen weten niet zeker waar ze naar op zoek zijn als ze beginnen. Maar omdat er elke dag miljoenen online zoekopdrachten worden uitgevoerd, technologiebedrijven zoals Amazon, Google en Microsoft hebben veel gegevens over succesvolle en niet-succesvolle zoekopdrachten. En het gebruik van deze gegevens voor een type machine learning dat deep learning wordt genoemd, is een van de meest effectieve manieren om gebruikers betere resultaten te geven.

Diepe leersystemen, of neurale netwerkmodellen, zijn enorme verzamelingen wiskundige vergelijkingen die een reeks getallen nodig hebben die invoervectoren worden genoemd, en transformeer ze in een andere reeks getallen die uitvoervectoren worden genoemd. De netwerken zijn samengesteld uit matrices met verschillende parameters, en state-of-the-art gedistribueerde deep learning-systemen bevatten miljarden parameters die zijn onderverdeeld in meerdere lagen. Tijdens de training, gegevens worden naar de eerste laag gevoerd, vectoren worden getransformeerd, en de uitgangen worden naar de volgende laag gevoerd, enzovoort.

"Extreme classificatieproblemen" zijn problemen met veel mogelijke uitkomsten, en daarom, veel parameters. Diepgaande leermodellen voor extreme classificatie zijn zo groot dat ze doorgaans moeten worden getraind op wat in feite een supercomputer is, een gekoppelde set grafische verwerkingseenheden (GPU) waar parameters worden gedistribueerd en parallel worden uitgevoerd, vaak meerdere dagen.

"Een neuraal netwerk dat zoekinvoer neemt en voorspelt op basis van 100 miljoen uitvoer, of producten, zal meestal eindigen met ongeveer 2, 000 parameters per product, "Zei Medini. "Dus je vermenigvuldigt die, en de laatste laag van het neurale netwerk is nu 200 miljard parameters. En ik heb niets geavanceerds gedaan. Ik heb het over een zeer, zeer doodeenvoudig neuraal netwerkmodel."

"Het zou ongeveer 500 gigabyte geheugen kosten om die 200 miljard parameters op te slaan, "Zei Medini. "Maar als je kijkt naar de huidige trainingsalgoritmen, er is een beroemde genaamd Adam die nog twee parameters nodig heeft voor elke parameter in het model, omdat het statistieken van die parameters nodig heeft om het trainingsproces te volgen. Dus, nu zitten we op 200 miljard maal drie, en ik heb 1,5 terabyte werkgeheugen nodig om het model op te slaan. Ik ben nog niet eens bij de trainingsgegevens gekomen. De beste GPU's die er zijn, hebben slechts 32 gigabyte geheugen, dus het trainen van een dergelijk model is onbetaalbaar vanwege de massale communicatie tussen GPU's."

MACH pakt het heel anders aan. Shrivastava beschrijft het met een gedachte-experiment waarbij de 100 miljoen producten willekeurig in drie klassen worden verdeeld, die de vorm aannemen van emmers. "Ik mix, laten we zeggen, iPhones met opladers en T-shirts allemaal in dezelfde emmer, " zei hij. "Het is een drastische reductie van 100 miljoen naar drie."

In het gedachte-experiment de 100 miljoen producten worden willekeurig gesorteerd in drie emmers in twee verschillende werelden, wat betekent dat producten in elke wereld in verschillende emmers terecht kunnen komen. Een classifier is getraind om zoekopdrachten toe te wijzen aan de buckets in plaats van aan de producten erin. wat betekent dat de classifier een zoekopdracht alleen hoeft toe te wijzen aan een van de drie productklassen.

"Nu voer ik een zoekopdracht naar de classifier in wereld één, en er staat emmer drie, en ik geef het door aan de classifier in wereld twee, en er staat emmer één, ' zei hij. 'Waar denkt deze persoon aan? De meest waarschijnlijke klasse is iets dat veel voorkomt tussen deze twee buckets. Als je kijkt naar het mogelijke snijpunt van de emmers, zijn er drie in wereld één keer drie in wereld twee, of negen mogelijkheden, "zei hij. "Dus ik heb mijn zoekruimte teruggebracht tot één over negen, en ik heb alleen de kosten betaald voor het creëren van zes klassen."

Een derde wereld toevoegen, en nog drie emmers, verhoogt het aantal mogelijke kruispunten met een factor drie. "Er zijn nu 27 mogelijkheden voor wat deze persoon denkt, " zei hij. "Dus ik heb mijn zoekruimte met één meer dan 27 verminderd, maar ik heb alleen de kosten voor negen lessen betaald. Ik betaal lineair kosten, en ik krijg een exponentiële verbetering."

In hun experimenten met de trainingsdatabase van Amazon, Shrivastava, Medini en collega's verdeelden de 49 miljoen producten willekeurig in 10, 000 lessen, of emmers, en herhaalde het proces 32 keer. Dat bracht het aantal parameters in het model terug van zo'n 100 miljard naar 6,4 miljard. En het trainen van het model kostte minder tijd en minder geheugen dan sommige van de best gerapporteerde trainingstijden op modellen met vergelijkbare parameters, inclusief het Sparsely-Gated Mixture-of-Experts (MoE)-model van Google, zei Medini.

Hij zei dat de belangrijkste eigenschap van MACH is dat er geen communicatie tussen parallelle processors nodig is. In het gedachte-experiment dat is wat wordt vertegenwoordigd door de afzonderlijke, onafhankelijke werelden.

"Ze hoeven niet eens met elkaar te praten, " zei Medini. "In principe, je zou elk van de 32 op één GPU kunnen trainen, dat is iets wat je nooit zou kunnen doen met een niet-onafhankelijke aanpak."

Shrivastava zei, "In het algemeen, training vereiste communicatie over parameters heen, wat betekent dat alle processors die parallel draaien informatie moeten delen. Ergens naar uitkijken, communicatie is een groot probleem bij gedistribueerd diep leren. Google heeft de ambitie uitgesproken om een ​​1 biljoen parameternetwerk te trainen, bijvoorbeeld. MACH, momenteel, kan niet worden toegepast op use-cases met een klein aantal klassen, maar voor extreme classificatie, het bereikt de heilige graal van nulcommunicatie."