Dalam rutin bagian () untuk membuat model CART, Anda menentukan parameter kompleksitas yang ingin Anda pangkas pohon Anda. Saya telah melihat dua rekomendasi berbeda untuk memilih parameter kompleksitas:
Pilih parameter kompleksitas yang terkait dengan kemungkinan kesalahan tervalidasi silang minimum. Metode ini direkomendasikan oleh Quick-R dan HSAUR.
Pilih parameter kompleksitas terbesar yang estimasi kesalahan lintas-validasinya masih dalam SE dari kesalahan kesalahan-validasi silang minimum yang mungkin. Ini adalah interpretasi saya terhadap dokumentasi paket, yang mengatakan: "Pilihan cp yang baik untuk pemangkasan seringkali merupakan nilai paling kiri dimana rerata terletak di bawah garis horizontal" dalam referensi pada plot ini .
Dua pilihan cp menghasilkan pohon yang sangat berbeda dalam dataset saya.
Tampaknya metode pertama akan selalu menghasilkan pohon yang lebih kompleks dan berpotensi overfitted. Apakah ada kelebihan, kekurangan, rekomendasi dalam literatur, dll. Saya harus mempertimbangkan ketika memutuskan metode mana yang akan digunakan? Saya dapat memberikan lebih banyak informasi tentang masalah pemodelan khusus saya jika itu akan berguna, tetapi saya mencoba untuk menjaga pertanyaan ini cukup luas agar relevan dengan orang lain.
party
paket yang menggunakan tes signifikansi (biasanya bukan sesuatu yang saya sarankan, tetapi tampaknya relevan di sini). Namun, seperti biasa, tes terbaik adalah kegunaan dan akal; ini terutama benar jika Anda terutama tertarik pada penjelasan.Jawaban:
Dalam praktiknya saya telah melihat kedua pendekatan yang diambil, dan saya pikir bahwa secara umum hasil Anda tidak akan diharapkan jauh berbeda.
Yang sedang berkata, Hastie et al merekomendasikan aturan "kesalahan satu standar" dalam Elemen Pembelajaran Statistik , dan saya cenderung mempercayai penilaian mereka (Bagian 7.10, hal. 244 dalam versi saya). Kutipan yang relevan adalah:
Intuisi Anda mengapa seseorang akan mengikuti aturan kesalahan satu standar adalah benar - Anda akan melakukannya untuk menghindari memilih model yang sesuai dengan data.
sumber
Pertama-tama Anda harus mulai dengan menggunakan argumen
minsplit=0
dancp=0
(parameter kompleksitas) kemudian menggunakan fungsiplotcp(T.max)
danprintcp(T.max)
memilih nilai yangcp
sesuai dengan kesalahan relatif minimum dan memangkas pohon dengan fungsiprune.rpart(T.max, cp=....)
Ini akan memberi Anda pohon klasifikasi yang optimal karena mereka cenderung terlalu optimis.
sumber