هناك نوعان من أحمال عمل التدريب:
- محدود بقدرة الحوسبة
- غير مرتبط بالعمليات الحسابية
يتم تحديد تدريب العمليات الحسابية المكثفة حسب مقدار الوقت الذي يمكنك تخصيصه للتدريب، وليس حسب مقدار بيانات التدريب المتوفّرة لديك أو أي عامل آخر. بعبارة أخرى، يكون وقت التدريب "الأمثل" دائمًا "طالما يمكنك تحمّل التكلفة". إذا كان بإمكانك التدريب لفترة أطول أو بشكل أكثر فعالية، من المفترض أن ينخفض معدل الخطأ في التدريب. (مع الضبط المناسب، من المفترض أن ينخفض معدّل الخطأ في بيانات التحقّق أيضًا).
إنّ تسريع التدريب الذي يتطلّب قدرة حاسوبية كبيرة يعادل تحسين التدريب. مع ذلك، لا يعني أنّ عبء العمل محدود الحوسبة أنّ التدريب لفترة أطول أو بشكل أسرع هو الطريقة الوحيدة لتحسين النتائج.
عندما لا يكون التدريب مرتبطًا بالقدرة الحسابية، يمكنك التدريب طالما أردت ذلك. ومع ذلك، قد لا يساعد تدريب النموذج لفترة أطول كثيرًا، بل قد يؤدي إلى الإفراط في التوافق. عندما لا يكون التدريب مرتبطًا بالحساب:
- يمكنك التدريب على تحقيق خسارة تدريب منخفضة جدًا، إلى الحدّ الذي قد يؤدي فيه التدريب الإضافي إلى تقليل خسارة التدريب بشكل طفيف، ولكنّه لا يقلّل خسارة التحقّق بشكل كبير.
- يمكنك إجراء عمليات الضبط بسهولة أكبر، خاصةً عند ضبط جداول انخفاض معدّل التعلّم، لأنّها تتفاعل بشكل قوي مع ميزانية التدريب. في المقابل، قد يتطلّب الحصول على خسارة تدريب منخفضة في التدريب المحدود بالوقت جدولاً زمنيًا لتناقص معدّل التعلّم تم ضبطه على أكمل وجه.
بغض النظر عمّا إذا كانت حمولة العمل معيّنة مرتبطة بالحساب أم لا، فإنّ الطرق التي تزيد تباين التدرجات (على مستوى الدفعات) تؤدي عادةً إلى إبطاء عملية التدريب، وبالتالي قد تزيد عدد خطوات التدريب المطلوبة للوصول إلى خسارة التحقّق من الصحة معيّنة. يمكن أن يؤدي أي مما يلي إلى تباين كبير في التدرّج:
- استخدام حجم مجموعة أصغر
- إضافة ميزة "تحسين البيانات"
- إضافة بعض أنواع التسوية (على سبيل المثال، تسوية التسرب)
تحديد مدة التدريب عندما لا يكون التدريب مرتبطًا بالحساب
هدفكم: التدريب لفترة كافية كي يحقّق النموذج أفضل نتيجة ممكنة بدون إضاعة خطوات التدريب.
هدفك الرئيسي هو التأكّد من أنّك تدربت لفترة كافية ليحقق النموذج أفضل نتيجة ممكنة بدون إضاعة خطوات تدريب غير ضرورية. عندما تكون في شك، من الأفضل أن تتدرب لفترة أطول. يجب ألا تتدهور مقاييس التقييم (مثل الدقة أو الاسترجاع أو مساحة تحت المنحنى أو F1) عند التدريب لفترة أطول، وذلك بافتراض أنّك تستخدم بشكل صحيح عملية اختيار نقطة التحقّق الاسترجاعية وأنّك تتحقّق بشكل متكرّر بما يكفي.
لا تضبط قيمة المقياس max_train_steps
في إحدى الدراسات. بدلاً من ذلك، اختَر قيمة واستخدِمها نفسها لجميع الفترات التجريبية. من هذه التجارب، ارسم خطًا بيانيًا لخطوة التدريب
التي يجدها اختيار نقطة التحقّق بأثر رجعي من أجل تحسين اختيار
max_train_steps
.
على سبيل المثال، إذا كانت أفضل خطوة تحدث دائمًا خلال أول% 10 من التدريب، يكون الحد الأقصى لعدد الخطوات مرتفعًا جدًا.
بدلاً من ذلك، إذا كانت الخطوة الأفضل تقع باستمرار في آخر% 25 من التدريب، قد تستفيد من التدريب لفترة أطول وإعادة ضبط جدول التدهور.
يمكن أن يتغيّر العدد المثالي لخطوات التدريب عند تغيير البنية أو البيانات (على سبيل المثال، إضافة زيادة البيانات).
يوضّح القسم التالي كيفية اختيار قيمة مرشّحة أولية لـ max_train_steps
استنادًا إلى عدد الخطوات اللازمة "للمطابقة التامة" لمجموعة التدريب باستخدام معدّل تعلّم ثابت.
قد يكون من الممكن تقليل max_train_steps
إذا تحسّنت عملية التدريب بطريقة ما، مثلاً باستخدام أداة تحسين معدَّلة بشكل أفضل أو جدول معدَّل بشكل أفضل لمعدّل التعلّم.
خوارزمية لاختيار مرشّح أولي لقيمة max_train_steps باستخدام عملية بحث عن معدّل التعلّم
يمكنك اختيار مرشّح أولي لـ max_train_steps
باستخدام خوارزمية مسح معدّل التعلّم. تفترض الخوارزمية التالية أنّه من الممكن "ملاءمة" مجموعة التدريب "بشكل مثالي"، وأنّه يمكن إجراء ذلك باستخدام جدول معدّل تعلّم ثابت.
- إذا كان من الممكن ملاءمة مجموعة التدريب بأكملها بشكل مثالي،
يجب أن يتوفّر إعداد (بقيمة
max_train_steps
) يلائم مجموعة التدريب بشكل مثالي. ابحث عن أي إعدادات من هذا النوع واستخدِم قيمةmax_train_steps
كنقطة بدايةN
. - نفِّذ عملية بحث شاملة عن معدّل التعلّم الثابت (أي البحث في الشبكة عن معدّل التعلّم) بدون زيادة البيانات وبدون تسوية، حيث يتم تدريب كل تجربة لمدة
N
خطوة. يجب أن يكون عدد الخطوات المطلوبة لأسرع تجربة في عملية البحث عن معدّل التعلّم التي تحقق أداء تدريب مثاليًا هو التخمين الأولي لقيمةmax_train_steps
.
ملاحظة: يمكن أن تؤدي مساحات البحث السيئة إلى خداع الذات.
على سبيل المثال، إذا كانت جميع معدّلات التعلّم في إحدى الدراسات صغيرة جدًا، قد تستنتج بشكل غير صحيح أنّ قيمة كبيرة جدًا من max_train_steps
ضرورية.
كحدّ أدنى، تأكَّد من أنّ معدّل التعلّم الأمثل في الدراسة ليس عند حدود مساحة البحث.
تحديد مدة التدريب عندما يكون التدريب محدودًا بقدرة الحوسبة
في بعض الحالات، يستمر تحسّن خسارة التدريب إلى أجل غير مسمى، لذا يصبح صبرك ومواردك الحسابية هما العاملان المحدّدان. ولكن هل يجب أن تتدرب طالما يمكنك تحمّل التكاليف؟ ليس بالضرورة. ننصحك باتّباع الخطوات التالية:
- قد تتمكّن من إجراء عمليات ضبط أكثر فعالية من خلال تنفيذ عدد أكبر من التجارب الأقصر، مع الاحتفاظ بأطول عمليات التشغيل "لمدة الإنتاج" للنماذج التي تأمل في إطلاقها.
- مع اقتراب وقت التدريب للتجارب من الحد الأقصى الذي يمكنك تحمّله، تصبح تجارب الضبط أكثر صلة بمرشّحي الإطلاق المحتملين، ولكن يمكنك إكمال عدد أقل منها.
- من المحتمل أن تتمكّن من الإجابة عن العديد من الأسئلة أثناء التدريب على% 10 فقط من مدة الفيديو. ومع ذلك، قد لا تنطبق استنتاجاتك في هذا الحدّ الزمني على التجارب التي تبلغ% 20 من مدة الفيديو الأصلي، ناهيك عن %100.
يُعدّ الضبط الدقيق خلال جولات متعددة مع زيادة حدود خطوات التدريب لكل تجربة أسلوبًا منطقيًا. يمكنك إجراء أي عدد تريده من الجولات، ولكن عادةً ما تكون جولة واحدة إلى ثلاث جولات هي الأنسب. بشكل أساسي، حاوِل فهم المشكلة قدر الإمكان من خلال إجراء تجارب سريعة جدًا، مع مراعاة ما يلي:
- مدى دقة عملية الضبط
- مدى الصلة بالجولات النهائية الأطول
بعد أن يؤدي حد زمني معيّن لكل تجربة إلى إنشاء إحصاءات مفيدة، يمكنك زيادة وقت التدريب ومواصلة الضبط، مع التأكّد من صحة استنتاجاتك من عمليات التشغيل الأقصر حسب الحاجة. كنقطة بداية، ننصحك بإجراء جولتين من الضبط:
- الجولة 1: عمليات تشغيل أقصر مدة للعثور على معلَمات النموذج والمحسِّن الفائقة الجيدة
- الجولة الثانية: عدد قليل جدًا من عمليات التشغيل الطويلة المدة على نقاط معلّمة فائقة جيدة للحصول على النموذج النهائي.
أهم سؤال يجب طرحه عند الانتقال من الجولة الأولى إلى الجولة الثانية هو:
كيف يمكن تعديل جداول انخفاض معدّل التعلّم؟
من الأخطاء الشائعة عند تعديل جداول معدّل التعلّم بين الجولات استخدام جميع خطوات التدريب الإضافية بمعدّل تعلّم صغير جدًا.
الجولة الأولى: الكثير من التدريبات القصيرة
مع ذلك، ليس هناك ما يضمن أنّ الخيارات الجيدة التي تم العثور عليها في التدريب القصير وغير المكتمل ستظل خيارات جيدة عند زيادة مدة التدريب بشكل كبير. ومع ذلك، بالنسبة إلى بعض المَعلمات الفائقة، تكون الخيارات الجيدة مرتبطة بشكل كافٍ ليكون الدور الأول مفيدًا. ما هي قيم المَعلمات الفائقة التي تم العثور عليها في عمليات تشغيل أقصر والتي يتم نقلها بنجاح إلى عمليات تدريب أطول؟ لا نعرف، ونحتاج إلى المزيد من البحث. استنادًا إلى ما نعرفه حتى الآن، إليك الشكوك التي تراودنا بشأن احتمالية نقل البيانات، وذلك بترتيب تنازلي:
- من المرجّح جدًا أن يتم نقلها. يمكن حلّ مشكلة عدم استقرار التدريب المبكر في الجولة الأولى من الضبط باستخدام عدد أقل من خطوات التدريب.
من المرجّح أن يتم نقل المَعلمات الفائقة التالية:
- مدة الإحماء
- الإعداد
- من المحتمل أن يتم نقل البيانات. عادةً ما يؤدي تحقيق تحسّن كبير في بنية النموذج إلى تحسّن في الأداء، ولكن من المحتمل أن تحدث العديد من الأمثلة المضادة.
- قد يتم نقلها. قد يتم نقل المَعلمات الفائقة التالية:
- سيتم نقل خوارزمية التحسين والمعلَمات الفائقة "بشكل غير دقيق".
- زيادة البيانات
- التسوية إذا تعذّر مطابقة مجموعة التدريب بشكل مثالي، قد يكون النموذج في نظام لا يُرجّح أن يساعد فيه التسوية كثيرًا.
- من غير المحتمل أن يتم نقل البيانات. من غير المرجّح أن يتم نقل جدول معدّل التعلّم بشكل مثالي. تشير ورقة Training Compute-Optimal Large Language Models إلى أنّ عملية نقل جدول التدهور ممكنة أيضًا، ولكننا لا نعتقد أنّ ذلك صحيح بشكل عام. على سبيل المثال، يؤدي ضبط معدّل الانخفاض وفقًا لدالة الجذر التربيعي على عدد صغير من خطوات التدريب ثم توسيعه إلى عدد كبير إلى حدوث معظم التدريب في خطوات صغيرة جدًا. يمكنك على الأرجح تحقيق أداء "جيد بما يكفي" باستخدام معظم الجداول الزمنية في حدود ميزانية التدريب القصوى، ولكن من المرجّح أن تلاحظ تحسّنًا ملحوظًا في الأداء إذا تم ضبطها. توضّح ورقة Understanding Short-Horizon Bias in Stochastic Meta-Optimization مخاطر محاولة اختيار معدّلات التعلّم بشكل قصير النظر.
الجولة الثانية: عدد مرات تشغيل أقل، ولكن بمدة أطول
تشغيل أفضل إعدادات المَعلمات الفائقة من الجولة الأولى
التخمين: 🤖 استخدِم الخطوات الإضافية لتمديد فترة التدريب
بمعدّل تعلّم مرتفع. على سبيل المثال، إذا كنت تستخدم جدولاً زمنيًا خطيًا،
فحافظ على طول فترة التدهور ثابتًا من الجولة الأولى ومدِّد فترة
lr
الثابتة في البداية. بالنسبة إلى التحلّل الجيبي التمام، احتفِظ بالقيمة الأساسية lr
من الجولة الأولى، ومدِّد max_train_steps
كما هو موضّح في تدريب النماذج اللغوية الكبيرة المثالية من حيث الحساب.
قد تكون جولات التدريب الإضافية مناسبة للفِرق التي تتوفّر فيها كل الشروط التالية:
- نمذجة ناضجة جدًا
- ضبط مسارات العرض
- عمليات تدريب طويلة ومكلفة جدًا
ومع ذلك، غالبًا ما تكون عمليات التدريب الإضافية غير مثمرة.
لقد سبق أن شرحنا كيفية الانتقال من الجولة الأولى إلى الجولة الثانية. إذا لم تكن تهتم بوقت التحليل وكان شاغلك الأساسي هو الاستخدام الفعّال لموارد الحوسبة، ننصحك بزيادة مدة عمليات التدريب بشكل كبير (وبالتالي زيادة الوقت اللازم لإكمال الدراسة من البداية إلى النهاية) على مدار العديد من جولات الضبط المختلفة:
- في كل جولة، تأكَّد بشكل منهجي من أنّ خياراتك ستستمر في تقديم نتائج جيدة.
- ضَع الأفكار الجديدة في مسار عمل يقلّل من المخاطر تدريجيًا باستخدام تجارب طويلة الأمد بشكل متزايد من الخطوة i إلى الخطوة i+1.