GBM'de etkileşim derinliği ne demektir?


30

R'de gbm'deki etkileşim derinliği parametresi ile ilgili bir sorum vardı. Bu, özür dilediğim noob bir soru olabilir, ancak bir ağaçtaki terminal düğümlerinin sayısını belirttiğine inandığım parametre, temel olarak X-yolunu gösterir. öngörücüler arasındaki etkileşim? Sadece bunun nasıl çalıştığını anlamaya çalışıyorum. Ek olarak, bu iki faktör değişkeninin tek bir faktörde birleştirilmesi haricinde, aynı veri setine karşı iki farklı faktör değişkenini söyleyen bir veri setine sahipsem oldukça farklı modeller elde ediyorum (örneğin, faktör 1'deki X seviyeleri, faktör 2'deki Y seviyeleri, birleşik değişken X * Y faktörleri). İkincisi, öncekinden çok daha anlamlıdır. Etkileşim derinliğini arttırmanın bu ilişkiyi artıracağını düşünmüştüm.

Yanıtlar:


22

Her iki önceki cevaplar yanlıştır. Paket GBM interaction.depth, bir ağaçta gerçekleştirmesi gereken (tek bir düğümden başlayarak) bir dizi bölme olarak parametreyi kullanır . Her bölünme toplam düğüm sayısını 3, terminal düğüm sayısını 2 artırır (düğüm {sol düğüm, sağ düğüm, NA düğüm}) ağaçtaki toplam düğüm sayısı 3 N + 1 olur ve sayı Terminal düğümlerin 2 N + 1 . Bu, fonksiyonun çıkışına bakılarak doğrulanabilir .3N+12N+1pretty.gbm.tree

Davranış oldukça yanıltıcıdır, çünkü kullanıcı gerçekten derinliğin ortaya çıkan ağacın derinliği olmasını beklemektedir. O değil.


Burada N nedir: Düğüm sayısı, interaction.depth veya başka bir şey?
Julian

Tek bir düğümden (aynı zamanda etkileşim derinliği) başlayarak gerçekleştirilen bir dizi bölmedir.
rastgele

1
Sanırım her bölünme yalnızca toplam terminal düğüm sayısını 1 arttırıyor. Bu yüzden bir ağacın sadece bir bölünmesine sahip olduğunu varsayalım, sonra 2 terminal düğümüne sahip olacaksınız. şimdi düğümler. bu yüzden artış sadece 1'dir. Bunu doğru mu anladım ya da yanlış bir şey mi anladım?
Lily Long

1
@LilyLong Hemen anlaşılmayabilir, ancak gbm aslında NA değerlerini gruplayan üçüncü çocuk olan üç çocuğa düğümleri böler (yani, verilen değerle doğrudan karşılaştırılamayanlar). Bu, her bölünmenin düğüm sayısını iki katına çıkardığı anlamına gelir. Bu üçüncü çocuğu oluşturmaktan kaçınmak için en son kullandığımdan beri, paket gelişti, bu yüzden lütfen pretty.gbm.tree işlevini çalıştırarak bunu iki kez kontrol edin.
rastgele

2

R'de gbm'deki etkileşim derinliği parametresi ile ilgili bir sorum vardı. Bu, özür dilediğim noob bir soru olabilir, ancak bir ağaçtaki terminal düğümlerinin sayısını belirttiğine inandığım parametre, temel olarak X-yolunu gösterir. öngörücüler arasındaki etkileşim?

İnteraction.depth ve terminal düğüm sayısı arasındaki bağlantı

interaction.depthBölünmüş düğümlerin sayısı olarak görmek için. Bir interaction.depthk sabit k + 1 düğümleri neden olur , terminal düğümleri elimizdeki böylece, (NA düğümleri çıkarılır):

bennterbirctbenOn.depth=#{TermbennbirlN-Odes}+1

İnteraction.depth ve etkileşim sırası arasındaki bağlantı

interaction.depthEtkileşim sırası ile etkileşim sırası arasındaki bağlantı daha sıkıcı.

İnteract.depth ile akıl yürütme yerine, J olarak adlandıracağımız terminal düğüm sayısını düşünelim. .

Örnek: J = 4 terminal düğümünüz olduğunu varsayalım (interaction.depth = 3):

  1. kök üzerinde ilk bölmeyi, daha sonra kökün sol düğümündeki ikinci bölmeyi ve kökün sağ düğümündeki üçüncü bölmeyi yapın. Bu ağaç için etkileşim sırası 2 olacaktır.
  2. kök üzerinde ilk bölmeyi, daha sonra kökün sol (sırasıyla sağ) düğümündeki ikinci bölmeyi ve bu çok sol (sırasıyla sağ) düğümün üçüncü bölmesini yapın. Bu ağaç için etkileşim sırası 3 olacaktır.

Pmbenn(J-1,n)

1

Önceki cevap doğru değil.

Kütükler 1 ile bir etkileşime sahip olacaktır. Fakat interaction.depth = 2 üç yaprak verir.

Öyleyse: NumberOfLeaves = interaction.depth + 1


0

Aslında, önceki cevaplar yanlıştır.

N-=2(K+1)-1L=2K
Önceki 2 formül kolayca gösterilebilir: K derinlikli bir ağacın K + 1 seviyelerinin k (0'dan (kök seviyesinden) K'ya kadar) (yaprak seviyesinden) olduğu görülebilir.

2kdüğümleri. Ve ağacın toplam düğüm sayısı, her düzeydeki düğüm sayısının toplamıdır.

Matematiksel olarak:

N-=Σk=0K2k)

hangi eşdeğerdir:

N-=2(K+1)-1
(geometrik ilerleme terimlerinin toplamının formülüne göre).

0

Deneyebilirsin

tablo (tahmin (gbm (y ~., data = TrainingData, distribution = "gaussian", fiil = FALSE, n.trees = 1, büzülme = 0.01, bag.fraction = 1, interaction.depth = 1), n.trees = 1))

ve sadece 2 benzersiz öngörülen değer olduğunu görün. interaction.depth = 2 size 3 farklı öngörülen değeri verir. Ve kendini ikna et.


Bunun soruyu nasıl cevapladığı belli değil.
Michael R. Chernick
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.