Wetenschap
Het team gebruikt een diepgaande analyse van parallelle berekeningen om machine learning op grote schaal te versnellen. Krediet:Onur Oymak / Alamy
Door de beproefde methoden te deconstrueren en te analyseren die worden gebruikt in massaal parallelle berekeningen, een door KAUST geleide samenwerking heeft een baanbrekend raamwerk ontwikkeld voor efficiënte parallelle berekeningen op schaal. Het raamwerk is met name relevant voor de soorten verwerking die nodig zijn voor optimalisatie in machine learning.
Door een optimalisatie- of gegevensverwerkingstaak te "paralleliseren" kan de taak worden verdeeld over vele rekenknooppunten. Ideaal, dit zou de tijd die nodig is voor de berekening delen door het aantal knooppunten dat voor de taak is gerekruteerd. Echter, met parallellisatie komt de noodzaak om steeds grotere hoeveelheden informatie tussen de knooppunten door te geven, waardoor de ideale mate van acceleratie in de praktijk nooit wordt bereikt.
"Bij gedistribueerde optimalisatie een veelvoorkomend probleem is het communicatieprobleem, " legt Konstantin Mishchenko van het Visual Computing Center uit. "Stel je voor dat je een computer hebt met vier cores, en u wilt uw parallel programma uitvoeren op een nieuwe computer met 16 cores. Van nature, je zou verwachten dat de nieuwe computer ongeveer vier keer sneller is. Maar, ook al heeft de nieuwe computer vier keer de totale rekenkracht, veel ervan wordt in beslag genomen door de kernen te synchroniseren bij elke modelupdate. Dit communicatieknelpunt vermindert het positieve effect van het vergroten van het aantal cores en wordt ernstig wanneer we het aantal cores opschalen naar honderden of duizenden."
Recent onderzoek door de groep van Peter Richtárik heeft dit probleem op twee manieren aangepakt:door de compressie van informatie die bij elke synchronisatie wordt doorgegeven te verbeteren en door het leeralgoritme te generaliseren, zodat het met elk compressieschema kan worden gebruikt.
"Het moeilijkste om te begrijpen was waarom bestaande ideeën altijd werken, "zegt Mishchenko. "Gewoonlijk, onderzoekers raden eerst welke truc moet worden gebruikt, en pas later beginnen we te begrijpen waarom het werkt. Dit is precies wat we deden:door eenvoudige tegenvoorbeelden te gebruiken, we hebben twee bekende trucs opnieuw geanalyseerd en kwamen tot het besef dat er een betere manier is om ze te gebruiken."
Die technieken, kwantisatie en willekeurige sparsificatie genoemd, zijn compressiemethoden die doorgaans geïsoleerd worden gebruikt. Door beide te combineren, en cruciaal, alleen het verschil tussen nieuwe informatie en de vorige update comprimeren, het team bewees wiskundig dat een efficiënter compressieschema mogelijk is met minder verlies van informatie.
"Het belangrijkste punt is dat deze nieuwe techniek, waarbij we het verschil tussen huidige en eerdere informatie comprimeren - en niet alleen de nieuwe informatie zelf - ervoor zorgt dat er minder informatie verloren gaat wanneer we een compressie uitvoeren, ", zegt Mishchenko. "En we hebben in experimenten bewezen en waargenomen dat schalen met onze methode dichter bij het ideaal ligt."
De andere bevinding generaliseert het leeralgoritme voor een reeks verschillende optimalisatietaken op een manier die het mogelijk maakt om het met elk compressieschema te gebruiken.
"Onze motivatie was om een algemene theorie te creëren die niet afhankelijk is van een specifiek compressieschema om de effecten van compressie op gedistribueerde training te begrijpen, ", zegt Samuel Horvath van het onderzoeksteam.
Het gebruik van deze theorie maakt het mogelijk om algoritmen voor gedistribueerde berekeningen te construeren zonder de problemen van onvolledige optimalisatie en afhankelijkheid van specifieke compressieschema's waarmee bestaande methoden worden geconfronteerd.
"Dit werk helpt ons de effecten van verschillende compressiemethoden beter te begrijpen en helpt ons bij het kiezen van het juiste compressieschema voor het gegeven probleem, ', zegt Horvath.
Wetenschap © https://nl.scienceaq.com