Topik lainnya

Unit ini memeriksa topik berikut:

  • menafsirkan forest acak
  • melatih forest acak
  • kelebihan dan kekurangan dari {i>forest<i}

Menafsirkan hutan acak

{i>Random forest<i} lebih kompleks untuk ditafsirkan daripada pohon keputusan. Forest acak berisi pohon keputusan yang dilatih dengan derau acak. Oleh karena itu, akan lebih sulit untuk membuat penilaian atas struktur pohon keputusan. Namun, kita dapat menafsirkan respons model forest dalam beberapa cara.

Salah satu pendekatan untuk menafsirkan {i>forest<i} acak adalah dengan melatih dan menafsirkan pohon keputusan dengan algoritma CART. Karena {i>forest<i} acak dan CART adalah dilatih dengan algoritma inti yang sama, mereka "memiliki pandangan global yang sama" dari {i>dataset<i} aslinya. Opsi ini berfungsi dengan baik untuk {i>dataset<i} sederhana dan untuk memahami untuk interpretasi model secara keseluruhan.

Tingkat kepentingan variabel adalah penafsiran yang baik lainnya pendekatan. Misalnya, tabel berikut mengurutkan nilai penting variabel dari fitur yang berbeda untuk model forest acak yang dilatih pada Set data sensus (juga yang disebut Dewasa).

Tabel 8. Tingkat kepentingan variabel dari 14 fitur berbeda.

Fitur Skor jumlah Penurunan akurasi rata-rata Penurunan rata-rata ABK Kedalaman min rata-rata Jumlah node Penurunan rata-rata PR-AUC Angka sebagai root
relationship

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

3128.996,3

0,0018

0,0230

6,633

52391

0,0107

750

age

2520658,8

0,0065

0,0074

4,969

356784

0,0033

200

pendidikan

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

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

kelas kerja

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

seks

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 yang berbeda tentang kepentingan variabel memiliki skala yang berbeda dan dapat menyebabkan perbedaan peringkat fitur.

Nilai penting variabel yang berasal dari struktur model (misalnya, jumlah skor, kedalaman minimal rata-rata, jumlah node, dan angka sebagai akar pada tabel di atas) adalah dihitung dengan cara yang serupa untuk pohon keputusan (lihat bagian "Keranjang | Tingkat kepentingan variabel") dan {i>forest<i} acak.

Tingkat kepentingan variabel permutasi (misalnya, rata-rata penurunan {akurasi, auc, pr-auc} dalam tabel di atas) adalah ukuran agnostik model yang dapat dikomputasi pada model machine learning dengan set data validasi. Dengan {i>forest<i} acak, tetapi, daripada menggunakan set data validasi, Anda dapat menghitung permutasi tingkat kepentingan variabel dengan evaluasi {i>out-of-bag<i}.

SHAP (SHapley Additive exPlanations) adalah metode agnostik model untuk menjelaskan prediksi individual atau interpretasi berdasarkan model. (Lihat Machine Learning yang Dapat Diinterpretasikan oleh Molnar untuk pengantar interpretasi agnostik model.) SHAP adalah biasanya mahal untuk dihitung tetapi dapat mempercepat secara signifikan dalam pengambilan keputusan hutan keputusan, jadi ini adalah cara yang baik untuk menafsirkan hutan keputusan.

Contoh penggunaan

Di pelajaran sebelumnya, kita melatih pohon keputusan CART pada {i>dataset<i} kecil dengan memanggil tfdf.keras.CartModel. Untuk melatih model forest 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 dari forest acak.

Kelebihan:

  • Seperti pohon keputusan, hutan acak mendukung model fitur kategorikal dan seringkali tidak memerlukan pemrosesan awal fitur.
  • Karena pohon keputusan bersifat independen, {i>forest<i} acak dapat dilatih dalam paralel. Karenanya, Anda dapat melatih forest acak dengan cepat.
  • Forest acak memiliki parameter default yang sering kali memberikan hasil yang bagus. Penyesuaian parameter tersebut sering kali hanya memiliki sedikit pengaruh pada model.

Kekurangan:

  • Karena pohon keputusan tidak dipangkas, pohon itu bisa berukuran besar. Model dengan lainnya biasanya melebihi 1 juta node. Ukuran (dan kecepatan inferensi) dari {i>forest<i} acak terkadang bisa menjadi masalah.
  • Forest acak tidak dapat mempelajari dan menggunakan kembali representasi internal. Masing-masing pohon keputusan (dan setiap cabang dari setiap pohon keputusan) harus mempelajari kembali pola set data. Dalam beberapa {i>dataset<i}, terutama {i>dataset<i} non-tabular (mis. gambar, teks), ini menyebabkan forest acak menjadi hasil yang lebih buruk dibandingkan metode lain.