Saya punya pertanyaan tentang parameter kedalaman interaksi dalam gbm di R. Ini mungkin pertanyaan noob, yang saya minta maaf, tetapi bagaimana parameternya, yang saya yakini menunjukkan jumlah terminal terminal dalam sebuah pohon, pada dasarnya menunjukkan X-way interaksi di antara para prediktor? Hanya mencoba memahami cara kerjanya. Selain itu, saya mendapatkan model yang sangat berbeda jika saya memiliki dataset dengan mengatakan dua variabel faktor yang berbeda versus dataset yang sama kecuali kedua variabel faktor tersebut digabungkan menjadi satu faktor (misalnya level X pada faktor 1, level Y pada faktor 2, variabel gabungan memiliki Faktor X * Y). Yang terakhir secara signifikan lebih prediktif daripada yang pertama. Saya pikir peningkatan kedalaman interaksi akan meningkatkan hubungan ini.
sumber
Tautan antara interaksi.depth dan jumlah node terminal
Satu untuk melihat
interaction.depth
sebagai jumlah node split. Suatuinteraction.depth
perbaikan pada k akan menghasilkan simpul-simpul dengan simpul terminal k + 1 (menghilangkan simpul-simpul NA), jadi kita memiliki:Tautan antara interaksi.depth dan urutan interaksi
Hubungan antara
interaction.depth
dan tatanan interaksi lebih membosankan.Alih-alih penalaran dengan interaction.depth, mari alasan dengan jumlah node terminal, yang kita akan disebut J .
Contoh: Misalkan Anda memiliki J = 4 node terminal (interaksi.depth = 3) Anda dapat:
Jadi, Anda tidak bisa tahu sebelumnya apa yang akan menjadi urutan interaksi antara fitur Anda di pohon tertentu. Namun dimungkinkan untuk nilai batas atas ini. Biarkan P menjadi urutan interaksi fitur dalam pohon yang diberikan. Kami memiliki: dengan n menjadi jumlah pengamatan. Untuk lebih jelasnya lihat bagian 7 dari artikel asli Friedman .
sumber
Jawaban sebelumnya tidak benar.
Tunggul akan memiliki interaksi. Tingkat 1 (dan memiliki dua daun). Tapi interaksi.depth = 2 memberi tiga daun.
Jadi: NumberOfLeaves = interaksi.depth + 1
sumber
Sebenarnya, jawaban sebelumnya salah.
yang setara dengan:
sumber
Anda dapat mencoba
tabel (prediksi (gbm (y ~., data = TrainingData, distribusi = "gaussian", verbose = FALSE, n.trees = 1, penyusutan = 0,01, bag.fraction = 1, interaksi.depth = 1), n.trees = 1))
dan lihat bahwa hanya ada 2 nilai prediksi unik. interaksi.depth = 2 akan memberi Anda 3 nilai prediksi yang berbeda. Dan yakinkan dirimu.
sumber