الإفراط في ممارسة التمارين وتنظيمها والتوقّف مبكرًا

وعلى عكس الغابات العشوائية، يمكن تضرّر الأشجار المُعزّزة بالتدرّج. لذلك، بالنسبة إلى الشبكات العصبية، يمكنك تطبيق التسوية والتوقف المبكر باستخدام مجموعة بيانات التحقق.

على سبيل المثال، تعرض الأرقام التالية منحنيات الفقدان والدقة للتدريب ومجموعات التحقق عند تدريب نموذج GBT. لاحِظ مدى تفاوت المنحنيات، ما يدل على درجة عالية من المحاذاة.

قِطع فقدان التدريب وخسارة التحقق من الصحة مقابل عدد أشجار القرار ينخفض معدّل فقدان التدريب تدريجيًا مع زيادة عدد أشجار القرار. ويبقى معدّل التحقق من الصحة منخفضًا حتى تصل إلى 40 شجرة قرارات فقط. في ظل وجود أكثر من 40 شجرة قرارات،
  تزيد نسبة فقدان التحقق. وفي ظلّ 400 شجرة قرارات،
  تكون فجوة التدريب بين فقدان التدريب وخسارة التحقق
  كبيرة.

الشكل 29. الخسارة مقابل عدد أشجار القرارات

 

رسم بياني لدقة التدريب ودقة التحقق مقارنةً بعدد أشجار القرار. تزداد دقة التدريب تدريجيًا مع زيادة عدد أشجار القرار، ما يصل إلى ذروة 1.0 تقريبًا في 400 شجرة قرار. تزيد دقة التحقق إلى 0.86 تقريبًا عند 40
 شجرة قرار، ثم تنخفض تدريجيًا إلى 0.83 تقريبًا عند 400 شجرة قرار.

الشكل 30. الدقّة مقابل عدد أشجار القرارات

 

تشمل معلمات التسوية الشائعة للأشجار المحسّنة بالتدرّج ما يلي:

  • الحد الأقصى لعمق الشجرة.
  • معدّل التقليص.
  • نسبة السمات التي تم اختبارها في كل عُقدة.
  • معامل L1 وL2 عند فقدان البيانات.

لاحظ أن أشجار القرار عمومًا تكون ضحلة أكثر من نماذج الغابات العشوائية. بشكل تلقائي، تتم زراعة أشجار الأشجار المتدرّجة في TF-DF بعمق 6 إلى عمق. نظرًا لأن الأشجار ضحلة، سيكون الحد الأدنى لعدد الأمثلة لكل أوراق تأثيرًا طفيفًا ولا يتم ضبطها بشكل عام.

تُعدّ الحاجة إلى مجموعة بيانات للتحقّق من الصحة مشكلة عندما يكون عدد أمثلة التدريب صغيرًا. لذلك، من الشائع أن يتم تدريب الأشجار المحسّنة والمتدرّجة على التدرّج داخل حلقة تحقّق متقاطع، أو إيقاف الإيقاف المبكر عندما يكون النموذج معروفًا وغير مناسب.

مثال الاستخدام

في الفصل السابق، درّبنا غابة عشوائية على مجموعة بيانات صغيرة. في هذا المثال، سيتم استبدال نموذج الغابة العشوائي بنموذج أشجار مُعزَّز بالتدرّج:

model = tfdf.keras.GradientBoostedTreesModel()

# Part of the training dataset will be used as validation (and removed
# from training).
model.fit(tf_train_dataset)

# The user provides the validation dataset.
model.fit(tf_train_dataset, validation_data=tf_valid_dataset)

# Disable early stopping and the validation dataset. All the examples are
# used for training.
model.fit(
   tf_train_dataset,
   validation_ratio=0.0,
   early_stopping="NONE")
# Note: When "validation_ratio=0", early stopping is automatically disabled,
# so early_stopping="NONE" is redundant here.

الاستخدام والقيود

هناك أشجار وعيوب إضافية في التدرّج الهرمي.

الإيجابيات

  • وعلى غرار أشجار القرار، تدعم هذه التطبيقات في الأصل ميزات رقمية وفئوية، ولا تحتاج في أغلب الأحيان إلى معالجة الميزات بشكل مسبق.
  • تحتوي الأشجار المحسّنة المتدرجة على معلمات زائدة بشكل تلقائي وكثيرًا ما تحقق نتائج رائعة. ومع ذلك، يمكن أن تؤدي ضبط هذه المعلمات الفائقة إلى تحسين النموذج بشكلٍ كبير.
  • تكون نماذج الأشجار التدرّجية المُعزَّزة صغيرة عمومًا (بعدد من العُقد وفي الذاكرة) وسريعة التشغيل (غالبًا ما تكون واحدة أو عدد قليل من micros / أمثلة).

السلبيات

  • يجب تدريب أشجار القرار بشكل تسلسلي، ما يمكن أن يؤدي إلى إبطاء التدريب بشكل كبير. في المقابل، ثمة بطء في عملية التدريب بسبب صغر حجم أشجار القرارات.
  • وعلى غرار الغابات العشوائية، لا يمكن للأشجار المعزّزة بالتدرّج أن تتعلّم تمثيلات داخلية وتُعيد استخدامها. يجب أن يتعلّم كل شجرة قرارات (وكل فرع لكل شجرة قرارات) نمط مجموعة البيانات. في بعض مجموعات البيانات، خصوصًا مجموعات البيانات التي تتضمن بيانات غير منظَّمة (مثل الصور والنصوص)، يتسبب ذلك في تعزيز ظهور التدرّج التدريجي مقارنةً بالطرق الأخرى.