Apa sisi lemah dari pohon keputusan?

34

Pohon keputusan tampaknya merupakan metode pembelajaran mesin yang sangat dimengerti. Setelah dibuat dapat dengan mudah diperiksa oleh manusia yang merupakan keuntungan besar dalam beberapa aplikasi.

Apa sisi lemah praktis dari Pohon Keputusan?

Łukasz Lew
sumber

Jawaban:

37

Berikut adalah beberapa yang dapat saya pikirkan:

  • Mereka bisa sangat sensitif terhadap gangguan kecil dalam data: sedikit perubahan dapat menghasilkan pohon yang berbeda secara drastis.
  • Mereka dapat dengan mudah berpakaian. Ini dapat dinegasikan dengan metode validasi dan pemangkasan, tetapi ini adalah area abu-abu.
  • Mereka dapat memiliki masalah prediksi out-of-sampel (ini terkait dengan mereka menjadi tidak lancar).

Beberapa di antaranya terkait dengan masalah multikolinieritas : ketika dua variabel keduanya menjelaskan hal yang sama, pohon keputusan akan dengan rakus memilih yang terbaik, sedangkan banyak metode lain akan menggunakan keduanya. Metode ensemble seperti hutan acak dapat meniadakan ini sampai batas tertentu, tetapi Anda kehilangan kemudahan pemahaman.

Namun masalah terbesar, dari sudut pandang saya setidaknya, adalah kurangnya kerangka kerja probabilistik. Banyak metode lain yang memiliki hal-hal seperti interval kepercayaan, distribusi posterior dll, yang memberi kita beberapa gagasan tentang seberapa baik model. Pohon keputusan pada akhirnya adalah heuristik ad hoc, yang masih bisa sangat berguna (mereka sangat baik untuk menemukan sumber bug dalam pemrosesan data), tetapi ada bahaya orang memperlakukan output sebagai "model" yang benar (dari saya pengalaman, ini banyak terjadi dalam pemasaran).

Simon Byrne
sumber
2
Dari sudut pandang ML, pohon dapat diuji dengan cara yang sama seperti penggolong lain (misalnya CV). Tetap saja itu agak menunjukkan bahwa pakaian tebal terjadi ;-) RF juga lolos multicollinearity bukan karena itu ansambel, tetapi karena pohon-pohonnya tidak optimal.
2
Untuk kerangka kerja probabilistik dari pohon keputusan, lihat DTREE (url: datamining.monash.edu.au/software/dtree/index.shtml ) yang didasarkan pada kertas "Wallace CS & Patrick JD,` Coding Decision Trees ', Machine Learning , 11, 1993, pp7-22 ".
emakalic
2
Juga, bukankah mungkin untuk mendapatkan CI (untuk prediksi) menggunakan bootstrap?
Tal Galili
@Simon Byrne, saya punya pertanyaan tentang komentar Anda "Namun masalah terbesar, dari sudut pandang saya setidaknya, adalah kurangnya kerangka kerja probabilistik yang berprinsip". Maafkan ketidaktahuan saya, tetapi bisakah Anda mengarahkan saya ke beberapa kerangka kerja probabilistik yang praktis (khususnya dalam konteks klasifikasi). Saya sangat tertarik dengan batasan pohon keputusan ini.
Amelio Vazquez-Reina
2
@ AmV, salah satu contoh akan menjadi regresi logistik: kita dapat menggunakan fakta bahwa setiap pengamatan berasal dari binomial untuk mendapatkan interval kepercayaan / kredibel dan memeriksa asumsi model.
Simon Byrne
23

Salah satu kelemahannya adalah semua istilah diasumsikan berinteraksi. Artinya, Anda tidak dapat memiliki dua variabel penjelas yang berperilaku mandiri. Setiap variabel dalam pohon dipaksa untuk berinteraksi dengan setiap variabel lebih jauh ke atas pohon. Ini sangat tidak efisien jika ada variabel yang tidak memiliki atau interaksi lemah.

Rob Hyndman
sumber
Saya ingin tahu apakah ini adalah batasan praktis - untuk variabel yang hanya memengaruhi klasifikasi dengan lemah, intuisi saya adalah bahwa Tree tidak akan mungkin terpecah pada variabel itu (yaitu, itu tidak akan menjadi sebuah node) yang pada gilirannya berarti itu tidak terlihat sejauh klasifikasi Pohon Keputusan berjalan.
doug
Saya berbicara tentang interaksi yang lemah, bukan efek yang lemah pada klasifikasi. Interaksi adalah hubungan antara dua variabel prediktor.
Rob Hyndman
2
Ini mungkin tidak efisien, tetapi struktur pohon dapat menanganinya.
Itu sebabnya saya katakan tidak efisien daripada bias atau salah. Jika Anda memiliki banyak data, itu tidak masalah. Tetapi jika Anda memasukkan pohon ke beberapa ratus pengamatan daripada interaksi yang diasumsikan dapat sangat mengurangi akurasi prediksi.
Rob Hyndman
2
Setuju; Saya hanya ingin menyorotnya. Namun saya masih berpikir bahwa pengurangan akurasi prediksi dapat dihilangkan dengan menggunakan pelatihan yang tepat; dalam filogenetika masalah yang sama (keserakahan) berkurang oleh pemindaian Monte Carlo dari ruang pohon yang mungkin untuk menemukan kemungkinan maksimum - saya tidak tahu apakah ada pendekatan yang serupa dalam statistik, mungkin tidak ada yang terganggu oleh masalah ini seperti tingkat.
12

