AI-hardware en softwarestack
Welke uitspraak over dataparallellisme bij training met meerdere GPU's is juist?
- AElke GPU heeft een kopie van het hele model, rekent met een deel van de data en de gewichten worden bijgewerkt nadat de berekende gradiënten over alle GPU's zijn gemiddeld
- BDe lagen van het model worden verdeeld en elke GPU neemt andere lagen voor zijn rekening
- CSlechts één GPU rekent en de overige GPU's dienen als reserve
Antwoord en toelichting tonen
Antwoord: A. Elke GPU heeft een kopie van het hele model, rekent met een deel van de data en de gewichten worden bijgewerkt nadat de berekende gradiënten over alle GPU's zijn gemiddeld
Bij dataparallellisme hebben alle GPU's hetzelfde model, wordt de batch trainingsdata verdeeld en voert elke GPU voorwaartse en terugwaartse propagatie uit. Omdat de gradiënten per GPU verschillen, vindt communicatie plaats (all-reduce) waarbij de gradiënten van alle GPU's worden opgeteld en gemiddeld, zodat iedereen de gewichten met dezelfde gradiënt bijwerkt en de kopieën van het model gelijk blijven. Als het model in één GPU past, is het eenvoudig en effectief, maar bij meer GPU's wordt de communicatie zwaarder.