Műszaki ÚTMUTATÓ

Vegyes precíziós képzés

A vegyes precíziós képzés felgyorsítja a neurális hálózatok képzését és csökkenti a memóriahasználatot azáltal, hogy a legtöbb matematikai műveletet 16 bites lebegőpontos módszerrel végzi a 32 bites helyett.

Áttekintés

A vegyes precíziós képzés felgyorsítja a neurális hálózatok képzését és csökkenti a memóriahasználatot azáltal, hogy a legtöbb matematikai műveletet 16 bites lebegőpontos módszerrel végzi a 32 bites helyett. Lehetővé teszi, hogy ugyanaz a GPU gyorsabban oktasson nagyobb modelleket, szinte a pontosság vesztesége nélkül.

A Mixed Precision Training egy olyan műszaki építőelem, amely befolyásolja a modell minőségét, az infrastruktúra költségeit, a késleltetést és a méretarányos megbízhatóságot.

Mély merülés

A hagyományos edzés 32 bites lebegőpontos (FP32) formátumban tárolja a súlyokat és futtatja a matematikát. A vegyes precizitás alacsonyabb pontosságú 16 bites formátumokat (FP16 vagy bfloat16) használ a nehéz mátrixszorzásokhoz, miközben megtartja a súlyok 32 bites „főmásolatát” a stabil frissítésekhez. Mivel a 16 bites számok feleakkoraak, jobban elférnek a GPU memóriájában, és a Tensor Cores nagyjából 2-8-szor gyorsabban dolgozzák fel őket. A fogás az FP16 szűk tartományában rejlik: az apró gradiensek a nullára csökkenhetnek. A szabványos javítás a veszteségskálázás, amely a visszaszaporítás előtt megszorozza a veszteséget egy nagy tényezővel, így a kis színátmenetek ábrázolhatóak maradnak, majd a súlyfrissítés előtt visszaosztja azt. Az NVIDIA Apex és a PyTorch és TensorFlow beépített AMP (Automatic Mixed Precision) automatizálja ezt.

Technikai betekintés

Az FP16-nak csak 5 kitevő bitje van, ami egy kis dinamikatartományt biztosít, ami gradiens alulcsordulást okoz. A Bfloat16 8 kitevő bitet tart meg (az FP32 tartományának megfelelő), de kevesebb mantissza bitet, így ritkán van szüksége veszteségskálázásra – ez a fő ok, amiért a Google TPU-k és a modern GPU-k ezt részesítik előnyben. A tenzormagok felgyorsítják a munkát azáltal, hogy megszorozzák a 16 bites operandusokat, de részösszegeket halmoznak fel az FP32-ben, megőrizve a pontosságot ott, ahol az összegzési hibák egyébként súlyosbodnának.

A vegyes precíziós képzés elsajátítása

A vegyes precíziós képzés felgyorsítja a neurális hálózatok képzését és csökkenti a memóriahasználatot azáltal, hogy a legtöbb matematikai műveletet 16 bites lebegőpontos módszerrel végzi a 32 bites helyett. Lehetővé teszi, hogy ugyanaz a GPU gyorsabban oktasson nagyobb modelleket, szinte a pontosság vesztesége nélkül. A Mixed Precision Training egy olyan műszaki építőelem, amely befolyásolja a modell minőségét, az infrastruktúra költségeit, a késleltetést és a méretarányos megbízhatóságot. A mély megértés érdekében a vegyes precíziós képzést működési modellként kell kezelni, nem egyetlen jellemzőként: határozza meg a kívánt eredményeket, tisztázza a feltételezéseket, és válassza szét azt, amit a rendszer megbízhatóan képes elvégezni, attól, ami még szakértői megítélést igényel.

A gyakorlatban a Mixed Precision Training rendszert használó erős csapatok optimalizálják az architektúrát, az adatokat és az infrastruktúrát a megbízhatóság és a költségek szempontjából. Dokumentálják az explicit sikerkritériumokat, tesztelik a valósághű adatokat és munkafolyamatokat, és a megfigyelt hibaminták alapján iterálnak, nem pedig egyszeri benchmark győzelmek alapján. Ez az a hely, ahol az elméleti megértés tartós képességgé válik a termék, a politika és a műveletek között.

