Topik lainnya

Unit ini memeriksa topik berikut:

  • penafsiran hutan acak
  • melatih hutan acak
  • pro dan kontra hutan acak

Menafsirkan hutan acak

Hutan acak lebih rumit untuk ditafsirkan dibandingkan pohon keputusan. Hutan acak berisi pohon keputusan yang dilatih dengan derau acak. Oleh karena itu, lebih sulit untuk membuat penilaian tentang struktur pohon keputusan. Namun, kita dapat menafsirkan model hutan acak dalam beberapa cara.

Salah satu pendekatan untuk menafsirkan hutan acak adalah dengan melatih dan menafsirkan pohon keputusan dengan algoritme CART. Karena hutan acak dan CART dilatih dengan algoritme inti yang sama, keduanya "berbagi tampilan global yang sama" dari set data. Opsi ini berfungsi dengan baik untuk set data sederhana dan untuk memahami penafsiran model secara keseluruhan.

Tingkat kepentingan variabel adalah pendekatan interpretabilitas yang baik lainnya. Misalnya, tabel berikut menentukan peringkat variabel penting dari berbagai fitur untuk model hutan acak yang dilatih pada set data Sensus (juga dikenal sebagai Dewasa).

Tabel 8. Tingkat kepentingan variabel dari 14 fitur yang berbeda.

Fitur Jumlah skor Rata-rata penurunan akurasi Rata-rata penurunan UC Kedalaman min rata-rata Jumlah node Penurunan rata-rata pada PR-AUC Angka sebagai root
hubungan

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

status_pernikahan

3128996,3

0,0018

0,0230

6,633

52391

0,0107

750

age

2520658,8

0,0065

0,0074

4,969

356784

0,0033

200

education

2015905.4

0,0018

-0,0080

5,266

115751

-0,0129

205

pekerjaan

1939409,3

0,0063

-0,0040

5,017

221935

-0,0060

62

edukasi_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

jam_per_minggu

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

kelas kerja

644208,4

0,0025

-0,0019

9,898

132196

-0,0023

0

native_country [negara_native]

538841,2

0,0001

-0,0016

9,434

67211

-0,0058

0

gender

226049,3

0,0002

0,0002

10,911

37754

-0,0011

13

ras

168180,9

-0,0006

-0,0004

11,571

42262

-0,0031

0

Seperti yang Anda lihat, definisi nilai penting variabel yang berbeda memiliki skala yang berbeda dan dapat menyebabkan perbedaan dalam peringkat fitur.

Tingkat kepentingan variabel yang berasal dari struktur model (misalnya, jumlah skor, kedalaman min rata-rata, node jumlah, dan jumlah sebagai root pada tabel di atas) dihitung sama untuk pohon keputusan (lihat bagian "Keranjang | Variabel variabel") dan hutan acak.

Tingkat kepentingan variabel permutasi (misalnya, penurunan rata-rata {akurasi, auc, pr-auc} pada tabel di atas) adalah tindakan diagnostik model yang dapat dihitung pada model machine learning apa pun dengan set data validasi. Namun, dengan hutan acak, bukannya menggunakan set data validasi, Anda dapat menghitung nilai penting variabel permutasi dengan evaluasi bawaan.

SHAP (Shapley Additive exPlanations) adalah metode diagnostik model untuk menjelaskan prediksi individual atau interpretasi berdasarkan model. (Lihat Interpreter Machine Learning oleh Molnar untuk pengantar interpretasi model.) SHAP sangat mahal untuk dihitung, tetapi dapat dipercepat secara signifikan untuk hutan keputusan, jadi ini adalah cara yang baik untuk menafsirkan hutan keputusan.

Contoh penggunaan

Di tutorial sebelumnya, kita melatih pohon keputusan CART pada set data kecil dengan memanggil tfdf.keras.CartModel. Untuk melatih model hutan acak, cukup ganti tfdf.keras.CartModel dengan tfdf.keras.RandomForestModel:

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

Kelebihan dan kekurangan

Bagian ini berisi ringkasan singkat tentang kelebihan dan kekurangan hutan acak.

Kelebihan:

  • Seperti pohon keputusan, hutan acak mendukung fitur numerik dan kategoris secara native serta sering kali tidak memerlukan pra-pemrosesan fitur.
  • Karena pohon keputusan itu independen, hutan acak dapat dilatih secara paralel. Oleh karena itu, Anda dapat melatih hutan acak dengan cepat.
  • Hutan acak memiliki parameter default yang sering memberikan hasil yang memuaskan. Penyesuaian parameter tersebut sering kali tidak begitu berdampak terhadap model.

Kekurangan:

  • Karena pohon keputusan tidak dipangkas, pohon itu bisa besar. Model dengan lebih dari 1 juta node adalah hal yang umum. Ukuran (dan karenanya kecepatan inferensi) hutan acak terkadang dapat menjadi masalah.
  • Hutan acak tidak dapat mempelajari dan menggunakan kembali representasi internal. Setiap pohon keputusan (dan setiap cabang setiap pohon keputusan) harus mempelajari kembali pola set data. Dalam beberapa set data, terutama set data non-tabular (misalnya gambar, teks), ini menyebabkan hutan acak memberikan hasil yang lebih buruk daripada metode lainnya.