فرط التخصيص والتقليم
باستخدام الخوارزمية الموضّحة أعلاه، يمكننا تدريب شجرة قرارات ستنجح في تصنيف أمثلة التدريب بشكلٍ مثالي، بافتراض أنّ الأمثلة قابلة للفصل. ومع ذلك، إذا كانت مجموعة البيانات تحتوي على بيانات عشوائية، ستتلاءم هذه الشجرة بشكلٍ مفرط مع البيانات وستُظهر دقة اختبار منخفضة.
يعرض الشكل التالي مجموعة بيانات بها شوائب وتتضمن علاقة خطية بين سمة x والعلامة y. يعرض الشكل أيضًا شجرة قرارات تم تدريبها على مجموعة البيانات هذه بدون أي نوع من أنواع التسويف. يتوقّع هذا النموذج بشكل صحيح كل أمثلة التدريب (تتطابق توقّعات النموذج مع مثال التدريب). ومع ذلك، في مجموعة بيانات جديدة تحتوي على النمط الخطي نفسه و مثيلًا مختلفًا للضوضاء، سيؤدّي النموذج أداءً ضعيفًا.
الشكل 12: مجموعة بيانات مشوّشة
للحدّ من التكيّف المفرط لشجرة القرارات، طبِّق أحد معيارَي التسوية التاليَين أو كليهما أثناء تدريب شجرة القرارات:
- ضبط الحد الأقصى للعمق: يمكنك منع نمو أشجار القرار إلى ما بعد الحد الأقصى للعمق، مثل 10.
- ضبط حدّ أدنى لعدد النماذج في الورقة: لن يتمّ تقسيم ورقة تحتوي على عدد أقل من عدد معيّن من النماذج.
يوضّح الشكل التالي تأثير اختلاف الحد الأدنى لعدد الأمثلة لكل ورقة. يرصد النموذج قدرًا أقل من الضوضاء.
الشكل 13. اختلاف الحد الأدنى لعدد الأمثلة لكل ورقة.
يمكنك أيضًا إجراء عملية التنظيم بعد التدريب من خلال إزالة (التقليم) انتقائيًا لحدود معيّنة، أي من خلال تحويل بعض العقد غير الورقية إلى أوراق. إنّ أحد الحلول الشائعة لاختيار الفروع التي يجب إزالتها هو استخدام مجموعة بيانات التحقّق. وهذا يعني أنّه إذا أدّت إزالة فرع إلى تحسين جودة النموذج في مجموعة بيانات التحقّق، تتم إزالة الفرع.
يوضّح الرسم التالي هذه الفكرة. في ما يلي، نختبر ما إذا كان سيتم تحسين دقة التحقّق من شجرة القرار في حال تحويل العقدة الخضراء غير الورقية إلى ورقة، أي تقليم العقد البرتقالية.
الشكل 14. تقليم شرط وعناصره الفرعية إلى ورقة بيانات
يوضّح الشكل التالي تأثير استخدام 20% من مجموعة البيانات كمحاولة تحقّق من تقليم شجرة القرار:
الشكل 15. استخدام% 20 من مجموعة البيانات لتقليم شجرة القرارات
يُرجى العِلم أنّ استخدام مجموعة بيانات التحقّق يقلل من عدد الأمثلة المتاحة للتدريب الأوّلي لشجرة القرارات.
يطبّق العديد من صنّاع النماذج معايير متعدّدة. على سبيل المثال، يمكنك إجراء كلّ مما يلي:
- طبِّق الحد الأدنى لعدد الأمثلة لكل ورقة.
- طبِّق الحد الأقصى للعمق للحد من نمو شجرة القرارات.
- تقليم شجرة القرارات
- الحد الأدنى لعدد الأمثلة هو 5 (
min_examples = 5
) - يتم الاحتفاظ بنسبة% 10 من مجموعة بيانات التدريب للتحقّق من الصحة
(
validation_ratio = 0.1
).
validation_ratio=0.0
.
تُعرِض هذه المعايير مَعلمات متغيرة جديدة يجب ضبطها (مثل الحد الأقصى لعمق الشجرة)، غالبًا من خلال ضبط المَعلمات المتغيرة تلقائيًا. تكون أشجار القرارات بشكل عام سريعة بما يكفي للتدريب على استخدام ضبط المَعلمات الفائقة مع التحقّق التبادلي. على سبيل المثال، في مجموعة بيانات تتضمّن "n" مثالاً:
- قسِّم أمثلة التدريب إلى p مجموعة غير متداخلة. على سبيل المثال:
p=10
. - لجميع قيم المَعلمات الفائقة المحتمَلة، على سبيل المثال، الحد الأقصى للعمق
في {3,5,6,7,8,9}، والحد الأدنى للأمثلة في {5,8,10,20}.
- قيِّم جودة شجرة القرار المدربة على مجموعات p-1 الأخرى في كل مجموعة.
- احتساب متوسط التقييم على مستوى المجموعات
- اختَر قيمة مُدخل الضبط التي تحقّق أفضل تقييم متوسّط.
- تدريب شجرة قرارات نهائية باستخدام جميع الأمثلة "n" مع المَعلمات الفائقة المختارة
في هذا القسم، ناقشنا الطرق التي تحدّ من أشجار القرارات من التكيّف المفرط. على الرغم من هذه الطرق، يُعدّ الضبط غير الكافي والضبط الزائد من نقاط الضعف الرئيسية في شجرات القرار. توفّر "غابات القرارات" طُرقًا جديدة للحدّ من التكيّف المفرط، وسنتناولها بالتفصيل في وقت لاحق.
تفسير شجرة القرار المباشر
يمكن تفسير أشجار القرارات بسهولة. ومع ذلك، يمكن أن يؤدي تغيير حتى بضع أمثلة إلى تغيير البنية بالكامل، وبالتالي التفسير، لشجرة القرارات.
بسبب الطريقة التي يتم بها إنشاء أشجار القرارات، يمكن استخدام شجرة قرارات لتفسير مجموعة البيانات نفسها (بدلاً من النموذج) من خلال تقسيم مثالي التدريب. تمثّل كل ورقة زاوية معيّنة من مجموعة البيانات.
model.describe()
.
يمكنك أيضًا الوصول إلى شجرة فردية وتخطيطها باستخدام model.get_tree()
.
اطّلِع على
الدليل التعليمي لفحص النماذج في YDF للحصول على مزيد من التفاصيل.
ومع ذلك، فإنّ التفسير غير المباشر مفيد أيضًا.