InayofuataMwongozo unaofuata
Kutoweka na Kulipuka Gradients
Kiufundi
MWONGOZO wa Kiufundi
Mkusanyiko wa gradient hukuwezesha kuiga ukubwa wa kundi kwenye kumbukumbu ndogo ya GPU kwa kujumlisha mikunjo juu ya bechi ndogo kadhaa kabla ya kusasisha uzani.
Sikiliza mwongozo huuInaonyeshwa na AI · ~2 min
Ni njia ya kawaida ya kufundisha mifano mikubwa wakati kumbukumbu ndio kizuizi.
Kwa kawaida hatua ya mafunzo huchakata kundi moja, kukokotoa viwango vya juu, na kusasisha vigezo mara moja. Kwa mkusanyiko wa gradient, unaendesha pasi kadhaa za mbele na nyuma kwenye bechi ndogo ndogo, ukiongeza mikunjo yao pamoja kwenye bafa za kigezo, na uite tu hatua ya kiboreshaji (na sifuri vikondari) baada ya bati ndogo za N. Ukubwa bora wa bechi huwa ukubwa wa bechi ndogo mara N, ingawa kumbukumbu ya kilele huwa na bechi moja ndogo ya kuwezesha. Hili ni muhimu kwa sababu mapishi mengi ya mafunzo huchukua makundi makubwa kwa takwimu thabiti, na kwa sababu miundo kama vile transfoma kubwa haiwezi kutoshea bechi inayolengwa kwenye kifaa kimoja. Kukamata: takwimu za urekebishaji wa bechi hukokotwa kwa kila bechi ndogo, kwa hivyo kawaida ya safu au kaida za kikundi zioanishe vyema na mkusanyiko, na lazima uongeze hasara ipasavyo ili kuweka kiwango bora cha ujifunzaji sawa.
Badilisha vizuri muundo mkubwa wa lugha kwenye GPU moja ya mtumiaji kwa kukusanya zaidi ya bechi ndogo 8 au 16 ili kufikia kundi linalofaa la mamia.
Kufundisha maono ya ubora wa juu au miundo ya sehemu ambapo hata kundi la 2 linalingana, lakini kichocheo kinahitaji kundi linalofaa la 32.
Mkufunzi wa Uso wa Kukumbatiana na Umeme wa PyTorch hufichua mpangilio wa gradient_accumulation_steps unaotumiwa mara kwa mara katika usanidi wa VRAM mdogo.
Kutoa matokeo ya bechi kubwa kwenye maunzi madogo kwa kulinganisha saizi ya bechi inayofaa kupitia mkusanyo.
Mkusanyiko wa gradient utasalia kuwa kiwiko chaguo-msingi kwani ukubwa wa modeli unapita nafasi ya kumbukumbu ya kifaa kimoja. Inazidi kuunganishwa na usahihi mseto, ukaguaji wa kuwezesha, kugawanyika kwa ZeRO, na ulinganifu wa bomba katika mifumo kama DeepSpeed na FSDP. Tarajia utendakazi mkali zaidi ambapo maktaba hurekebisha hatua kiotomatiki kwa bajeti ya kumbukumbu, na kuendelea kwa umuhimu wa kurekebisha miundo mikubwa kwenye maunzi ya kawaida, ikijumuisha GPU za watumiaji ambapo itafungua mafunzo ambayo yasingewezekana.
Jarida halali
Hadithi tatu za AI zilizothibitishwa kila asubuhi ya wiki, zimetengenezwa kwa Kiingereza rahisi. Bila malipo daima, hakuna matangazo.
Barua pepe moja kila siku ya wiki. Jiondoe kwa bonyeza moja. Hatutauza au kushiriki anwani yako.
Jijaribu mwenyewe
Maoni ya haraka juu ya kila jibu, na cheti kinachoweza kushirikishwa na kitambulisho kinachoweza kuthibitishwa baada ya kupita kozi.
Changia elimu ya AI bila malipo. AI Understanding ni 501(c)(3) isiyo na faida — hakuna matangazo, hakuna kizuizi cha malipo, daima. Toa mchango
Mkusanyiko wa gradient hukuwezesha kuiga ukubwa wa kundi kwenye kumbukumbu ndogo ya GPU kwa kujumlisha mikunjo juu ya bechi ndogo kadhaa kabla ya kusasisha uzani. Ni njia ya kawaida ya kufundisha mifano mikubwa wakati kumbukumbu ndio kizuizi.
Kwa kujumlisha mikunjo juu ya bachi ndogo ndogo kabla ya kusasisha, unaiga kundi kubwa bila kushikilia yote kwenye kumbukumbu mara moja.
Accumulate gradients across N micro-batches, call optimizer.step() once for the effective batch, then clear gradients before the next window; begin training with cleared buffers.
Bechi-kawaida hukokotoa takwimu kwa kila bechi ndogo, kwa hivyo kawaida ya safu au kikundi huepuka kutolingana na bechi ndogo ndogo.
Batch-dependent forward computations break exact equivalence.
Endelea kujifunza
Miongozo zaidi imechaguliwa kwa mada hii
InayofuataMwongozo unaofuata
Kutoweka na Kulipuka Gradients
Kiufundi