Paylanmış təlim, böyük verilənlər dəstlərini və böyük modelləri idarə etmək üçün model təlimini birdən çox maşın və ya cihaz arasında yayır, mərkəzləşdirilmiş təlim isə hər şeyi vahid sistemdə saxlayır. Aralarındakı seçim miqyasdan, infrastrukturdan və mövcud olan xüsusi maşın öyrənmə iş yükündən asılıdır.
Seçilmişlər
Paylanmış təlim tək maşın yaddaş limitlərini aşan modellərə imkan verir, mərkəzləşdirilmiş təlim isə bir sistemin aparatı ilə məhdudlaşdırılır.
Mərkəzləşdirilmiş təlim daha sadə ayıklama və təkrar istehsal imkanı təklif edir, paylanmış qurğular isə orkestrləşdirmə vasitələri və sinxronizasiya məntiqi tələb edir.
Federasiya olunmuş və məxfiliyi qoruyan təlim yalnız paylanmış yanaşmalarla mümkündür, çünki məlumatlar hər bir işçi üçün lokal olaraq qalır.
Paylanmış təlim böyük iş yükü üçün divar saatı vaxtını kəskin şəkildə azaldır, lakin mərkəzləşdirilmiş təlimin qarşısını aldığı rabitə əlavəsini təqdim edir.
Paylanmış Təlim nədir?
Modelin inkişafını sürətləndirmək üçün təlim iş yükünü birdən çox prosessor, maşın və ya coğrafi məkan arasında bölüşdürən maşın öyrənmə yanaşması.
GPT-3 və PaLM kimi modellər tək GPU-ların yaddaş tutumunu aşdığı və yüzlərlə gigabayt VRAM tələb etdiyi üçün paylanmış təlim vacib hala gəldi.
Məlumat paralelliyi təlim qruplarını işçilər arasında bölür, model paralelliyi isə tək bir modelin təbəqələrini cihazlar arasında bölür.
PyTorch DDP, Horovod və DeepSpeed kimi çərçivələr, xüsusi infrastruktur qurmadan paylanmış təlimi əlçatan edir.
NCCL və MPI kimi rabitə kitabxanaları təlim zamanı işçilər arasında qradiyent sinxronizasiyasını idarə edir.
OpenAI, Google və Meta-dan olan böyük dil modelləri minlərlə GPU və ya TPU arasında paylanmış təlimə əsaslanır.
Mərkəzləşdirilmiş Təlim nədir?
Bütün təlim məlumatlarının və hesablamaların tək bir maşında və ya sıx bağlı klasterdə baş verdiyi ənənəvi maşın öyrənmə yanaşması.
Mərkəzləşdirilmiş təlim məlumatları, modeli və hesablamaları tək bir yerdə saxlayaraq bir serverdə və ya iş stansiyasında aparılır.
Əksər akademik tədqiqatlar və kiçik və orta biznes modelləri sadəliyinə görə hələ də mərkəzləşdirilmiş təlimdən istifadə edir.
80 GB VRAM-a malik NVIDIA A100 və H100 kimi qrafik prosessorlar on milyardlarla parametrə qədər modellərin mərkəzləşdirilmiş təliminə imkan verir.
Mərkəzləşdirilmiş quraşdırmalar, hər şey bir mühitdə baş verdiyindən, ayıklama, təkrar istehsal və versiya nəzarətini asanlaşdırır.
Scikit-learn, standart TensorFlow və Keras kimi çərçivələr əsasən mərkəzləşdirilmiş iş axınları nəzərə alınmaqla hazırlanmışdır.
Müqayisə Cədvəli
Xüsusiyyət
Paylanmış Təlim
Mərkəzləşdirilmiş Təlim
İnfrastruktur
Birdən çox maşın, GPU və ya qovşaq birlikdə işləyir
Tək maşın və ya sıx bağlı klaster
Ölçülənə bilənlik
Minlərlə cihaz və trilyon parametrli modellərə qədər miqyaslanır
Tək maşın aparat tutumu ilə məhdudlaşır
Məlumatların idarə olunması
Məlumatlar müxtəlif yerlərdə paylaşıla bilər və ya işçilər üçün yerli olaraq saxlanıla bilər
Bütün məlumatlar bir maşında yerləşməlidir və ya bir maşına daxil ola bilməlidir
Ünsiyyət xərcləri
NCCL, MPI və ya gRPC vasitəsilə qradiyent sinxronizasiyası tələb olunur
Düyünlərarası rabitəyə ehtiyac yoxdur
Xəta Dözümlülüyü
Yoxlama məntəqəsi ilə fərdi qovşaq nasazlıqlarından qurtula bilər
Əsas maşın qəzaya uğradıqda tək bir nasazlıq nöqtəsi
Quraşdırma Mürəkkəbliyi
Yüksək — Kubernetes və ya Ray kimi orkestrləşdirmə alətləri tələb edir
Aşağı — çərçivəni quraşdırın və skripti işə salın
Ən uyğun
Böyük dil modelləri, təməl modellər, kütləvi məlumat dəstləri
Kiçik və orta səviyyəli modellər, tədqiqat, prototipləşdirmə
Xərc Profili
Daha yüksək ilkin xərc, lakin miqyasda daha yaxşı qiymət-keyfiyyət
İlkin xərclər daha aşağıdır, lakin aparat yeniləmələri baha başa gəlir
Ətraflı Müqayisə
Ölçülənə bilənlik və Model Ölçüsü
Modellər tək bir sürətləndiricinin yaddaşını aşdıqda, paylanmış təlim yeganə praktik seçimdir. Yüz milyardlarla parametrə malik müasir təməl modellər, nə qədər VRAM-a sahib olmasından asılı olmayaraq, sadəcə bir GPU-ya sığa bilməz. Mərkəzləşdirilmiş təlim, xüsusən də 80 GB yaddaşa malik NVIDIA H100 qovşaqları kimi yüksək səviyyəli aparatlarda bir neçə milyard parametrə qədər modellər üçün gözəl işləyir. Bu tavanı aşmaq lazım olduqda, tensor paralelliyi və boru kəməri paralelliyi kimi paylanmış yanaşmalar könüllü deyil, zəruri hala gəlir.
Məlumatların Məxfiliyi və Yerləşmə
Mərkəzləşdirilmiş təlim bütün məlumatların bir yerdə olmasını nəzərdə tutur ki, bu da idarəetməni sadələşdirir, lakin həssas məlumatların toplanmalı olduğu zaman məxfilik riskləri yaradır. Paylanmış təlim məlumatların yerli cihazlarda və ya serverlərdə qaldığı və yalnız model yeniləmələrinin paylaşıldığı federativ təlimə qapı açır. Bu, HIPAA və GDPR kimi qaydaların məlumatların hərəkətini məhdudlaşdırdığı səhiyyə və maliyyə sahələrində olduqca vacibdir. Güzəşt ondadır ki, federativ yanaşmalar mərkəzləşdirilmiş təlimin tamamilə qarşısını aldığı statistik çətinliklər və kommunikasiya xərcləri yaradır.
İnfrastruktur və Əməliyyat Mürəkkəbliyi
Paylanmış təlimin aparılması klaster orkestrasiyası, şəbəkə bant genişliyi və sinxronizasiya protokolları ilə işləmək deməkdir. Ray, Kubernetes və SLURM kimi alətlər bu mürəkkəbliyi idarə etməyə kömək edir, lakin öyrənmə əyrisi dikdir. Mərkəzləşdirilmiş təlim, əksinə, tez-tez Python skriptini iş stansiyasında və ya icarəyə götürülmüş bulud nümunəsində işlətməyə bərabərdir. Xətaların aradan qaldırılması sadədir, çünki yoxlanılacaq yalnız bir mühit var və şəbəkə rabitəsi olmadıqda təkrar istehsal daha asandır.
Sürət və Ötürmə
Paylanmış təlim, bir çox cihaz arasında hesablamanı paralel şəkildə həyata keçirməklə divar saatı vaxtını əhəmiyyətli dərəcədə azalda bilər. İş yükünün yaxşı paralelləşməsini fərz etsək, bir maşında həftələrlə davam edəcək bir iş, 64 GPU-dan ibarət klasterdə saatlarla tamamlana bilər. Bununla belə, işçilər arasında rabitə xərcləri, xüsusən də daha yavaş qarşılıqlı əlaqələrdə bu qazancları yeyə bilər. Mərkəzləşdirilmiş təlim bu xərcləri tamamilə aradan qaldırır və paralelləşdirmə xərclərinin faktiki hesablama müddətini aşacağı kiçik modellər üçün daha sürətli edir.
Xərc və Resurs Səmərəliliyi
Paylanmış təlim, istər AWS, GCP və Azure kimi bulud provayderləri, istərsə də yerli GPU klasterləri vasitəsilə əhəmiyyətli infrastruktur investisiyaları tələb edir. Hər təcrübə üçün xərc yüksəkdir, lakin təlim tokeni və ya parametri üçün xərc tez-tez miqyasda azalır. Mərkəzləşdirilmiş təlim başlanğıcda daha ucuzdur və təcrübə üçün idealdır, lakin aparat təminatı tavanına çatmaq, əmtəə qovşaqları əlavə etmək əvəzinə, getdikcə daha bahalı maşınlar almaq deməkdir. Bir çox model təlimi keçirən təşkilatlar üçün paylanmış qurğular daha yaxşı miqyas iqtisadiyyatı təklif edir.
Xəta Dözümlülüyü və Etibarlılıq
Mərkəzləşdirilmiş təlim zamanı tək bir maşın sıradan çıxdıqda, bütün iş dayanır və son yoxlama məntəqəsindən yenidən başlamalıdır. Paylanmış sistemlər işi yenidən təyin etməklə fərdi qovşaqların sıradan çıxmasına dözə bilər, baxmayaraq ki, bu, diqqətli yoxlama məntəqəsi və işin bərpası məntiqini tələb edir. PyTorch DDP və TensorFlow-un MirroredStrategy kimi çərçivələr bunun bir hissəsini avtomatik olaraq idarə edir, lakin mühəndislər yenə də sıradan çıxmaq üçün dizayn hazırlamalıdırlar. Mərkəzləşdirilmiş təlimin sadəliyi həm də onun etibarlılıq üstünlüyüdür: daha az hərəkət edən hissə qırıla biləcək daha az şey deməkdir.
Üstünlüklər və Eksikliklər
Paylanmış Təlim
Üstünlüklər
+Nəhəng modellərə qədər miqyaslar
+Daha sürətli məşq vaxtları
+Federativ öyrənməni təmin edir
+Daha yaxşı xəta tolerantlığı
+Böyük məlumat dəstlərini idarə edir
Saxlayıcı
−Mürəkkəb quraşdırma
−Yüksək infrastruktur xərcləri
−Rabitə xərcləri
−Sazlama daha çətindir
Mərkəzləşdirilmiş Təlim
Üstünlüklər
+Quraşdırılması asandır
+Asan ayıklama
+Daha aşağı ilkin xərc
+Sinxronizasiya üçün əlavə xərc yoxdur
+Prototipləmə üçün əladır
Saxlayıcı
−Avadanlıqla məhdudlaşır
−Tək bir uğursuzluq nöqtəsi
−Zəif məlumat məxfiliyi
−Miqyasda daha yavaş
Yaygın yanlış anlaşılmalar
Əfsanə
Paylanmış təlim həmişə mərkəzləşdirilmiş təlimdən daha sürətlidir.
Həqiqət
Sürət artımı iş yükünün nə dərəcədə paralelləşməsindən və şəbəkə qarşılıqlı əlaqəsinin keyfiyyətindən asılıdır. Kiçik modellər üçün işçilər arasındakı rabitə paylanmış təlimi tək güclü maşında işləməkdən daha yavaş edə bilər.
Əfsanə
Böyük dil modelləri dövründə mərkəzləşdirilmiş təlim artıq köhnəlmişdir.
Həqiqət
Mərkəzləşdirilmiş təlim, bir neçə milyard parametr altında dəqiq tənzimləmə, tədqiqat və istehsal modelləri də daxil olmaqla, əksər ML işləri üçün standart olaraq qalır. Yerləşdirilmiş maşın öyrənmə sistemlərinin böyük əksəriyyəti hələ də mərkəzləşdirilmiş yanaşmalardan istifadə edir.
Əfsanə
Paylanmış təlim məlumatlarınızın avtomatik olaraq təhlükəsiz olması deməkdir.
Həqiqət
Standart paylanmış təlim hələ də paylaşılan infrastruktur haqqında məlumatları birləşdirir. Yalnız paylanmış təlimin xüsusi bir forması olan federasiya təlimi, model yeniləmələrini paylaşarkən xam məlumatları yerli cihazlarda saxlayır.
Əfsanə
Birdən çox GPU istifadə etmək üçün paylanmış təlimə ehtiyacınız var.
Həqiqət
Birdən çox GPU-ya malik tək bir maşın, qovşaqlar arasında əsl paylanmış təlim olmadan məlumat paralelliyindən istifadə edərək modelləri öyrədə bilər. Paylanmış təlim, xüsusilə şəbəkə ilə birləşdirilmiş ayrı-ayrı maşınlar arasında koordinasiyanı ifadə edir.
Əfsanə
Daha çox maşın həmişə daha yaxşı model keyfiyyəti deməkdir.
Həqiqət
Modelin keyfiyyəti yalnız miqyasın hesablanmasından deyil, məlumatlardan, arxitekturadan və təlim metodologiyasından asılıdır. Təlimin daha çox maşın arasında paylanması konvergensiyanı sürətləndirir, lakin son modelin dəqiqliyini mahiyyət etibarilə artırmır.
Tez-tez verilən suallar
Paylanmış və mərkəzləşdirilmiş təlim arasındakı əsas fərq nədir?
Mərkəzləşdirilmiş təlim hər şeyi bir maşında idarə edir, paylanmış təlim isə iş yükünü birdən çox maşın və ya cihaz arasında bölüşdürür. Bölünmə məlumatların bölünməsini (məlumat paralelliyi), modelin özünü (model paralelliyi) və ya hər ikisini əhatə edə bilər. Modellər və ya məlumat dəstləri tək bir sistemin idarə edə biləcəyindən artıq olduqda paylanmış təlim zəruridir.
Paylanmış təlimdən nə vaxt istifadə etməliyəm?
Paylanmış təlim, modeliniz tək bir GPU-ya sığmayacaq qədər böyük olduqda, məlumat dəstiniz bir maşında səmərəli şəkildə emal etmək üçün çox böyük olduqda və ya tək bir sistemin təmin edə biləcəyindən daha sürətli təlim müddətinə ehtiyac duyduğunuz zaman mənalı olur. Bu, həmçinin məlumatların yerli cihazları tərk edə bilmədiyi federasiya olunmuş təlim ssenariləri üçün də düzgün seçimdir.
Mərkəzləşdirilmiş təlim paylanmış təlimdən daha ucuzdurmu?
Bəli, əvvəlcədən. Mərkəzləşdirilmiş təlim yalnız bir maşın tələb edir, paylanmış qurğular isə birdən çox qovşaq, yüksək sürətli şəbəkə və orkestrləşdirmə proqram təminatı tələb edir. Bununla belə, miqyasda paylanmış təlim tez-tez təlim saatı başına daha yaxşı xərc təmin edir, çünki daha böyük tək maşınlar almaq əvəzinə əmtəə qovşaqları əlavə edə bilərsiniz.
Paylanmış təlimi hansı çərçivələr dəstəkləyir?
PyTorch DistributedDataParallel (DDP) və FullyShardedDataParallel (FSDP) təklif edir, TensorFlow tf.distribute.Strategy təmin edir və Horovod hər ikisində işləyir. Microsoft-dan DeepSpeed və NVIDIA-dan Megatron-LM çox böyük modellər üçün məşhurdur. Ray və Hugging Face Accelerate bir çox ümumi iş axınları üçün paylanmış təlimi sadələşdirir.
Birdən çox GPU ilə tək bir maşında paylanmış təlim edə bilərəmmi?
Bəli, buna tək düyünlü çox GPU təlimi deyilir və texniki cəhətdən paylanmış təlimin bir formasıdır. PyTorch DDP və TensorFlow-un MirroredStrategy proqramları bu işi yaxşı həll edir və GPU-lar arasında sürətli NVLink və ya PCIe əlaqələri istifadə edir. Əsl çox düyünlü paylanmış təlim ayrı-ayrı maşınlar arasında şəbəkə rabitəsi əlavə edir.
Federativ təlim nədir və onun paylanmış təlimlə necə əlaqəsi var?
Federativ təlim, məlumatların yerli cihazlarda (məsələn, telefonlar və ya xəstəxanalar) qaldığı və yalnız model yeniləmələrinin mərkəzi koordinatora göndərildiyi paylanmış təlimin ixtisaslaşmış bir formasıdır. Bu, müxtəlif məlumat mənbələri üzrə təlimdən faydalanarkən məxfiliyi qoruyur. Səhiyyə, maliyyə və mobil tətbiqlərdə geniş istifadə olunur.
Paylanmış təlim uğursuzluqları necə həll edir?
Güclü paylanmış təlim sistemləri model vəziyyətini vaxtaşırı olaraq saxlamaq üçün yoxlama məntəqəsindən istifadə edir, beləliklə, nasaz bir qovşaq və ya maşın bütün irəliləyişi itirmədən dəyişdirilə bilər. Ray və Elastic Horovod kimi çərçivələr işi avtomatik olaraq sağlam qovşaqlara yenidən planlaşdıra bilər. Mərkəzləşdirilmiş təlimdə belə bir mexanizm yoxdur, buna görə də qəza son yoxlama məntəqəsindən yenidən başlama deməkdir.
Paylanmış təlimdə ünsiyyət maneələri hansılardır?
Ən böyük maneə adətən qradiyent sinxronizasiyasıdır, burada işçilər hər təlim mərhələsindən sonra yeniləmələr mübadiləsi aparırlar. Yavaş şəbəkələr, yüksək gecikmə və böyük model ölçüləri bu xərcləri artırır. Həllərə qradiyent sıxılması, rabitə ilə üst-üstə düşən hesablamalar və InfiniBand və ya NVLink kimi yüksək sürətli qarşılıqlı əlaqələrdən istifadə daxildir.
Böyük dil modelləri mərkəzləşdirilmiş və ya paylanmış təlimdən istifadə edirmi?
GPT-4, PaLM və Llama kimi bütün müasir böyük dil modelləri minlərlə GPU və ya TPU-da paylanmış təlimdən istifadə edir. Yüz milyardlarla parametrə malik modellər tək bir maşının yaddaşına sığmır, bu da paylanmış yanaşmaları məcburi edir. Hətta daha kiçik açıq mənbəli modellər də təlim zamanı tez-tez çoxlu GPU quraşdırmalarından istifadə edirlər.
Paylanmış təlimin qurulması nə qədər vaxt aparır?
Bir maşında sadə bir çox GPU quraşdırması üçün PyTorch DDP və ya Hugging Face Accelerate istifadə edərək bir saat ərzində işləyə bilərsiniz. Kubernetes və ya SLURM ilə çoxqovşaqlı klasterlərin düzgün konfiqurasiyası, xüsusən də şəbəkə, yaddaş və monitorinqi nəzərə aldıqda, adətən günlərlə həftə çəkir. Bulud provayderləri bu quraşdırma müddətini əhəmiyyətli dərəcədə azaldan idarə olunan həllər təklif edirlər.
Hökm
Böyük modellər, kütləvi məlumat dəstləri və ya mərkəzləşdirilmiş qurğuların öhdəsindən gələ bilmədiyi ciddi məlumat lokalizasiyası tələbləri ilə işləyərkən paylanmış təlimi seçin. Mövcud avadanlıqlara rahatlıqla uyğunlaşan tədqiqat, prototipləmə və istehsal modelləri üçün mərkəzləşdirilmiş təlimə sadiq qalın, çünki sadəlik və aşağı əməliyyat xərcləri xam miqyasdan daha vacibdir.