Karar Ağaçlarıyla Neden Adaboost?


11

Sınıflandırma görevleri ve özellikle Adaboost için algoritmaları artırma üzerine biraz okudum. Adaboost'un amacının birkaç "zayıf öğrenici" almak olduğunu ve eğitim verilerinin bir dizi yinelemesi yoluyla, sınıflandırıcıların, model (ler) in tekrar tekrar hata yaptığı sınıfları tahmin etmeyi öğrenmeye ittiğini anlıyorum. Ancak, yaptığım okumaların çoğunun neden zayıf sınıflandırıcı olarak karar ağaçlarını kullandığını merak ediyordum. Bunun özel bir nedeni var mı? Adaboost için özellikle iyi veya kötü adaylar yapan bazı sınıflandırıcılar var mı?


Kullanabileceğiniz en basit öğrenci derinliği = 1 olan karar ağacıdır. Belki de bu yüzden herkes bunu örneklerinde kullanır.
Aaron

Yanıtlar:


18

Bununla ilgili bir SO sorusuna bir cevapta konuştum . Karar ağaçları genellikle diğer algoritmalardan çok daha fazla artırmak için çok iyi bir seçimdir. Madde işareti / özet sürümü şudur:

  1. Karar ağaçları doğrusal değildir. Doğrusal modellerle güçlendirmek pek işe yaramaz.
  2. Zayıf öğrenenin rastgele tahmin etmekten tutarlı bir şekilde daha iyi olması gerekir. Bu davranışı elde etmek için normalde bir karar ağacına herhangi bir parametre ayarlaması yapmanız gerekmez. Bir SVM'nin eğitimi için gerçekten parametre araması gerekir. Veriler her yinelemede yeniden ağırlıklı olduğundan, her yinelemede başka bir parametre araması yapmanız gerekebilir. Böylece büyük bir farkla yapmanız gereken iş miktarını artırıyorsunuz.
  3. Karar ağaçlarının eğitimi oldukça hızlıdır. Onlardan 100 veya 1000'ler inşa edeceğimiz için, bu iyi bir özellik. Ayrıca sınıflandırmak hızlıdır, bu da kararınızı vermeden önce çalıştırmak için 100'lere veya 1000'lere ihtiyacınız olduğunda önemlidir.
  4. Derinliği değiştirerek, artırma / sapma ticareti üzerinde basit ve kolay bir kontrole sahip olursunuz, artırmanın önyargıyı azaltabileceğini ancak aynı zamanda varyansı önemli ölçüde azalttığını bilirsiniz. Arttırmanın gereğinden fazla takıldığı bilinir, bu nedenle ayarlanması kolay olan bu konuda yardımcı olur.

1

Ders kitabı cevabım yok. Ancak burada bazı düşünceler var.

Takviye, torbalama ile doğrudan karşılaştırılarak görülebilir. Bunlar önyargı varyans tradeoff ikileminin iki farklı yaklaşımıdır. Torbalamanın zayıf öğrenenler olmasına rağmen, düşük önyargı ve yüksek varyansa sahip bazı öğrenciler, torbalama grubunun ortalamasını alarak biraz önyargı için varyansı azaltır. Öte yandan, güçlendirmek farklı zayıf öğrencilerle iyi çalışır. Artan zayıf öğrenciler yüksek önyargı ve düşük varyansa sahiptir. Bir öğrenci diğerinin üzerine inşa edilerek, güçlendirici topluluk biraz sapma için önyargıyı azaltmaya çalışır.

Sonuç olarak, örneğin ağaçlarla torbalamayı ve güçlendirmeyi zayıf öğreniciler olarak kullanmayı düşünüyorsanız, kullanmanın en iyi yolu, takviye ile küçük / kısa ağaçlar ve torbalama ile çok ayrıntılı ağaçlar. Bu nedenle, genellikle bir artırma prosedürü, mümkün olan en kısa ağaç (tek bir boyutta tek bir koşul) olan zayıf öğrenici olarak bir karar kütüğü kullanır. Bu karar kütüğü çok kararlıdır, bu nedenle çok düşük varyansa sahiptir.

Artırıcı prosedürlerle ağaçları kullanmak için herhangi bir neden görmüyorum. Bununla birlikte, kısa ağaçlar basit, uygulanması ve anlaşılması kolaydır. Ancak, arttırıcı bir prosedürle başarılı olabilmek için zayıf öğrenicinizin düşük varyansa sahip olması, çok az serbestlik derecesinde katı olması gerektiğini düşünüyorum. Örneğin zayıf bir öğrenci olarak sinir ağına sahip olmamın bir anlamı yok.

Buna ek olarak, bir çeşit yükseltme prosedürü, örneğin gradyan yükseltme için, Breiman zayıf öğrenen bir ağaçsa, destekleme çalışmalarının nasıl yapılabileceği konusunda bazı optimizasyonların olduğunu bulmalısınız. Böylece gradyan arttırıcı ağaçlar var. ESTL kitabında olumlu bir artış var.

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.