Sınıflama veya regresyon için bir makine öğrenme hattı inşa ederken, yüzünüzün en erken seçimlerinden biri, karar ağaçları ve rastgele ormanlar en yaygın uygulanan modellerden ikisidir ve projeniz için uzun bir başarı kaydetmenize yardımcı olmak için pratik rehberlik sunar.

Bir Karar Ağacı Nedir?

Bir karar ağacı denetimli bir öğrenme algoritmasıdır, modeller kararlarını ve olası sonuçlarını bir ağaç benzeri bir yapı olarak kabul eder.Bu, veri kümesini, giriş özellikleri değerlerine dayanarak alt setlere döndürür, her bir iç düğümü bir test üzerinde bir testte temsil eder ve her bir yaprak tahmini sınıf etiketi (sınıflama) veya sürekli bir değer (regresyon) tutar.

Karar ağaçları şeffaflığı için ödüllendirildi. Tam olarak kökden bir yapraktan belirli bir tahminin neden yapıldığını anlamak için bir yol izleyebilirsin.Bu yorumlanabilirlik, yasal uyum veya hisse senedin kredi puanlama veya tıbbi tanı gibi alanlarının önüne geçilmesinin değerli olduğu alanlardadır.

Karar Ağaçları Karar Nasıl Yapar?