Jawaban saya diarahkan ke CART (implementasi C 4.5 / C 5) meskipun saya pikir tidak terbatas pada itu. Dugaan saya adalah bahwa inilah yang ada dalam pikiran OP - biasanya itulah yang dimaksud seseorang ketika mereka mengatakan "Pohon Keputusan."

Keterbatasan Pohon Keputusan :


Performa Rendah

Dengan 'kinerja' saya tidak bermaksud resolusi, tetapi kecepatan eksekusi . Alasan mengapa itu buruk adalah bahwa Anda perlu 'menggambar ulang pohon' setiap kali Anda ingin memperbarui model CART Anda - data yang diklasifikasikan oleh Pohon yang sudah terlatih, yang kemudian ingin Anda tambahkan ke Pohon (yaitu, gunakan sebagai poin data pelatihan) mengharuskan Anda mulai dari contoh pelatihan berlebihan tidak dapat ditambahkan secara bertahap, karena dapat untuk sebagian besar algoritma pembelajaran lainnya yang diawasi. Mungkin cara terbaik untuk menyatakan ini adalah bahwa Pohon Keputusan tidak dapat dilatih dalam mode online, melainkan hanya dalam mode batch. Jelas Anda tidak akan melihat batasan ini jika Anda tidak memperbarui classifier Anda, tetapi kemudian saya akan berharap bahwa Anda melihat penurunan resolusi.

Ini penting karena untuk Multi-Layer Perceptrons misalnya, setelah dilatih, maka ia dapat mulai mengklasifikasikan data; data itu juga dapat digunakan untuk 'menyempurnakan' penggolong yang sudah terlatih, meskipun dengan Decision Trees, Anda perlu melatih ulang dengan seluruh kumpulan data (data asli yang digunakan dalam pelatihan plus setiap instance baru).


Resolusi Buruk pada Data Dengan Hubungan Kompleks Di Antara Variabel

Pohon Keputusan mengklasifikasikan berdasarkan penilaian langkah-langkah dari titik data dari kelas yang tidak diketahui, satu simpul pada satu waktu, mulai dari simpul akar dan diakhiri dengan simpul terminal. Dan pada setiap node, hanya dua kemungkinan yang mungkin (kiri-kanan), maka ada beberapa hubungan variabel yang tidak bisa dipelajari oleh Decision Trees.


Praktis Terbatas pada Klasifikasi

Pohon Keputusan bekerja paling baik ketika mereka dilatih untuk menetapkan titik data ke kelas - lebih disukai satu dari hanya beberapa kelas yang mungkin. Saya tidak percaya saya pernah sukses menggunakan Decision Tree dalam mode regresi (yaitu, output terus menerus, seperti harga, atau pendapatan seumur hidup yang diharapkan). Ini bukan batasan formal atau inheren tetapi yang praktis. Sebagian besar waktu, Pohon Keputusan digunakan untuk prediksi faktor atau hasil yang terpisah.


Resolusi Buruk Dengan Variabel Ekspektasi Berkelanjutan

Sekali lagi, pada prinsipnya, tidak masalah untuk memiliki variabel independen seperti "waktu pengunduhan" atau "jumlah hari sejak pembelian online sebelumnya" - cukup ubah kriteria pemisahan Anda menjadi varian (biasanya Entropi Informasi atau Gini Impurity untuk variabel diskrit) tetapi dalam alami Pohon Keputusan jarang bekerja dengan baik dalam hal ini. Pengecualian adalah kasus-kasus seperti "usia siswa" yang terlihat terus menerus tetapi dalam praktiknya kisaran nilai cukup kecil (terutama jika mereka dilaporkan sebagai bilangan bulat).

doug
sumber
1
+1 untuk panggilan yang baik pada sudut kinerja, yang biasanya tidak mendapatkan cukup banyak permainan. Saya telah melihat Pohon Keputusan mengalami masalah kinerja pada beberapa platform perangkat lunak yang dirancang untuk kumpulan data besar (seperti SQL Server), setidaknya dibandingkan dengan metode penambangan data lainnya. Ini terlepas dari seluruh masalah pelatihan ulang yang Anda ajukan. Tampaknya memburuk dalam kasus-kasus di mana overfitting terjadi (walaupun itu bisa dikatakan banyak algoritma penambangan lainnya).
SQLServerSteve
10

Ada jawaban yang bagus di sini, tetapi saya terkejut bahwa ada satu hal yang belum ditekankan. CART tidak membuat asumsi distribusi tentang data, terutama variabel respon. Sebaliknya, regresi OLS (untuk variabel respons kontinu) dan regresi logistik (untuk variabel respons kategoris tertentu), misalnya, memang membuat asumsi kuat; secara khusus, regresi OLS mengasumsikan respons terdistribusi secara kondisional, dan logistik mengasumsikan responsnya binomial atau multinomial.

Kurangnya asumsi seperti CART adalah pedang bermata dua. Ketika asumsi-asumsi itu tidak dijamin, ini memberi pendekatan keuntungan relatif. Di sisi lain, ketika asumsi-asumsi itu berlaku, lebih banyak informasi dapat diambil dari data dengan mempertimbangkan fakta-fakta tersebut. Artinya, metode regresi standar bisa lebih informatif daripada CART ketika asumsi itu benar.

gung - Pasang kembali Monica
sumber