Aşırı uzanma, normalleşme ve erken durdurma

Rastgele ormanlardan farklı olarak, gradyan takviyeli ağaçlar uyarlanabilir. Bu nedenle, nöral ağlarda olduğu gibi, doğrulama veri kümesi kullanarak normalleştirme uygulayabilir ve erken durdurabilirsiniz.

Örneğin, aşağıdaki şekillerde bir GBT modeli eğitilirken kayıp ve doğruluk eğrileri görebilirsiniz. Eğrilerin ne kadar birbirinden farklı olduğuna dikkat edin. Bu, yüksek düzeyde sığma anlamına gelir.

Karar ağaçlarının sayısına kıyasla eğitim kaybı ve doğrulama kaybı parselleri. Karar ağaçlarının sayısı arttıkça eğitim kaybı da kademeli olarak azalır. Ancak doğrulama kaybı yaklaşık 40 karar ağacına kadar azalır. 40'tan fazla karar ağacıyla doğrulama kaybı aslında artar. 400 karar ağacıyla eğitim kaybı ve doğrulama kaybı arasında dev bir fark vardır.

Şekil 29. Kaybetme ile karar ağaçlarının sayısı karşılaştırması.

 

Karar ağaçlarının sayısına kıyasla eğitim doğruluğu ve doğrulama doğruluğunun parselleri. Karar ağacı sayısı arttıkça eğitim doğruluğu da kademeli olarak artar.400 karar ağacında neredeyse 1, 0 zirveye ulaşılır. Doğrulama doğruluğu 40 karar ağacında yaklaşık 0,86'ya, ardından 400 karar ağacında kademeli olarak 0,83'e düşer.

Şekil 30. Doğruluk ve karar ağaçlarının sayısı.

 

Renk geçişi artırılan ağaçlar için yaygın olarak yapılan normalleştirme parametreleri şunlardır:

  • Ağaçın maksimum derinliği.
  • Daraltma oranı.
  • Her bir düğümde test edilen özelliklerin oranı.
  • Kayıplardaki L1 ve L2 katsayısı.

Karar ağaçlarının genellikle rastgele orman modellerinden çok daha yavaş büyüdüğünü unutmayın. Varsayılan olarak, TF-DF'deki gradyan takviyeli ağaçlar derinlik 6'ya yükseltilir. Ağaçlar sığ olduğundan, yaprak başına minimum örnek sayısı çok az etki gösterir ve genellikle ayarlanmaz.

Eğitim veri örneğinin sayısı az olduğunda, doğrulama veri kümesi gerekliliği sorun oluşturur. Bu nedenle, genellikle gradyan takviyeli ağaçları çapraz doğrulama döngüsü içinde eğitmek veya modelin aşırı sığmadığı bilindiğinde erken durdurmayı devre dışı bırakmak yaygın bir durumdur.

Kullanım örneği

Önceki bölümde, küçük bir veri kümesi üzerinde rastgele bir orman eğittik. Bu örnekte, rastgele orman modelini gradyan takviyeli bir ağaç modeli ile değiştireceğiz:

model = tfdf.keras.GradientBoostedTreesModel()

# Part of the training dataset will be used as validation (and removed
# from training).
model.fit(tf_train_dataset)

# The user provides the validation dataset.
model.fit(tf_train_dataset, validation_data=tf_valid_dataset)

# Disable early stopping and the validation dataset. All the examples are
# used for training.
model.fit(
   tf_train_dataset,
   validation_ratio=0.0,
   early_stopping="NONE")
# Note: When "validation_ratio=0", early stopping is automatically disabled,
# so early_stopping="NONE" is redundant here.

Kullanım ve sınırlamalar

Kademeli olarak güçlendirilen ağaçların avantajları ve dezavantajları vardır

Artıları

  • Karar ağaçlarında olduğu gibi, sayısal olarak ve kategorik özellikleri yerel olarak desteklerler ve genellikle özellik ön işlemesi gerekmez.
  • Kademeli güçlendirilmiş ağaçlar, genellikle harika sonuçlar sağlayan varsayılan hiperparametrelere sahiptir. Yine de bu hiperparametrelerde ayarlamalar yapmak, modeli önemli ölçüde iyileştirebilir.
  • Kademeli güçlendirilmiş ağaç modelleri genellikle küçüktür (düğüm sayısı ve bellek cinsinden) ve hızlı çalışır (genellikle yalnızca bir veya birkaç μ / örnek).

Eksileri

  • Karar ağaçları sırayla eğitilmelidir. Bu da eğitimi önemli ölçüde yavaşlatabilir. Ancak karar alma ağaçlarının küçülmesi, eğitimdeki yavaşlamayı bir miktar dengeli hale getiriyor.
  • Rastgele ormanlar gibi, gradyan takviyeli ağaçlar da dahili temsilleri öğrenip yeniden kullanamaz. Her karar ağacının (ve her karar ağacının her bir dalının) veri kümesi kalıbını yeniden öğrenmesi gerekir. Bu durum, bazı veri kümelerinde, özellikle yapılandırılmamış veriler içeren veri kümelerinde (örneğin, resimler, metin) gradyan takviyeli ağaçların diğer yöntemlerden daha kötü sonuçlar göstermesine neden olur.