Ağaç inşa süreci, her düğümde bölmek için en iyi özelliği seçmekten oluşur. Ortak kriter bölmeler için [[Gini dürtüsü) ve [[Dörtücük için|seçmişlik için[Döneticiler için) içerir.[Döneticileri sıralaması (bilgiler kazanırken) regresyon ağaçları genellikle karesel hata azaltılır.

Örneğin, müşteri churn'i tahmin eden bir sınıflandırma görevinde, kök node “uzalama uzunluğu ≤ 12 ay” üzerinde bölünebilir.Eğer bu ayrılıkçılardan başka bir özellikten daha iyi bir şekilde ayrılırsa, bu işlem ilk karar haline gelir.

Ortak Hyperparametreler

Pratik karar ağacı uygulamaları, scikit- learning gibi, ağaç büyümesini kontrol eden ve aşırı yüklemeyi azaltan birkaç hiperparametre ortaya çıkar:

  • [FONT:0]max derinlemesine[[[Döntgen: 1)) - Ağacın ne kadar derin büyüyebileceğini sınırlar; derin ağaçlar aşırılıkta.
  • [FONT:0]min samples split) – Bir iç düğümü bölmek için gerekli olan en az sayıda örnek.
  • [FONT:0]min samples leaf[DÜT:1] – Bir broşürde izin verilen minimum sayıda örnek, modelin ve genelleştirmeye yardımcı olur.
  • [FONT:0]max features[[[Dönetici: 1 ) – En iyi bölünme ararken dikkate almak için özelliklerin sayısı. Bu rastgeleliği azaltmak ve performansı artırabilir.
  • [FONT=0]criterion[[Dönetici: 1) Ayrılık (örneğin, “g., “jin” veya “göçücük” sınıflandırma için “mse” (mese) ölçülmelidir.

Bu parametrelerin düzeltilmesi ve variance. kısıtlamalar olmadan, bir karar ağacı eğitim verilerini mükemmel bir şekilde ezberlemek, test set performansına yol açan.

Güçler ve Karar Ağacının Zayıflıkları

[0]Strengths:[Dönem:[Dönem: 1)

  • Anlaşılması ve görselleştirmek, hatta olmayanlar için.
  • Küçük veri işleme öncesi ( ölçeklendirme veya mumya değişkenleri için ihtiyaç yoktur).
  • Her iki sayısal ve kategorik verileri doğal olarak ele alın.
  • Özel mühendislik olmadan lineer olmayan ilişkileri yakalayabilir.
  • Yorumlanabilir - her öngörüyü bir dizi kuralla açıklayabilirsiniz.

[0]Bizler, [Dönler: [Dönler:)

  • Yüksek değişken: küçük veri değişiklikleri ağaç yapısını büyük ölçüde değiştirebilir.
  • Özellikle gürültülü veya yüksek boyutlu veriler üzerinde aşırılık sağlamak için Prone to overfitting, especially on gürültülü veya yüksek boyutlu veriler.
  • Genel olarak, benzer yöntemlere kıyasla daha düşük tahminsel doğruluk.
  • Instability: üst düğümdeki farklı bir bölünme tamamen farklı bir ağaca katılabilir.
  • Bazı sınıflar hükmetse önyargılı ağaçlar yaratabilir ( sınıf dengesizliği).

Bir Rastgele Orman Nedir?

rastgele bir orman, karar ağaçlarının bir koleksiyonu inşa eden ve çıktılarını doğru ve sağlamlığı geliştirmek için birleştiren bir yöntemdir: [[Üyetim:0)bagging) ve her bir bölmede, sadece rastgele bir alt kategori olarak kabul edilir.

rastgele ormanların gücü büyük sayılardan geliyor: daha fazla ağaç eklerken, genelleştirme hatası bir sınıra yakınlaşır.Bu, yüksek boyutla büyük veri kümelerini ele geçirebilirsiniz, eksik değerler ve doğa fedakarları tek bir ağacın doğrudan yorumlanabilirliğini feda eder.

Rastgele Ormanların Mekanikleri

rastgele bir orman eğitimi üç adım içerir:

  1. [FONT:0)Bootstrap örneklemesi:[Döntgen: 1) Createurpert:0) [FONTD:0)Bootstrap örneği: [Dönder:[Dönetici: 1)))[[tr|Döneticiler)[Döneticileri)[Döneticileri hariç, her örnek, aynı büyüklüktedir.
  2. [FONT:0]Tree binası:[Dönemli) Her bir bottrap örneği için, bir karar ağacının her birinde, seçili olmayan bir şekilde büyütülmesi.
  3. [FONT:0]Aggregation:[[Dönlendirme için], ağaçlardaki çoğunluk oy alır.Regresyon için, ortalama çıktılar.

[FONT:0]-of-bag (OOB) hatası) her ağaçta kullanılmadığı örneklerden hesaplanan bir genelleştirme hatasıdır.

Hiperparametre Tuning

rastgele ormanlarda Anahtar hiperparametreleri (scikit-öğrenme uygulamaları) içerir:

  • [FONT:0]n estimators[[Döntgenler:[Dönem: 1) - Ağaçların sayısı genellikle bir noktaya kadar performans geliştirir, geri dönüşleri azaltır.
  • [FONT:0]max features[[[Dönetici: 1 ) – rastgele özellik alt setinin boyutu rastgeleliği artırmakta ancak gürültülü özelliklerle yardımcı olabilir.
  • [FONT:0)max derinlemesine[[[Dönem: 1) - genellikle sınırsız (veya büyük) terk etti çünkü çanta zaten aşırı yüklemeyi azalttı.
  • [FONT:0]min samples leaf[DÜT:1) – Modeli düzeltebilecek daha yüksek olabilir, ancak genellikle küçük kaldı.
  • [FONT:0]bootstrap[Dönem: 1) Boolean bayrağı, onu, en iyi (en azından) bir “en iyi” olarak döndürür.

Rastgele ormanlar ayarlandığında oldukça kolaydır, çünkü tek ağaçlardan daha az hassastırlar. mantıklı bir başlangıç noktası UZD:0) ve [[DÜS 1: 1), OOB hatası veya çapraz-validasyona dayalı olarak ayarlanır.

Rastgele Orman Kullanınca

rastgele ormanları göz önünde bulundurun:

  • Tahmin edici doğruluk birincil hedeftir ve yeterli hesaplama kaynaklarınız var.
  • Veri setiniz büyük, yüksek boyutlu veya etkileşimler ve doğrusal olmayanlar içerir.
  • Hangi değişkenlerin tahminlerini anlaması için yerleşik önemli sıralamalara ihtiyacınız var.
  • Eksik veriler mevcut (günde ormanlar yakın tabanlı bir engel ile eksik değerleri idare edebilir, ancak açık bir engel tavsiye edilir).
  • Geniş hiperparametre ayar olmadan iyi genelleme yapan bir model istiyorsunuz.

Karar Ağaçları ve Rastgele Ormanları Karşılaştırmak

Aşağıdaki karşılaştırma, proje kararları ile ilgili iki boyuttaki kritik farklılıkları vurgulamaktadır.

Yorumability

[FONT:0)Decision ağacı:[Dönetici:0)) Tamamen yorumlanabilir. Ağacı görselleştirebilir ve açık kurallar elde edebilirsiniz. [FONTT:2|Random orman: Yoksul yorumlanabilirlik bir bütün olarak incelenebilir.

Doğru ve Genelleştirme

Rastgele ormanlar, çoğu gerçek dünya veri setlerinde doğrulukta tek karar ağaçları sürekli olarak ortaya koyarlar. Ensemble, daha iyi genelleştirmeye giden varyanlığı azaltır. Karar ağaçları genellikle aşırılık nedeniyle görünmez veriler üzerinde yaygın olarak görülür.

Overfitting and Variance

Karar ağaçları yüksek değişken modeller: Eğitim verilerindeki küçük bir değişiklik çok farklı bir ağaç üretebilir. Rastgele ormanlar birçok dekore edilmiş ağaçlar tarafından varyanları azaltır, onları daha sağlam hale getirir. Aslında, rastgele ormanlar nadiren daha fazla ağaç ekler; hata stabilliğe eğilimlidir.

C ⁇ Maliyet

Tek bir karar ağacı hızlı bir şekilde eğitilir. Rastgele ormanlar eğitim gerektirir.0.[Döneticiler:0) Ağaçlar, her bir oyuncak örneği üzerinde, her bir ağaç da hesaplamalı olarak pahalı olabilir. Ancak, ağaç eğitimi paralel olarak uygulanabilir ve modern donanım, rastgele ormanları mümkün kılar.

Eksik Data

Karar ağaçları, ekin çemberleri kullanarak bazı ölçüde eksik değerleri ele alabilir (scikit- learning bu yerli olarak uygulamaz; birçok uygulama da ayrı bir kategori olarak eksik davranır). Rastgele ormanlar da eksik verileri idare edebilir, ancak dürtüsel modeller doğrusal modellere kıyasla eksik değerlerin sağlam olduğu için önemlidir.

Özellik

Her iki model de önemli puanlar sağlayabilir. Karar ağaçları için, her özellik tarafından katkıda bulunan toplam azalmaya dayanmaktadır. Random ormanları birçok ağaç üzerinde bir süre boyunca daha istikrarlı ve güvenilir bir ölçü sağlar. Random Forest özelliği önemli özellikler özelliği özelliği özelliği özelliği özelliği özelliği özelliği için yaygın olarak kullanılır.

Stability and Robustness

Karar ağaçları kararsızdır - verideki küçük perturbasyonlar farklı bölmelere yol açar. Random ormanları stabildir; ensemble'nin tahminleri eğitim sürecindeki rastgeleliğe karşı duyarlıdır.

Scalability

Karar ağaçları, birçok ağaç depolamak için iyi bir şekilde ölçeklenebilir, ancak rastgele ormanlar boyutsal verileri üst düzeye çıkarabiliyor, ancak rastgele ormanlar boyut başına doğru bir avantaja sahip olabilir.

Hangileri kullanmalısınız? Karar Çerçeve

Bir karar ağacı ve rastgele bir orman arasındaki seçim, projenizin önceliklerine bağlıdır: Aşağıdaki yönergeleri kullanın:

  • [FONT:0) Eğer yorumlanabilirse:[Dönetici:0) Bir karar ağacıyla başlayın. Bunu ( max pl, min samples leaf) tekrarlamak için dikkatli olun.Eğer doğruluk hala yetersizse, yaklaşık model açıklamak için rastgele bir orman düşünün.
  • [FONT:0) Eğer doğruluk önemliyse:[Dönetici:[Dönetici: 0) Rastgele orman neredeyse her zaman daha iyi. karmaşık veriler üzerinde tek bir ağaç ortaya çıkar.Formler basit bir ağacın da genelleştirebileceği son derece küçük veri kümeleri içerir.
  • [FONT:0) Eğer hesaplama kaynakları sınırlıysa:[Dönetici: 1 ) Tek bir karar ağacı hafiftir. Ayrıca bir temel olarak sığ ağacı da deneyebilirsin.Eğer rastgele orman çok yavaşsa, gradient güçlendirme yöntemleri göz önünde bulundurun (ayrıca hesaplamalı yoğun olsa da).
  • [FONT:0) Eğer veri kümesi çok küçükse (örneğin, birkaç yüz örnekten daha az):) Dikkatli bir şekilde bir karar ağacı yeterli olabilir. Rastgele ormanlar hala çalışabilir ancak botlar da benzer olabilir.
  • [FONT:0) Eğer karışık veri türlerini ve eksik değerleri ele almak zorundasınız:[Dönetici 1 ) Her ikisi de baş edebilir, ancak ek ağaçlar (örneğin R'nin rpart) eksikliği için daha basit.
  • [FONT:0) Eğer prototyping ve hızlı iterasyona ihtiyacınız varsa: [Dönetici: 1] İlk önce bir karar ağacı kullanın ve size bir temel verir.

Pratik İpuçları

İşte bu algoritmaları veri bilimi iş akışınızda kullanmak için bazı el-on önerileri ( verilen glikit-do örnekleri).

  • [FONT:0) “Sessiz bir ağaçla başlayın.” (İngilizce).
  • [FONT=0) rastgele ormanlar için [Döneticiler için [Döneticiler için], [[GÖRTÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜŞÜNÜ
  • [FONT:0)Ana Sayfa Mühendisliği[[Dönetici: Her iki model de çiğ özellikleri iyi idare eder, ancak rastgele ormanlar bilgilendirici özelliklerden yararlanır.
  • [FONT:0]Handling dengesizlik sınıfları[Dönetici: UseETHFLT:10) veya akkanlık ormanlarında bulunan 5 adet karar ağaçları da ağırlıklandırılabilir.
  • [FONT:0]Hyperparametre ayar[[Döntgen: 1) rastgele ormanlar için, [[Üyetim: 12.Ş. ve [[DÜye Tarihi: 13.Bölüm: 0:0)) ve [[Gerçeği iyi değerleri bulmak için rastgele bir arama kullanın.
  • [FONT:0) Sorumluluk,[Dönetici][[Dönetici: Her iki doğruluka ve açıklığa ihtiyacınız varsa, tahminler için rastgele orman kullanın ve kararlarına bağlı olarak sığ bir karar ağacı kullanın (bir model ayrımı formu).

Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç

Karar ağaçları ve rastgele ormanlar hem güçlü araçlardır, ancak farklı ihtiyaçlara hizmet ederler. Karar ağaçları, eşsiz şeffaflık ve basitlik sunar, onları her tahminin kritik olduğunu anlayan keşifler için ideal kılar. Rastgele ormanlar, her zaman bir temel olarak daha yüksek doğruluk, sağlamlık için bir yorumla başlar. Çoğu gerçek dünya projesi için, özellikle de karmaşık, büyük veri setleri ile, rastgele bir ormanlık kazancını haklı çıkarırsa, daha güvenli ve daha etkili bir seçimdir.

Daha fazla okuma için, Breiman tarafından yapılan resmi incelemelere danışın () ve ;Wikipedia’nın karar ağacı öğrenmesine giriş)