Bu 3 yöntem arasındaki benzerlik ve farklar nelerdir:
- torbalama,
- Arttırılması,
- İstifliyorsun?
En iyisi hangisi? Ve neden?
Bana her biri için bir örnek verebilir misiniz?
Bu 3 yöntem arasındaki benzerlik ve farklar nelerdir:
En iyisi hangisi? Ve neden?
Bana her biri için bir örnek verebilir misiniz?
Yanıtlar:
Her üç "meta algoritmaları" sözde gibidir: yaklaşımları varyans (azaltmak için bir tahmin modeli içine birkaç makine öğrenme teknikleri birleştirmek için torbalama ), önyargı ( artırma ) veya akıllı gücünün gelişmesine ( istifleme takma ensemble ).
Her algoritma iki adımdan oluşur:
Orijinal verilerin alt kümelerinde basit ML modellerinin bir dağılımını üretmek.
Dağıtımı bir "toplanmış" modelde birleştirmek.
Her üç yöntemin de kısa bir açıklaması:
Torbalama (açılımı B ootstrap Agg Regat ing kullanarak orijinal veri kümesinden eğitim için ilave veriler elde göre tahmin varyansını azaltmak için bir yöntemdir) tekrarlar ile kombinasyonu üretmek için MULTISETS orijinal veri aynı önem düzeyi / boyutta. Eğitim setinizin boyutunu artırarak modelin öngörü kuvveti geliştiremezsiniz, ancak öngörüyü beklenen sonuca göre daraltmak için sadece varyansı azaltabilirsiniz.
Yükseltme , ilk olarak bir dizi ortalama performans modeli üretmek için orijinal verilerin altkümelerini kullandığı ve daha sonra belirli bir maliyet işlevi (= çoğunluk oyu) kullanarak bunları birleştirerek performanslarını "artırdığı" iki aşamalı bir yaklaşımdır. Torbalamadan farklı olarak, klasik desteklemede alt küme oluşturma rastgele değildir ve önceki modellerin performansına bağlıdır: her yeni alt küme, önceki modellerin yanlış sınıflandırdığı öğeleri içerir.
İstifleme artırmaya benzer: orijinal verilerinize birkaç model de uygularsınız. Bununla birlikte, buradaki fark, ağırlık işleviniz için sadece ampirik bir formüle sahip olmamanızdır, bunun yerine bir meta-seviye tanıtırsınız ve ağırlıkları tahmin etmek için her modelin çıktıları ile birlikte girdiyi tahmin etmek için başka bir model / yaklaşım kullanırsınız veya Başka bir deyişle, hangi modellerin iyi performans gösterdiğini ve bu girdi verisine ne verildiğini belirlemek.
İşte bir karşılaştırma tablosu:
Gördüğünüz gibi, bunların hepsi birkaç modeli daha iyi bir modelde birleştirmeye yönelik farklı yaklaşımlar ve burada tek bir kazanan yok: her şey etki alanınıza ve ne yapacağınıza bağlı. İstiflemeyi daha da artıracak bir dizi ilerleme olarak kabul edebilirsiniz , ancak meta seviyeniz için iyi bir yaklaşım bulma zorluğu bu yaklaşımı pratikte uygulamanızı zorlaştırır.
Her birine kısa örnekler:
Torbalama :
paralel topluluk: her model bağımsız inşa edilmiştir
amaçlayan varyansı azaltmak değil, önyargı
yüksek varyanslı düşük yanlı modeller için uygundur (karmaşık modeller)
ağaç tabanlı bir yönteme örnek olarak tamamen büyümüş ağaçlar gelişen rastgele ormanlar (RF'nin ağaçlar arasındaki korelasyonu azaltmak için yetiştirme prosedürünü değiştirdiğine dikkat edin)
Artırılması :
sıralı topluluk: önceki modellerin olmadığı yerlerde iyi olan yeni modeller eklemeye çalışın
sapmayı azaltmayı amaçlar , varyansı değil
düşük varyanslı yüksek önyargılı modeller için uygun
ağaç tabanlı bir yönteme örnek olarak gradyan artırma
Sadece Yuqian'ın cevabını biraz detaylandırmak için. Torbalamanın arkasındaki fikir, parametrik olmayan bir regresyon yöntemiyle (genellikle regresyon veya sınıflandırma ağaçları, ancak hemen hemen herhangi bir parametrik olmayan yöntem olabilir) OVERFIT yaptığınızda, önyargının yüksek bir sapmasına, hiçbir (veya düşük) yanlılığına gitme eğiliminde olmamanızdır. varyans değişimi. Bunun nedeni, çok esnek bir modelin çok esnek olmasıdır (eğer varsa, aynı popülasyondan birçok numuneye karşı çok düşük önyargılı olmaları) ancak değişkenliği yüksektir (eğer bir örnek toplar ve üst üste getirirsem, ve bir örnek toplar ve üst üste parametrik olmayan regresyonun verilerdeki gürültüyü takip etmesi nedeniyle sonuçlar farklılık gösterecektir). Ne yapabiliriz? Her biri fazla donatan ve her birini bir arada tutan birçok örnek alabiliriz (önyüklemeden). Bu aynı önyargıya (düşük) yol açmalı fakat bazı varyansı iptal etmeli,
Kalbinde yükselen gradyan UNDERFIT parametrik olmayan regresyonlarla çalışır, bunlar çok basittir ve bu nedenle verilerdeki gerçek ilişkiyi tanımlamak için yeterince esnek değildir (yani önyargılı) ancak uygun olmaları nedeniyle düşük varyansa sahiptir ( yeni veri setleri toplarsanız aynı sonucu elde etmek için). Bunun için nasıl düzeltiyorsunuz? Temel olarak, eğer uygun olursanız, modelinizin KONUTLARI hala faydalı bir yapı (nüfus hakkında bilgi) içerir, bu nedenle sahip olduğunuz ağacı (veya parametrik olmayan kestiriciyi ne olursa olsun) kalıntıların üzerine inşa edersiniz. Bu, orijinal ağaçtan daha esnek olmalıdır. Her seferinde, k-l adımındaki kalıntılara takılan bir ağaca dayanan ağırlıklı bir ağaç tarafından artırılan, her k adımında art arda daha fazla ağaç üretirsiniz. Bu ağaçlardan biri optimal olmalı, bu yüzden ya tüm bu ağaçları bir araya getirerek ya da en uygun olanı seçerek bitirdiniz. Bu nedenle degrade yükseltme, daha fazla sayıda esnek aday ağacı oluşturmanın bir yoludur.
Tüm parametrik olmayan regresyon veya sınıflandırma yaklaşımları gibi, bazen torbalama veya güçlendirme harika işler, bazen bir veya diğer yaklaşım vasattır ve bazen bir veya diğer yaklaşım (veya her ikisi) çarpışıp yanar.
Ayrıca, bu tekniklerin her ikisi de ağaçlar dışındaki regresyon yaklaşımlarına uygulanabilir, ancak bunlar genellikle ağaçlarla ilişkilendirilir, belki de takma veya takma işleminden kaçınmak için parametrelerin ayarlanması zordur.
Kısaca özetlemek için, Torbalama ve Yükseltme normal olarak bir algoritma içerisinde kullanılırken, İstifleme genellikle farklı algoritmalardan elde edilen birkaç sonucu özetlemek için kullanılır.
Random Forest
.GBM
ve XGBoost
varyans ortadan kaldırmak ancak aşırı oturma sorunun olduğunu.Hem torbalama hem de yükseltme, tüm adımlar için tek bir öğrenme algoritması kullanır; ancak eğitim örneklerinin işlenmesinde farklı yöntemler kullanıyorlar. her ikisi de birden fazla modelin kararlarını birleştiren basit öğrenme yöntemidir.
Torbalama :
1. M alt kümelerini (önyükleme) almak için eğitim verilerini yeniden örnekler ;
2. M veri setlerine (farklı örnekler) dayanarak M sınıflandırıcılarını (aynı algoritma) eğitir;
3. son sınıflandırıcı, M çıktılarını oylama yoluyla birleştirir;
eşit ağırlıkta örnekler;
sınıflandırıcılar eşit ağırlıkta;
varyans azaltarak hatayı azaltır
Arttırılması : burada Adaboost algoritması odak
ilk tur tüm numuneler için eşit ağırlık 1. başlangıç;
2. Aşağıdaki M-1 turlarında, son turda yanlış sınıflandırılmış numunelerin ağırlıklarını arttırın, son turda doğru şekilde sınıflandırılmış numunelerin ağırlıklarını azaltın
3. ağırlıklı oylama kullanarak, son sınıflandırıcı daha önceki turlardan birden fazla sınıflandırıcıyı birleştirir ve daha büyük ağırlıklar verir daha az yanlış sınıflandırma ile sınıflandırıcılar.
kademeli yeniden değerlendirme örnekleri; Her bir tur için ağırlıklar
, yeniden örnekleme (torbalama) yerine son tur tekrar ağırlık numunelerinden (takviye etme) elde edilen sonuçlara göredir.
Torbalama ve yükseltme, birçok homojen model kullanma eğilimindedir.
İstifleme, heterojen model tiplerinin sonuçlarını birleştirir.
Tek bir model türü, tüm dağıtım boyunca en uygun olma eğiliminde olmadığından, bunun neden tahmin gücünü arttırdığını görebilirsiniz.