Teknik KILAVUZ
Tamamen Parçalanmış Veri Paralel
Tamamen Parçalanmış Veri Paralel (FSDP), bir modelin parametrelerini, degradelerini ve optimize edici durumlarını birçok GPU'ya bölerek her cihazın yalnızca bir dilim tutmasını sağlayan dağıtılmış bir eğitim tekniğidir.
Bu kılavuzu dinleyinAI tarafından anlatılan · ~2 min
Bu sayfada2 dakika okuma
Genel Bakış
Tüm modeli tek bir GPU'nun belleğine sığdıramayacak kadar büyük modellerin donanım üzerinde eğitilmesini mümkün kılar.
Derin Dalış
Geleneksel veri paralelliği, modelin tam bir kopyasını her GPU'da tutar; bu da belleğin boşa harcanmasına ve model boyutunun sınırlanmasına neden olur. Meta'nin PyTorch'u tarafından popüler hale getirilen ve Microsoft'nin ZeRO'sundan ilham alan FSDP, bunun yerine üç şeyi cihazlar arasında parçalara ayırır: parametreler, degradeler ve optimize edici durumlar. İleri geçiş sırasında, her GPU geçici olarak bir all-gather aracılığıyla hesapladığı katmanın tüm ağırlıklarını toplar, hesaplamayı çalıştırır ve ardından toplanan kopyayı hemen serbest bırakır. Geri geçiş de benzer şekilde çalışır ve bunu, degrade dilimleri kendi GPU'larına geri dağıtan bir saçılma azaltma takip eder. Her cihaz modelin yalnızca bir kısmını kalıcı olarak sakladığından, bellek kullanımı GPU sayısıyla kabaca doğrusal olarak düşer ve ekiplerin modelleri onlarca veya yüz milyarlarca parametreyle eğitmesine olanak tanır.
Gerçek Dünya Uygulaması
Tek tek tüm ağırlıkları taşıyamayan 8 GPU'da 70 milyar parametreli bir Llama modeline ince ayar yapılması.
Yüzlerce hızlandırıcı arasında (Adam'ın belleğine hakim olan) optimizasyon durumlarını bölerek büyük dil modellerini yapay zeka laboratuvarlarında önceden eğitmek.
Araştırmacılar, amiral gemisi 80 GB GPU'ları satın almadan bir üniversite kümesindeki görüntü transformatörlerini eğitmek için PyTorch'un FSDP sarmalayıcısını kullanıyor.
Multimodal modellerde belleği kabaca yarıya indirmek ve eğitim verimini hızlandırmak için FSDP'yi karma duyarlıklı bfloat16 ile birleştirmek.
Tamamen Parçalanmış Verilerin Geleceği Paralel
PyTorch'taki FSDP2'nin kullanılabilirliği ve parametre başına parçalamayı iyileştirmesiyle FSDP, açık büyük model eğitimi için varsayılan haline geliyor. Trilyon parametreli modeller için tensör ve ardışık düzen paralelliğiyle daha sıkı entegrasyon, karma hassasiyet ve FP8 için daha iyi destek ve parçalama sınırlarını sizin için seçen daha akıllı otomatik sarmalama bekleyebilirsiniz. NVLink ve InfiniBand gibi GPU ara bağlantıları hızlandıkça, parçalamanın iletişim maliyeti de azalmaya devam ediyor ve bu da onu daha büyük ölçeklerde pratik hale getiriyor.
Uygulamaya koymak
Neden önemli?
- Maliyet ve bütçe. Mimari kararlar yıllarca performansı ve işletme maliyetini etkiler.
- Daha net kararlar. Teknik eğitim, ekiplerin yalnızca en yenisini değil, doğru yığını seçmesine de yardımcı olur.
- Kalite kontrolü. Daha iyi mühendislik seçenekleri, üretimdeki güvenilirlik olaylarını azaltır.
Dikkat edin
- Bir kıyaslamayı optimize etmek daha geniş sistem zayıflıklarını gizleyebilir.
- Altyapı ve bakım maliyetleri genellikle hafife alınır.
- Sistemler karmaşıklaştıkça güvenlik ve gözlemlenebilirlik boşlukları büyüyebilir.
Sonraki adımlar
- Uygulamadan önce gecikmeyi, kaliteyi ve maliyet hedeflerini tanımlayın.
- Gerçekçi yük ve veri koşulları altında kıyaslama yapın.
- Hatalar, sapmalar ve kullanıcı etkisi için cihaz izleme.
- Ölçeklendirmeden önce geri alma ve olay müdahale yollarını hazırlayın.
Keşfetmeye Devam Edin
Ücretsiz bülten
Günlük AI brifingini alın
Hafta içi her sabah sade İngilizce yazılmış, doğrulanmış üç yapay zeka hikayesi. Sonsuza kadar ücretsiz, reklam yok.
Hafta içi her gün bir e-posta. Tek tıklamayla aboneliğinizi iptal edin. Adresinizi asla satmayız veya paylaşmayız.
Kendinizi test edin
Take the Fully Sharded Data Parallel quiz
Her yanıtla ilgili anında geri bildirim ve bir kursu geçtiğinizde doğrulanabilir bir kimliğe sahip paylaşılabilir bir sertifika.
Ücretsiz AI eğitimini destekleyin. AI Understanding, bir 501(c)(3) kâr amacı gütmeyen kuruluştur; hiçbir zaman reklam yoktur, ödeme duvarı yoktur. Bağış yap
Sık sorulan sorular
Tamamen Parçalanmış Veri Paralel Nedir?
Tamamen Parçalanmış Veri Paralel (FSDP), bir modelin parametrelerini, degradelerini ve optimize edici durumlarını birçok GPU'ya bölerek her cihazın yalnızca bir dilim tutmasını sağlayan dağıtılmış bir eğitim tekniğidir. Tüm modeli tek bir GPU'nun belleğine sığdıramayacak kadar büyük modellerin donanım üzerinde eğitilmesini mümkün kılar.
FSDP, GPU'lar arasında standart veri paralelliğinin OLMADIĞI neyi parçalıyor?
FSDP, modelin parametrelerini, degradelerini ve optimize edici durumlarını cihazlar arasında parçalara ayırırken standart veri paralelliği, tam modeli her GPU'da kopyalar.
FSDP, bir katmanın tam ağırlıklarını hesaplamadan hemen önce yeniden oluşturmak için hangi toplu işlemi kullanır?
Bir katman çalıştırılmadan önce FSDP, tüm parçaların tüm parametrelerini geçici olarak bir araya getirmek için bir tümünü toplama işlemi gerçekleştirir ve daha sonra bunları serbest bırakır.
FSDP neden bir katmanın hesaplanmasından hemen sonra toplanan tüm ağırlıkları serbest bırakıyor?
Yalnızca bir parçayı kalıcı olarak tutmak ve tüm ağırlıkları geçici olarak toplamak, bellek kullanımını düşük ve kabaca modelin bir kısmıyla orantılı tutan şeydir.
FSDP büyük ölçüde daha önceki hangi bellek optimizasyon yaklaşımından ilham almıştır?
FSDP'nin parametreleri, degradeleri ve optimize edici durumlarını parçalaması, DeepSpeed kitaplığından Microsoft'nin Sıfır'ında sunulan fikirleri yakından takip ediyor.
FSDP, ağ gecikmesinin çoğunu ağırlık toplamaktan nasıl gizler?
FSDP, geçerli katman hala hesaplama yaparken sonraki katmanın parametrelerini önceden getirir ve tüm toplama iletişimini faydalı çalışmayla örtüştürür.
Öğrenmeye devam et
İlgili kılavuzlar
Bu konu için daha fazla rehber seçildi