Az építészeti döntések évekig növelik a teljesítményt és a működési költségeket. Ugyanakkor az egyik benchmark optimalizálása elrejtheti a rendszer általános gyengeségeit. A legrugalmasabb megközelítés a kísérleti sebesség és az irányítási fegyelem kombinálása: kísérleti kísérletek futtatása, bizonyítékok rögzítése, döntési naplók közzététele és a biztosítékok folyamatos frissítése a modell viselkedésének, a felhasználói elvárásoknak és a szabályozási követelményeknek megfelelően.

Stratégiai hatás

Az építészeti döntések évekig növelik a teljesítményt és a működési költségeket.

Az építészeti döntések évekig növelik a teljesítményt és a működési költségeket. A kiváló minőségű telepítéseknél ez mérhető működési szabályokká, tulajdonosi határokká és ismétlődő felülvizsgálati rituálékká alakul át, így a csapatok növelhetik a bizalmat a kétértelműség skálázása helyett.

A technikai oktatás segít a csapatoknak a megfelelő verem kiválasztásában, nem csak a legújabb készletben.

A technikai oktatás segít a csapatoknak a megfelelő verem kiválasztásában, nem csak a legújabb készletben. A kiváló minőségű telepítéseknél ez mérhető működési szabályokká, tulajdonosi határokká és ismétlődő felülvizsgálati rituálékká alakul át, így a csapatok növelhetik a bizalmat a kétértelműség skálázása helyett.

A jobb mérnöki döntések csökkentik a termelés megbízhatósági incidenseit.

A jobb mérnöki döntések csökkentik a termelés megbízhatósági incidenseit. A kiváló minőségű telepítéseknél ez mérhető működési szabályokká, tulajdonosi határokká és ismétlődő felülvizsgálati rituálékká alakul át, így a csapatok növelhetik a bizalmat a kétértelműség skálázása helyett.

A vegyes precíziós képzés jövője

A pontosság folyamatosan csökken. Az NVIDIA Hopper és Blackwell GPU-kon támogatott FP8-képzés a határmodellek szabványossá válik, és az FP4 és a mikroskálázási formátumok (MXFP) kutatása tovább halad. Várható, hogy a keretrendszerek automatikusan kiválasztják a rétegenkénti pontosságot, a hardver az egyre szűkebb formátumokat natív módon kezeli, a kvantálás-tudatos képzés pedig elmossák a határvonalat az alacsony pontosságú képzés és a következtetés között, csökkentve a trillió paraméteres modellek betanításának költségeit.

Valós megvalósítás

A PyTorch torch.cuda.amp.autocastja egy képzési ciklust foglal magában, hogy nagyjából a felére csökkentse a memóriát és megduplázza az átviteli sebességet egyetlen GPU-n

Nagy nyelvi modellek, például GPT-stílusú transzformátorok betanítása a bfloat16-ban a TPU-kon a veszteségskálázó hangolás elkerülése érdekében

Nagyobb kötegméret illesztése fogyasztói RTX GPU-hoz a ResNet képképzés FP32-ről FP16-ra való átállításával

FP8 vegyes precizitás az NVIDIA H100 GPU-kon, hogy csökkentse a határmodellek előképzésének költségeit

Megvalósítási minták

Vegyes precíziós képzés a gyakorlatban

A PyTorch torch.cuda.amp.autocastja, amely egy képzési ciklust foglal magában, hogy nagyjából felére csökkentse a memóriát és megduplázza az átviteli sebességet egyetlen GPU-n.

A PyTorch torch.cuda.amp.autocastja, amely egy képzési hurkot tömörít, hogy nagyjából felére csökkentse a memóriát és megkétszerezze az átviteli sebességet egyetlen GPU-n. A csapatok általában jobb eredményeket érnek el, ha előre meghatározzák a minőségi küszöböket, megtartják az emberi eszkalációs útvonalat a szélsőséges eseteknél, és nyomon követik a termelékenység növekedését és a hibaköltségeket az idő múlásával.

