MulaiMulai sekarang secara gratis

Memangkas tree dengan probabilitas prior yang diubah

Dalam video, Anda telah mempelajari bahwa pemangkasan tree diperlukan untuk menghindari overfitting. Ada beberapa tree yang besar pada latihan sebelumnya dan sekarang Anda akan mempraktikkan apa yang telah dipelajari, yaitu memangkas tree yang sebelumnya dibuat dengan probabilitas prior yang telah diubah. Paket rpart sudah dimuat di workspace Anda.

Pertama, Anda akan menetapkan seed agar hasil dapat direproduksi sebagaimana disebutkan dalam video, karena Anda akan meninjau hasil galat tervalidasi-silang. Hasil melibatkan pengacakan dan dapat sedikit berbeda jika fungsi dijalankan kembali dengan seed yang berbeda.

Dalam latihan ini Anda akan mempelajari cara mengidentifikasi parameter kompleksitas (CP) yang meminimalkan hasil galat tervalidasi-silang, lalu memangkas tree Anda berdasarkan nilai tersebut.

Latihan ini adalah bagian dari kursus

Pemodelan Risiko Kredit di R

Lihat Kursus

Petunjuk latihan

  • tree_prior sudah dimuat di workspace Anda.
  • Gunakan plotcp() untuk memvisualisasikan galat tervalidasi-silang (X-val Relative Error) terhadap parameter kompleksitas untuk tree_prior.
  • Gunakan printcp() untuk mencetak tabel informasi tentang CP, split, dan galat. Lihat apakah Anda dapat mengidentifikasi split mana yang memiliki galat tervalidasi-silang minimum pada tree_prior.
  • Gunakan which.min() untuk mengidentifikasi baris mana dalam tree_prior$cptable yang memiliki galat tervalidasi-silang minimum "xerror". Tetapkan hasilnya ke index.
  • Buat tree_min dengan memilih indeks dari tree_prior$cptable pada kolom "CP".
  • Gunakan fungsi prune() untuk memperoleh tree yang telah dipangkas. Beri nama tree yang telah dipangkas tersebut ptree_prior.
  • Paket rpart.plot sudah dimuat di workspace Anda. Plot tree yang telah dipangkas menggunakan fungsi prp() (pengaturan default).

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# tree_prior is loaded in your workspace

# Plot the cross-validated error rate as a function of the complexity parameter


# Use printcp() to identify for which complexity parameter the cross-validated error rate is minimized.


# Create an index for of the row with the minimum xerror
index <- which.min(___$___[ , "xerror"])

# Create tree_min
tree_min <- tree_prior$cptable[index, "CP"]

#  Prune the tree using tree_min
ptree_prior <- prune(___, cp = ___)

# Use prp() to plot the pruned tree
Edit dan Jalankan Kode