Bagaimana memilih jumlah split dalam rpart ()?

9

Saya telah menggunakan rpart.controluntuk minsplit=2, dan mendapat hasil berikut dari rpart()fungsi. Untuk menghindari kelebihan data, apakah saya perlu menggunakan split 3 atau split 7? Haruskah saya menggunakan split 7? Tolong beritahu saya.

Variabel yang sebenarnya digunakan dalam konstruksi pohon:

[1] ct_a ct_b usr_a

Root node error: 23205/60 = 386.75

n= 60        

    CP nsplit rel error  xerror     xstd
1 0.615208      0  1.000000 1.05013 0.189409
2 0.181446      1  0.384792 0.54650 0.084423
3 0.044878      2  0.203346 0.31439 0.063681
4 0.027653      3  0.158468 0.27281 0.060605
5 0.025035      4  0.130815 0.30120 0.058992
6 0.022685      5  0.105780 0.29649 0.059138
7 0.013603      6  0.083095 0.21761 0.045295
8 0.010607      7  0.069492 0.21076 0.042196
9 0.010000      8  0.058885 0.21076 0.042196
samarasa
sumber
1
Saya menjawab ini dalam tindak lanjut yang Anda posting ke Q sebelumnya. Karena itu, tidak perlu untuk ini. Saya sebutkan bahwa Anda tidak boleh mengedit Q untuk tindak lanjut untuk referensi di masa mendatang !
Gavin Simpson
1
Untuk menghindari pencarian pertanyaan terkait di masa mendatang, berikut adalah tautan ke Q sebelumnya: stats.stackexchange.com/questions/13446/… .
chl

Jawaban:

10

Konvensi tersebut adalah untuk menggunakan pohon terbaik (kesalahan relatif validasi silang terendah) atau pohon terkecil (paling sederhana) dalam satu kesalahan standar pohon terbaik. Pohon terbaik di baris 8 (7 split), tetapi pohon di baris 7 (6 split) efektif melakukan pekerjaan yang sama ( xerroruntuk pohon di baris 7 = 0,21761, yang berada dalam (lebih kecil) xerrordari pohon terbaik ditambah satu standar kesalahan,, xstd(0,21076 + 0,042196) = 0,252956) dan lebih sederhana, maka 1 aturan kesalahan standar akan memilihnya.

Gavin Simpson
sumber