فرط التخصيص والتشذيب

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

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

الميل العام هو +1، ولكن نظرًا لأن مجموعة البيانات مزعجة للغاية، فإن نقاط البيانات الفردية تكون أحيانًا بعيدة عن خط التوافق.

الشكل 12. مجموعة بيانات صاخبة.

 

للحد من فرط التخصيص في شجرة القرارات، طبِّق أحد معايير التنظيم التالية أو كليهما أثناء تدريب شجرة القرارات:

  • ضبط أقصى عمق: امنع أشجار القرارات من النمو إلى أكثر من عمق أقصى، مثل 10.
  • وضع حدّ أدنى لعدد الأمثلة على ورقة الشجر: لن يتم أخذ ورقة تتضمّن أقل من عدد معيّن من الأمثلة في الاعتبار للقسمة.

يوضح الشكل التالي تأثير اختلاف الحد الأدنى لعدد الأمثلة لكل ورقة. يلتقط النموذج قدرًا أقل من الضوضاء.

ثلاثة مخططات، يوضح كل منها تأثيرات قيمة مختلفة للأقل
عدد من الأمثلة لكل ورقة. القيم المختلفة هي 2 و5
و10.

الشكل 13. تغيير الحدّ الأدنى لعدد الأمثلة لكل ورقة شجر

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

يوضح الرسم التالي هذه الفكرة. هنا، نختبر ما إذا كان سيتم تحسين دقة التحقق من صحة شجرة القرار إذا تم تحويل العقدة الخضراء بدون أوراق إلى ورقة؛ وهذا يعني تقليم الأجزاء البرتقالية.

شجرتا قرارات. تحتوي شجرة القرار على 9 عُقد، بينما تم تقليص
الأخرى إلى 6 عقد فقط عن طريق تحويل أحد الشروط إلى
ورقة.

الشكل 14. تشذيب حالة مرضية وعناصرها الثانوية إلى ورقة.

 

يوضح الشكل التالي تأثير استخدام 20٪ من مجموعة البيانات كالتحقق من تنقيح شجرة القرار:

مخطط يُظهر نموذجًا مقسمًا بالكامل ومفرط التخصيص مقابل نموذج مثالي للخط المستقيم

الشكل 15. استخدام 20% من مجموعة البيانات لتنقيح شجرة القرارات.

 

لاحظ أن استخدام مجموعة بيانات التحقق من الصحة يقلل من عدد الأمثلة المتاحة للتدريب الأولي لشجرة القرار.

يطبّق العديد من منشئي النماذج معايير متعددة. على سبيل المثال، يمكنك القيام بكل ما يلي:

  • طبِّق حدًا أدنى من الأمثلة لكل ورقة.
  • استخدم أقصى عمق للحد من نمو شجرة القرارات.
  • صياغة شجرة القرار.
رمز YDF
في YDF، تتم تهيئة خوارزميات التعلم مسبقًا باستخدام القيم الافتراضية لجميع المعلمات الفائقة للتشذيب. على سبيل المثال، في ما يلي القيم التلقائية لاثنتين من المعلمات الفائقة للتشذيب:
  • الحد الأدنى لعدد الأمثلة هو 5 (min_examples = 5).
  • يتم الاحتفاظ بـ 10% من مجموعة بيانات التدريب للتحقق من صحتها (validation_ratio = 0.1).
يمكنك إيقاف التشذيب باستخدام مجموعة بيانات التحقّق من الصحة من خلال ضبط validation_ratio=0.0.

توفِّر هذه المعايير مَعلَمات فائقة جديدة يجب ضبطها (مثل الحدّ الأقصى لعمق الأشجار)، غالبًا من خلال الضبط التلقائي للمعلَمة الفائقة. عادةً ما تكون أشجار القرارات سريعة بما يكفي للتدريب على استخدام ضبط المُعلَمات الفائقة مع التحقّق المتبادل. على سبيل المثال، في مجموعة بيانات بأمثلة على "n":

  • قسّم أمثلة التدريب إلى مجموعات غير متداخلة. على سبيل المثال: p=10.
  • بالنسبة إلى جميع قيم المعلمة الفائقة المحتملة؛ على سبيل المثال، الحد الأقصى للعمق في {3,5,6,7,8,9} الحد الأدنى من الأمثلة في {5,8,10,20}.
    • قم بتقييم جودة شجرة القرار في كل مجموعة مدرَّبة على مجموعات p-1 الأخرى.
    • متوسط التقييم عبر المجموعات.
  • اختر قيمة الفائقة مع أفضل تقييم لمتوسط التقييم.
  • تدرب على شجرة قرارات نهائية باستخدام جميع أمثلة "n" مع المعلمات الفائقة المحددة.

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

التفسير المباشر لشجرة القرارات

يمكن تفسير أشجار القرارات بسهولة. ومع ذلك، يمكن أن يؤدي تغيير حتى بعض الأمثلة إلى تغيير هيكل شجرة القرار بالكامل، وبالتالي تفسير.

وبسبب طريقة إنشاء أشجار القرارات، وتقسيم أمثلة التدريب، يمكن للمرء استخدام شجرة قرارات لتفسير مجموعة البيانات نفسها (على عكس النموذج). يمثل كل ورقة زاوية معينة من مجموعة البيانات.

رمز YDF
في YDF، يمكنك النظر إلى الأشجار باستخدام الدالة model.describe(). يمكنك أيضًا الوصول إلى شجرة فردية ورسم مخطط لها باستخدام "model.get_tree()". يمكنك الاطّلاع على دليل فحص نموذج YDF للحصول على المزيد من التفاصيل.

ومع ذلك، فإن التفسير غير المباشر مفيد أيضًا.