Vegyes precíziós képzés a gyakorlatban

Nagy nyelvi modellek, például GPT-stílusú transzformátorok betanítása a bfloat16-ban a TPU-kon a veszteségskálázó hangolás elkerülése érdekében.

Nagy nyelvi modellek, például GPT-stílusú transzformátorok betanítása a bfloat16-ban a TPU-kon a veszteségskálázó hangolás elkerülése érdekében A csapatok általában jobb eredményeket érnek el, ha előre meghatározzák a minőségi küszöbértékeket, emberi eszkalációs útvonalat tartanak az éles esetekben, és nyomon követik mind a termelékenységnövekedést, mind a hibaköltségeket az idő múlásával.

Vegyes precíziós képzés a gyakorlatban

Nagyobb kötegméret illesztése fogyasztói RTX GPU-hoz a ResNet képképzés FP32-ről FP16-ra való átállításával.

Nagyobb kötegméret illesztése fogyasztói RTX GPU-ra a ResNet képképzés FP32-ről FP16-ra való átállításával A csapatok általában jobb eredményeket érnek el, ha előre meghatározzák a minőségi küszöbértékeket, megtartják az emberi eszkalációs útvonalat a szélsőséges eseteknél, és nyomon követik a termelékenység növekedését és a hibaköltségeket az idő múlásával.

Vegyes precíziós képzés a gyakorlatban

Az FP8 vegyes precizitást biztosít az NVIDIA H100 GPU-kon, hogy csökkentse a határmodellek előképzésének költségeit.

Az FP8 vegyes precizitása az NVIDIA H100 GPU-kon a határmenti modellek előképzésének költségeinek csökkentése érdekében A csapatok általában jobb eredményeket érnek el, ha előre meghatározzák a minőségi küszöböket, megtartják az emberi eszkalációs útvonalat az éles eseteknél, és nyomon követik a termelékenység növekedését és a hibaköltségeket az idő múlásával.

Kockázatok és védőkorlátok

!

Egy benchmark optimalizálása elrejtheti a rendszer általános hiányosságait.

!

Az infrastrukturális és karbantartási költségeket gyakran alábecsülik.

!

A biztonsági és megfigyelhetőségi hiányosságok a rendszerek bonyolultabbá válásával nőhetnek.

Végrehajtási ütemterv

1

A megvalósítás előtt határozza meg a késleltetési, minőségi és költségcélokat.

A megvalósítás előtt határozza meg a késleltetési, minőségi és költségcélokat. Minden lépést bizonyítékkapuként kell kezelni: ha a feltételek nem teljesülnek, szüneteltesse a közzétételt, zárja be a rést, és csak ezután bővítse a felhasználást.

2

Benchmark reális terhelési és adatviszonyok mellett.

Benchmark reális terhelési és adatviszonyok mellett. Minden lépést bizonyítékkapuként kell kezelni: ha a feltételek nem teljesülnek, szüneteltesse a közzétételt, zárja be a rést, és csak ezután bővítse a felhasználást.

3

Műszerfigyelés a hibák, az eltolódás és a felhasználói hatások szempontjából.

Műszerfigyelés a hibák, az eltolódás és a felhasználói hatások szempontjából. Minden lépést bizonyítékkapuként kell kezelni: ha a feltételek nem teljesülnek, szüneteltesse a közzétételt, zárja be a rést, és csak ezután bővítse a felhasználást.

4

A méretezés előtt készítse elő a visszagörgetési és az incidensre adott válaszútvonalakat.

A méretezés előtt készítse elő a visszagörgetési és az incidensre adott válaszútvonalakat. Minden lépést bizonyítékkapuként kell kezelni: ha a feltételek nem teljesülnek, szüneteltesse a közzétételt, zárja be a rést, és csak ezután bővítse a felhasználást.

Folytassa a felfedezést