تعد الشبكات العصبية الكبيرة في صميم العديد من التطورات الحديثة في الذكاء الاصطناعي ، ولكن تدريبها يمثل تحديًا هندسيًا وبحثيًا صعبًا يتطلب تنظيم مجموعة من وحدات معالجة الرسومات لإجراء عملية حسابية متزامنة واحدة. مع نمو أحجام المجموعات والنماذج ، طور ممارسو التعلم الآلي مجموعة متزايدة من التقنيات لموازاة تدريب النموذج على العديد من وحدات معالجة الرسومات. للوهلة الأولى ، قد يبدو فهم تقنيات التوازي هذه أمرًا شاقًا ، ولكن مع وجود عدد قليل من الافتراضات حول بنية الحساب ، تصبح هذه التقنيات أكثر وضوحًا - في هذه المرحلة ، فأنت تتنقل فقط حول البتات غير الشفافة من A إلى B مثل الشبكة تبديل المكوكات حول الحزم.
لا توازي
تدريب الشبكة العصبية هو عملية تكرارية. في كل تكرار، نقوم بالتمرير للأمام عبر النموذج طبقات لحساب مخرجات كل مثال تدريبي في دفعة بيانات. ثم تستمر تمريرة أخرى الى الوراء من خلال الطبقات ، مع نشر مدى تأثير كل معلمة على الناتج النهائي عن طريق حساب أ ميل فيما يتعلق بكل معلمة. يتم تمرير متوسط التدرج اللوني للدفعة والمعلمات وبعض حالات التحسين لكل معلمة إلى خوارزمية التحسين ، مثل ادم، الذي يحسب معلمات التكرار التالي (والتي يجب أن يكون لها أداء أفضل قليلاً على بياناتك) وحالة التحسين الجديدة لكل معلمة. ومع تكرار التدريب على دفعات من البيانات، يتطور النموذج لإنتاج مخرجات دقيقة بشكل متزايد.
تقسم تقنيات التوازي المختلفة هذه العملية التدريبية عبر أبعاد مختلفة ، بما في ذلك:
- توازي البيانات - قم بتشغيل مجموعات فرعية مختلفة من الدُفعة على وحدات معالجة رسومات مختلفة ؛
- موازاة خطوط الأنابيب - تشغيل طبقات مختلفة من النموذج على وحدات معالجة رسومات مختلفة ؛
- موازاة الموتر - تفكيك الرياضيات لعملية واحدة مثل مضاعفة المصفوفة لتقسيمها عبر وحدات معالجة الرسومات ؛
- مزيج الخبراء - معالجة كل مثال بجزء بسيط من كل طبقة.
(في هذا المنشور، سنفترض أنك تستخدم وحدات معالجة الرسومات لتدريب شبكاتك العصبية، ولكن نفس الأفكار تنطبق على أولئك الذين يستخدمون أي وحدات أخرى مسرع الشبكة العصبية.)
توازي البيانات
موازاة البيانات التدريب يعني نسخ نفس المعلمات إلى وحدات معالجة رسومات متعددة (غالبًا ما تسمى "العمال") وتعيين أمثلة مختلفة لكل منها لتتم معالجتها في وقت واحد. لا يزال توازي البيانات وحده يتطلب أن يتناسب النموذج الخاص بك مع ذاكرة وحدة معالجة رسومات واحدة، ولكنه يتيح لك الاستفادة من حساب العديد من وحدات معالجة الرسومات على حساب تخزين العديد من النسخ المكررة من معلماتك. ومع ذلك، هناك إستراتيجيات لزيادة ذاكرة الوصول العشوائي الفعالة المتوفرة لوحدة معالجة الرسومات لديك، مثل إلغاء تحميل المعلمات مؤقتًا على ذاكرة وحدة المعالجة المركزية بين الاستخدامات.
نظرًا لأن كل عامل موازٍ للبيانات يقوم بتحديث نسخته من المعلمات ، فإنه يحتاج إلى التنسيق لضمان استمرار حصول كل عامل على معلمات متشابهة. أبسط نهج هو إدخال حظر الاتصال بين العمال: (1) حساب التدرج على كل عامل بشكل مستقل ؛ (2) متوسط التدرجات عبر العمال؛ و (3) حساب نفس المعلمات الجديدة لكل عامل بشكل مستقل. الخطوة (2) هي متوسط الحظر الذي يتطلب نقل قدر كبير جدًا من البيانات (يتناسب مع عدد العمال أضعاف حجم المعلمات الخاصة بك) ، مما قد يضر بمعدلات تدريبك. هناك العديد مخططات التزامن غير المتزامن لإزالة هذا الحمل ، لكنها تضر بكفاءة التعلم ؛ في الممارسة العملية ، يلتزم الناس عمومًا بالنهج المتزامن.
موازية خطوط الأنابيب
بدافع موازاة خطوط الأنابيب التدريب ، نقوم بتقسيم أجزاء متتالية من النموذج عبر وحدات معالجة الرسومات. تحتوي كل وحدة معالجة رسومات على جزء صغير فقط من المعلمات ، وبالتالي يستهلك نفس النموذج ذاكرة أقل نسبيًا لكل وحدة معالجة رسومات.
من السهل تقسيم نموذج كبير إلى أجزاء متتالية من الطبقات. ومع ذلك ، هناك تبعية متسلسلة بين مدخلات ومخرجات الطبقات ، لذلك يمكن أن يؤدي التنفيذ الساذج إلى قدر كبير من وقت الخمول أثناء انتظار العامل لمخرجات من الجهاز السابق لاستخدامها كمدخلات. تُعرف أجزاء وقت الانتظار هذه باسم "الفقاعات" ، مما يؤدي إلى إضاعة العمليات الحسابية التي يمكن أن تقوم بها الآلات العاطلة.
يمكننا إعادة استخدام الأفكار من توازي البيانات لتقليل تكلفة الفقاعة من خلال جعل كل عامل يعالج مجموعة فرعية من عناصر البيانات فقط في وقت واحد ، مما يسمح لنا بالتداخل بذكاء مع الحساب الجديد مع وقت الانتظار. الفكرة الأساسية هي تقسيم دفعة واحدة إلى عدة رقع دقيقة ؛ يجب أن يكون كل ميكروباتش أسرع نسبيًا في المعالجة ويبدأ كل عامل في العمل على الميكروباتش التالي بمجرد توفره ، وبالتالي الإسراع في تنفيذ خط الأنابيب. مع وجود عدد كافٍ من الميكروبات ، يمكن استخدام العمال في معظم الأوقات بأقل فقاعة في بداية الخطوة ونهايتها. يتم حساب متوسط التدرجات عبر microbatches ، وتحدث تحديثات المعلمات بمجرد اكتمال كل microbatches.
يُعرف عدد العمال الذين تم تقسيم النموذج عليهم عمق خط الأنابيب.
أثناء المرور الأمامي ، يحتاج العمال فقط إلى إرسال ناتج (يسمى التنشيطات) لجزء من طبقاته إلى العامل التالي ؛ أثناء المرور العكسي ، يرسل فقط التدرجات الخاصة بتلك التنشيطات إلى العامل السابق. هناك مساحة تصميم كبيرة لكيفية جدولة هذه التمريرات وكيفية تجميع التدرجات عبر microbatches. GPipe كل عملية عاملة للأمام وللخلف تمر على التوالي ، ثم تقوم بتجميع التدرجات من مجموعات ميكروبات متعددة بشكل متزامن في النهاية. حلم صعب بدلاً من ذلك ، يقوم بجدولة كل عامل لمعالجة التمريرات إلى الأمام والخلف بدلاً من ذلك.
موازية الموتر
يعمل توازي خطوط الأنابيب على تقسيم النموذج "عموديًا" حسب الطبقة. من الممكن أيضًا تقسيم عمليات معينة "أفقيًا" داخل الطبقة، وهو ما يسمى عادةً موتر بالتوازي تمرين. للعديد من الموديلات الحديثة (مثل محول) ، فإن عنق الزجاجة الحسابي هو ضرب مصفوفة دفعة التنشيط بمصفوفة وزن كبيرة. مصفوفة الضرب يمكن اعتبارها منتجات نقطية بين أزواج من الصفوف والأعمدة؛ من الممكن حساب منتجات نقطية مستقلة على وحدات معالجة رسومات مختلفة، أو حساب أجزاء من كل منتج نقطي على وحدات معالجة رسومات مختلفة وتلخيص النتائج. باستخدام أي من الاستراتيجيتين، يمكننا تقسيم مصفوفة الوزن إلى "أجزاء" متساوية الحجم، واستضافة كل جزء على وحدة معالجة رسومات مختلفة، واستخدام هذا الجزء لحساب الجزء ذي الصلة من منتج المصفوفة الإجمالي قبل الاتصال لاحقًا لدمج النتائج.
ومن الأمثلة على ذلك ميجاترون- إل إم، الذي يوازي مضاعفات المصفوفة داخل طبقات الانتباه الذاتي للمحول وطبقات MLP. PTD-P يستخدم الموتر والبيانات والتوازي مع خطوط الأنابيب ؛ يعيّن جدول خطوط الأنابيب الخاص به طبقات متعددة غير متتالية لكل جهاز ، مما يقلل من حمل الفقاعات على حساب المزيد من اتصالات الشبكة.
في بعض الأحيان يمكن موازاة المدخلات إلى الشبكة عبر بُعد بدرجة عالية من الحساب المتوازي بالنسبة للتواصل المتبادل. التوازي التسلسلي هي إحدى هذه الأفكار ، حيث يتم تقسيم تسلسل الإدخال عبر الوقت إلى أمثلة فرعية متعددة ، مما يقلل بشكل متناسب من استهلاك الذروة للذاكرة من خلال السماح للحساب بالمتابعة بأمثلة أكثر دقة.
خليط من الخبراء (MoE)
مع خليط من الخبراء (MoE) النهج ، يتم استخدام جزء صغير فقط من الشبكة لحساب الإخراج لأي إدخال واحد. يتمثل أحد الأمثلة على نهج في الحصول على العديد من مجموعات الأوزان ويمكن للشبكة اختيار المجموعة التي تريد استخدامها عبر آلية بوابة في وقت الاستدلال. يتيح ذلك العديد من المعلمات دون زيادة تكلفة الحساب. يشار إلى كل مجموعة من الأوزان على أنها "خبراء" ، على أمل أن تتعلم الشبكة تعيين مهارات حسابية متخصصة ومهارات لكل خبير. يمكن استضافة خبراء مختلفين على وحدات معالجة رسومات مختلفة ، مما يوفر طريقة واضحة لزيادة عدد وحدات معالجة الرسومات المستخدمة للنموذج.
جشارد يقيس محول MoE حتى 600 مليار معلمة مع مخطط حيث يتم تقسيم طبقات MoE فقط عبر أجهزة TPU متعددة ويتم تكرار الطبقات الأخرى بالكامل. محول التبديل يقيس حجم النموذج إلى تريليونات من المعلمات مع تباين أعلى عن طريق توجيه إدخال واحد إلى خبير واحد.
تصاميم أخرى لحفظ الذاكرة
هناك العديد من الاستراتيجيات الحسابية الأخرى لجعل تدريب الشبكات العصبية الكبيرة بشكل متزايد أكثر قابلية للتتبع. فمثلا:
-
لحساب التدرج اللوني ، تحتاج إلى حفظ عمليات التنشيط الأصلية ، والتي يمكن أن تستهلك الكثير من ذاكرة الوصول العشوائي للجهاز. نقاط التفتيش (المعروف أيضًا باسم إعادة حساب التنشيط) يخزن أي مجموعة فرعية من عمليات التنشيط ، ويعيد حساب المجموعات الوسيطة في الوقت المناسب أثناء التمرير الخلفي. هذا يوفر الكثير من الذاكرة بتكلفة حسابية لتمريرة واحدة إضافية كاملة إلى الأمام على الأكثر. يمكن للمرء أيضًا المفاضلة باستمرار بين تكلفة الحوسبة والذاكرة من خلال إعادة حساب التنشيط الانتقائي، وهو فحص مجموعات فرعية من عمليات التنشيط التي تكون تكلفة تخزينها أعلى نسبيًا ولكنها أرخص في الحساب.
-
تدريب مختلط الدقة هو تدريب النماذج باستخدام أرقام منخفضة الدقة (الأكثر شيوعًا FP16). يمكن أن تصل المسرعات الحديثة إلى أعداد FLOP أعلى بكثير بأرقام أقل دقة ، كما يمكنك توفير ذاكرة الوصول العشوائي للجهاز. مع الرعاية المناسبة ، لا يمكن أن يفقد النموذج الناتج أي دقة تقريبًا.
-
التفريغ هو إلغاء تحميل البيانات غير المستخدمة مؤقتًا إلى وحدة المعالجة المركزية أو بين الأجهزة المختلفة ثم قراءتها لاحقًا عند الحاجة. ستؤدي التطبيقات الساذجة إلى إبطاء التدريب كثيرًا ، ولكن التطبيقات المعقدة ستجلب البيانات مسبقًا حتى لا يحتاج الجهاز إلى انتظارها. تطبيق واحد لهذه الفكرة صفر الذي يقسم المعلمات والتدرجات وحالات المحسن عبر جميع الأجهزة المتاحة ويتحققها حسب الحاجة.
-
محسنات كفاءة الذاكرة تم اقتراحها لتقليل أثر الذاكرة لحالة التشغيل التي يحتفظ بها المُحسِّن، مثل ادافاكتور.
-
ضغط يمكن أيضًا استخدامها لتخزين النتائج الوسيطة في الشبكة. فمثلا، جوهر يضغط التنشيطات التي تم حفظها للممر الخلفي ؛ DALL · E يضغط التدرجات اللونية قبل مزامنتها.
في OpenAI ، نقوم بتدريب وتحسين النماذج الكبيرة بدءًا من البنية التحتية الأساسية وصولاً إلى نشرها لحل مشكلات العالم الحقيقي. إذا كنت ترغب في وضع الأفكار الواردة في هذا المنشور موضع التنفيذ - ذات الصلة بشكل خاص بفرق البحث التطبيقي والتوسع لدينا - فنحن تأجير!
- a
- من نحن
- المعجلات
- دقيق
- في
- إضافي
- السلف
- AI
- خوارزمية
- الكل
- السماح
- وسط
- كمية
- آخر
- تطبيقي
- التقديم
- نهج
- حول
- متاح
- المتوسط
- خط الأساس
- أصبح
- قبل
- البداية
- يجري
- ما بين
- بيانكا
- مليار
- فقاعة
- يهمني
- معين
- تحدى
- أرخص
- اختار
- التواصل
- Communication
- مجال الاتصالات
- حساب
- الحسابات
- إحصاء
- الحوسبة
- على التوالي
- تستهلك
- استهلاك
- باستمرار
- تواصل
- رابطة
- تقليد
- جوهر
- استطاع
- البيانات
- نشر
- تصميم
- المتقدمة
- جهاز
- الأجهزة
- مختلف
- صعبة
- بعد
- الأبعاد
- إلى أسفل
- أثناء
- الطُرق الفعّالة
- كفاءة
- فعال
- عناصر
- تمكن
- الهندسة
- خاصة
- مثال
- أمثلة
- خبير
- خبرائنا
- أسرع
- ردود الفعل
- الاسم الأول
- البصمة
- إلى الأمام
- تبدأ من
- بالإضافة إلى
- على العموم
- GitHub جيثب:
- لمحة
- وحدة معالجة الرسوميات:
- وحدات معالجة الرسومات
- يحدث
- أجهزة التبخير
- وجود
- مرتفع
- أعلى
- يحمل
- استضافت
- كيفية
- كيفية
- لكن
- HTTPS
- فكرة
- الأفكار
- صورة
- التنفيذ
- تحسين
- بما فيه
- القيمة الاسمية
- زيادة
- في ازدياد
- على نحو متزايد
- بشكل مستقل
- تشير
- البنية التحتية
- إدخال
- IT
- معروف
- كبير
- طبقة
- قيادة
- قيادة
- تعلم
- تعلم
- خطوط
- آلة
- آلة التعلم
- الآلات
- جعل
- الرياضيات
- مصفوفة
- يعني
- مكبر الصوت : يدعم، مع دعم ميكروفون مدمج لمنع الضوضاء
- مایکروسافت
- نموذج
- عارضات ازياء
- الأكثر من ذلك
- أكثر
- متعدد
- ضرب
- إحتياجات
- شبكة
- الشبكات
- عدد
- أرقام
- NVIDIA
- عملية
- عمليات
- التحسين
- أخرى
- الكلي
- جزء
- مجتمع
- أداء
- أداء
- البوينت
- ممكن
- ممارسة
- سابق
- مشاكل
- العائدات
- عملية المعالجة
- إنتاج
- منتج
- المنتجات
- المقترح
- توفير
- رامات
- RE
- الوصول
- الأخيرة
- تخفيض
- تقليص
- يشير
- ذات الصلة
- مثل
- يتطلب
- بحث
- مما أدى
- النتائج
- يجري
- تشغيل
- قال
- نفسه
- إنقاذ
- حجم
- التحجيم
- مخطط
- مخططات
- مختار
- طقم
- الإعداد
- مماثل
- عزباء
- مقاس
- مهارات
- So
- بعض
- متطور
- الفضاء
- متخصص
- انقسم
- الإنشقاقات
- الولايه او المحافظه
- المحافظة
- لا يزال
- متجر
- فروعنا
- استراتيجيات
- الإستراتيجيات
- مفاتيح
- تقنيات
- •
- عبر
- الإنتاجية
- الوقت
- مرات
- تجارة
- قادة الإيمان
- نقل
- تريليونات
- فهم
- تحديث
- آخر التحديثات
- us
- تستخدم
- عادة
- الاستفادة من
- تشكيلة
- مختلف
- انتظر
- في حين
- ويكيبيديا
- في غضون
- بدون
- عامل
- العمال
- عامل
- حل متجر العقارات الشامل الخاص بك في جورجيا