مواضيع أخرى

تتناول هذه الوحدة المواضيع التالية:

  • تفسير الغابات العشوائية
  • تدريب الغابات العشوائية
  • إيجابيات وسلبيات الغابات العشوائية

تفسير الغابات العشوائية

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

من بين طرق تفسير الغابة العشوائية، تدريب شجيرة قرار وتفسيرها باستخدام خوارزمية CART. بما أنّ كلاً من الغابة العشوائية وCART يتم تدريبهما باستخدام الخوارزمية الأساسية نفسها، فإنّهما "يتشاركان العرض العام نفسه" لملف الاطِّلاع على البيانات. يعمل هذا الخيار بشكل جيد مع مجموعات البيانات البسيطة وفهم التفسير العام للنموذج.

أهمية المتغيّرات هي أسلوب آخر جيد لتفسير النموذج. على سبيل المثال، يصنّف الجدول التالي أهمية المتغيّرات للسمات المختلفة لنموذج الغابة العشوائية الذي تم تدريبه على مجموعة بيانات التعداد السكاني (المعروفة أيضًا باسم Adult).

الجدول 8: أهمية المتغيّرات لـ 14 ميزة مختلفة

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

4203592.6

0.0045

0.0172

4.970

57040

0.0093

1095

capital_gain

3363045.1

0.0199

0.0194

2.852

56468

0.0655

457

marital_status

3128996.3

0.0018

0.0230

6.633

52391

0.0107

750

العمر

2520658.8

0.0065

0.0074

4.969

356784

0.0033

200

التعليم

2015905.4

0.0018

-0.0080

5.266

115751

-0.0129

205

المهنة

1939409.3

0.0063

-0.0040

5.017

221935

-0.0060

62

education_num

1673648.4

0.0023

-0.0066

6.009

58303

-0.0080

197

fnlwgt

1564189.0

-0.0002

-0.0038

9.969

431987

-0.0049

0

hours_per_week

1333976.3

0.0030

0.0007

6.393

206526

-0.0031

20

capital_loss

866863.8

0.0060

0.0020

8.076

58531

0.0118

1

فئة العمل

644208.4

0.0025

-0.0019

9.898

132196

-0.0023

0

native_country

538841.2

0.0001

-0.0016

9.434

67211

-0.0058

0

جنس

226049.3

0.0002

0.0002

10.911

37754

-0.0011

13

عرقي

168180.9

-0.0006

-0.0004

11.571

42262

-0.0031

0

كما ترى، فإنّ التعريفات المختلفة لأهمية المتغيّرات لها مقاييس مختلفة، وقد تؤدي إلى اختلافات في ترتيب الميزات.

يتم احتساب قيم مقياس أهمية المتغيّرات التي تأتي من بنية النموذج (مثل sum score وmean min depth وnum nodes وnum as root في الجدول أعلاه) بالطريقة نفسها لأشجار القرار (راجِع القسم "سلة التسوّق | أهمية المتغيّرات") والغابات العشوائية.

إنّ أهمية متغيّر التبادل (مثل متوسّط الانخفاض في {accuracy, auc, pr-auc} في الجدول أعلاه) هي مقاييس لا تعتمد على النموذج ويمكن احتسابها في أيّ نموذج تعلُّم آلة يتضمّن مجموعة بيانات التحقّق. باستخدام الغابة العشوائية، ومع ذلك، بدلاً من استخدام مجموعة بيانات التحقّق، يمكنك احتساب بيرموط أهمية المتغيّر باستخدام تقييم خارج الحزمة.

SHAP (SHapley Additive exPlanations) هي طريقة لا تعتمد على أي نموذج لتفسير التوقّعات الفردية أو التفسير حسب النموذج. (اطّلِع على Interpretable Machine Learning (تعلُّم الآلة التفسيري) الذي كتبه مولنار للحصول على مقدّمة عن التفسير غير المرتبط بالنموذج). إنّ احتساب SHAP عادةً ما يكون باهظ التكلفة، ولكن يمكن تسريعه بشكل كبير في ملفّات القرارات، لذا فهو طريقة جيدة لتفسير ملفّات الأحكام.

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

في الدرس السابق، درّبنا شجرة قرارات CART على مجموعة بيانات صغيرة من خلال استدعاء tfdf.keras.CartModel. لتدريب نموذج غابة عشوائية، ما عليك سوى استبدال tfdf.keras.CartModel بـ tfdf.keras.RandomForestModel:

model = tfdf.keras.RandomForestModel()
model.fit(tf_train_dataset)

الإيجابيات والسلبيات

يحتوي هذا القسم على ملخّص سريع لمزايا الغابات العشوائية وعيوبها.

الإيجابيات:

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

السلبيات:

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