Partisi pohon di R: party vs rpart

15

Sudah lama sejak saya melihat pohon partisi. Terakhir kali saya melakukan hal semacam ini, saya suka pesta di R (dibuat oleh Hothorn). Ide inferensi bersyarat melalui pengambilan sampel masuk akal bagi saya. Tetapi rpart juga memiliki daya tarik.

Dalam aplikasi saat ini (saya tidak bisa memberikan rincian, tetapi itu melibatkan mencoba untuk menentukan siapa yang akan masuk penjara di antara sejumlah besar tahanan). Saya tidak dapat menggunakan metode canggih seperti hutan acak, mengantongi, meningkatkan dll. - Saya perlu penjelasan yang mudah aturan.

Saya juga ingin memiliki beberapa kontrol manual atas yang membelah node, seperti yang direkomendasikan dalam Zhang & Singer (2010) Partisi Rekursif dan Aplikasi . Freeware yang disertakan dengan buku itu memungkinkan ini, tetapi sebaliknya agak primitif dalam input penggunanya.

Ada rekomendasi atau saran?

Peter Flom - Pasang kembali Monica
sumber

Jawaban:

8

Saya setuju dengan @Iterator bahwa metodologi ini lebih mudah dijelaskan untuk rpart. Namun, jika Anda mencari aturan yang mudah dijelaskan, pesta (tanpa pohon kantong) tidak kehilangan apa pun sehubungan dengan menjelaskan prediksi - Anda masih memiliki satu pohon. Jika Anda juga tertarik untuk melihat driver dari variabel hasil (tidak hanya kekuatan prediksi murni) saya masih akan berpikir bahwa pihak adalah cara untuk pergi - menjelaskan bahwa pohon keputusan (seperti rpart) dapat cukup bias dalam memilih bagaimana variabel penting dan bagaimana hal itu menciptakan pemisahan. Pihak menggunakan tes permutasi dan secara statistik menentukan variabel mana yang paling penting dan bagaimana pemisahan dilakukan. Jadi, alih-alih condong ke variabel kategori dengan banyak tingkatan, seperti rpart misalnya, pihak menggunakan tes statistik untuk menemukan struktur terbaik.

B_Miner
sumber
1
Jawaban bagus. Saya pikir Anda telah menemukan alasan yang sangat bagus mengapa pesta lebih baik untuk audiens yang lebih maju, dan mengapa itu adalah ide yang baik untuk mendidik audiens untuk membantu mereka menerima penggunaan pesta.
Iterator
4

[NB: Lihat pembaruan 1 di bawah.] Saya menemukan metodologi untuk rpart jauh lebih mudah untuk dijelaskan daripada party. Yang terakhir, bagaimanapun, jauh lebih canggih dan cenderung memberikan model yang lebih baik. Cara saya kadang-kadang menjelaskan partyadalah dengan menyebutnya sebagai dasar untuk memproduksi model linear lokal (atau GLM). Saya membangun ini dengan menunjukkan hasil untukrpart adalah konstan di semua elemen yang jatuh ke simpul daun, yaitu kotak / wilayah yang dibatasi oleh pemisahan. Bahkan jika mungkin ada perbaikan melalui model lokal, Anda tidak mendapatkan apa pun selain prediksi konstan.

Sebaliknya, party mengembangkan pemisahan untuk berpotensi mengoptimalkan model untuk daerah. Ini sebenarnya menggunakan kriteria yang berbeda dari optimalitas model, tetapi Anda perlu mengukur kapasitas Anda sendiri untuk menjelaskan perbedaan untuk menentukan apakah Anda dapat menjelaskannya dengan baik. Makalah untuk itu cukup mudah diakses oleh seorang peneliti, tetapi mungkin cukup menantang bagi seseorang yang tidak mau mempertimbangkan metode yang lebih sederhana seperti hutan acak, meningkatkan, dll. Secara matematis, saya berpikir bahwaparty lebih canggih ... Meskipun demikian, model CART lebih mudah untuk menjelaskan, baik dalam hal metodologi dan hasil, dan ini memberikan batu loncatan yang layak untuk memperkenalkan model berbasis pohon yang lebih canggih.

Singkatnya, saya akan mengatakan bahwa Anda harus melakukan rpartuntuk kejelasan, dan Anda dapat menggunakan partyuntuk akurasi / kinerja, tetapi saya tidak akan memperkenalkan partytanpa memperkenalkanrpart .


Pembaruan 1. Saya mendasarkan jawaban saya pada pemahaman saya partyseperti satu atau dua tahun yang lalu. Ini telah tumbuh sedikit, tetapi saya akan memodifikasi jawaban saya untuk mengatakan bahwa saya masih merekomendasikan rpartuntuk singkatnya dan warisannya, jika "tidak suka" menjadi kriteria penting bagi klien / kolaborator Anda. Namun, saya akan mencoba bermigrasi untuk menggunakan lebih banyak fungsi dari party, setelah memperkenalkan seseorang rpart. Lebih baik memulai dari yang kecil, dengan fungsi kerugian, kriteria pemisahan, dll., Dalam konteks yang sederhana, sebelum memperkenalkan paket dan metodologi yang melibatkan konsep yang jauh lebih terlibat.

Iterator
sumber
2
Saya pikir Anda sedikit bingung tentang apa yang partybisa dilakukan paket. Fungsi murni partyhanya membuat satu pohon sederhana seperti rpartdengan suara terbanyak di daun. The mobfungsi dalam partyadalah apa membangun pohon dengan model yang lebih kompleks dalam daun (dan memilih perpecahan berdasarkan ketidakstabilan parameter.)
Shea Parkes
1
@SheaParkes Anda benar. Sudah lama, dan saya tidak yakin apakah saya hanya menggunakan mobatau jika sisa paket telah tumbuh cukup sedikit - saya tidak ingat melihat hutan acak sebelumnya, misalnya. Saya akan merevisi jawaban saya ...
Iterator
2
Dan sebenarnya, aku juga agak lupa. Ini ctreeuntuk membuat pohon tunggal, cforestuntuk membuat hutan acak dan mobuntuk membuat model berbasis daun. Dan fyi, hutan itu menyenangkan, tetapi sangat lambat untuk diprediksi.
Shea Parkes
Saya akan melihat ke kerumunan , saya tidak berpikir itu ada terakhir kali saya menggunakan pesta . Aplikasi hutan bukan untuk saya, kali ini.
Peter Flom - Reinstate Monica
@ Peterflom Saya pikir mobmungkin sudah ada sejak awal, atau setidaknya datang setelahnya ctree, saya kira. Sudah ada sejak 2009 atau sebelumnya. Ngomong-ngomong, langsung saja tunjukkan bahwa kita semua bisa belajar sesuatu yang baru di SE. :)
Iterator