Karar ağaçları, her iki sınıflandırma ve regresyon için en çok yorumlanabilir ve yaygın olarak kullanılan makine öğrenme algoritmalarından biri olarak kalır.Onlara, analizler ve veri bilim adamları için çok daha iyi bir şekilde bağlı olarak, ancak, herhangi bir karar ağacının performansı - rastgele bir orman veya bir gradient-boosted ensemble-buluştuğunun ötesindeki temelsel bir şekilde doğrulayıcı veri işlemeye yönelik verileri doğru bir şekilde genişletir.

Neden Karar Ağaçları için Maddeleri

Diğer birçok makine öğrenme modellerinin aksine (örneğin, lineer regresyon, sinir ağları), karar ağaçları belirli veri kusurlarına nispeten sağlamdır. Örneğin, açık özellik mühendisliği olmadan lineer olmayan ilişkileri idare edebilir ve monoton özellikler için değişmezler.

  • [FONT:0)Handling Inconsistent Data: Eksik değerler, tipler veya yanlış kategoriler, gerçek kalıpları yansıtmayan veya yanlış olmayan modelleri ortaya çıkarmak için ağaç neden olabilir.
  • [FONT:0) Kompleksiyetin azaltılması:[Dönetici:[Dönetici:0))[Dönetici:[Dönetici: 0)) Irrelevant veya redüpt özellikleri gürültüyü ortaya çıkarır, ağaç derinliğini arttırır ve aşırı yükleme riskini arttırır.
  • [[Dönetici:0)Reterability:[Dönetici:[Dönetici:0) Temiz, iyi kodlanmış veriler, alan uzmanlarının kolayca anlayabileceği ve doğrulayabildiği anlamlı bölünmüşlere sahip ağaçlar verir.
  • [FONT:0]Enabling Ensemble Yöntemleri: rastgele ormanlar ve gradient güçlendirme gibi teknikler, birçok ağaç topladıkları için veri kalitesine daha duyarlıdır. Pre processinging, her ağacın yüksek kaliteli sinyallerden öğrenmesini sağlar.

Karar ağaçları için etkili bir işlem, verilerin doğal yapısını korumak ve bölme kriterini (örneğin Gini impurity veya entropi) yanlış yönlendirecek engelleri ortadan kaldırmak arasında bir denge vurmaktadır.

Eksik Veriler: Basit Takdir Edilmeden Daha Fazla

Eksik veriler gerçek dünya veri setlerinde ubiquitoustir. Karar ağaçları kısmen eksik değerleri idare edebilir - bazı uygulamalar (örneğin, scikit-do) eksik değerleri kullanarak ayırt edebilir “surrogate bölünmüşler” ancak, bu inşa edilmiş mekanizmaya güvenen altoptimal, özellikle eksik verilerin miktarı bilgilendirici olduğunda.

Eksikliği Tanımlama Mechanisms

Bir yöntem seçmeden önce, verilerin eksik olduğunu anlayın:

  • [MCAR: [MCAR'da Tamamen Bir Şeye Sahip Olanlar: [Dönetici:0) Bu kayıtların silinmesi, ancak atık vericidir.
  • [FONT:0)Doğada (MAR): [Dönetici: 0:0) Eksiklik diğer gözlemlenen değişkenlere bağlıdır (örneğin, kadınlar ağırlık sorununu atlatmak daha olasıdır).Diğer değişkenleri kullanan Imputation iyi çalışır.
  • [FONT:0)Doğanda Değil (MNAR): [Dönetici: 1) Eksiklik, kendini kurtarılmamış değere bağlıdır (örneğin, çok yüksek gelire sahip insanlar gelirleri rapor etmeyi reddederler). Bu zor; böyle durumlarda “kabul edici bir sütunu” kullanarak düşünün.

Imputation Techniques

[FONT:0]Simple imputation[[Dönetici: 0,8|Dönersiz, e-posta:0))) Basit bir şekilde, ağaç kendi yapısını kullanmak için daha iyi bir yaklaşımdır: diğer tüm özellikleri kullanarak verilen bir özellik için eksik değerleri trenletir.Bu aslında model tabanlı bir engeldir.

[FONT:0) Büyük eksiklik için (örneğin, bir özellikteki çiftliğin% 50'si):) Bu göstergelerin tamamen ortadan kaldırılmasına izin vermek, bir “tavaplama” kategorisinin kedisel değişkenleri veya bayrak eksikliğini sağlamak, sayısal özellikleri için bir gösterge olarak bir gösterge olarak bir çiftliği ortadan kaldırmak.

[FONT:0) Önerilen kütüphaneler:[Dönemli:2)[Döntilmişler için [Döntilmişler için, [[Döntilmiş kütüphaneler:[Dönler:0)[Dönekli stratejiler için ).

Categorical Değişkenler: Bias olmadan Preserving Order

Karar ağaçları sayısal girdi gerektirir. Kodlama kategorilerini sayılara dönüştürür, ancak encoding yönteminin seçimi ağacın bölme davranışını güçlü bir şekilde etkiler. anahtar, var olmayan yapay veyadinal ilişkileri tanıtmaktan kaçınmaktır.

Etiket vs. Ordinal Kategoriler

  • [FONT=0)Ordinal kategoriler[Döneticiler[Dönderler) Doğal bir düzene sahip (örneğin, eğitim seviyesi: yüksek okul < bachelor’s < master’s). Use ).Label Encoding) (assign tamsa 0,1,2, ...) ve ağaç, hedefle uyumlu bir şekilde ayarlandığında siparişi alır.
  • [FONT=0]Nominal kategoriler[Dönetici: 1 )[değiştir | kaynağı değiştir][değiştir | kaynağı değiştir][değiştir | kaynağı değiştir]: Bu, her kategori için bir ikili sütunu oluşturmak için bir araya gelir.

Karar Ağaçları için Gelişmiş Teşvik

Bazı uygulamalar ( LightGBM ve CatBoost gibi) yerleşik kategorik kullanımlar inşa edilmiştir. Örneğin, kartelasyon düşükse hedef kodlamayı sipariş eder.Eğer çok büyük kartinality (örneğin, 1000+) kullanarak bir ağaç inşa ediyorsanız, farklı kodlama seçenekleri ile performansa ihtiyacınız olacaktır; bazen basit bir tek-hot kodlamalı yöntemler.

Özellik: Maddeler ve Ne Zaman Değil

Karar ağaçları monoton dönüşümlere (scaling, logarithm, vs.) bağlı olarak bölünmüşlerdir, çünkü özellikteki iç dağıtıma göre eşlerce bölünmüşlerdir.(0,1) aynı bölmelere yardımcı olur: ağaç sadece eşiği ayarlandığında.

  • [FONT:0)Ensemble yöntemleri[[[Döneticisel yükseltilme gibi) ölçeklenen özelliklerden yararlanan düzenli olarak kullanılabilir (örneğin XGBoost’un “max delta step’ parametresi).
  • [FONT:0) Diğer algoritmaları ile Kombine ([Dönetici: 1 ), PCA'yı karar ağacı önünde boyutsalliği azaltmak için kullanmak, büyük ölçekli temel bileşenlerle özelliklerini önlemek için ölçeklendirmek gerekir.
  • [FONT:0)Visualization and yorumability:) Scaling farklı birimlerde ölçülen özelliklerin tartışılması daha kolay olabilir.

ölçeklendirmeyi seçerseniz, [[0)Min-Max ölçeklendirme[Dönetici:0) veya [-1,1] veya [-1,1] veya [-1,1]) veya [DÜye Olmayanlar:2Standartizasyon[DÜye Olmayanlar)[Dönderler.

Outliers: Ağacın Karar vermesine İzin Ver (Enly)

Karar ağaçları oldukça dirençlidir. Çünkü bölünmeler sipariş istatistiklerine dayanmaktadır, tek bir aşırı değer sadece lineer modellerden farklı olarak, outliers tüm modeli çekmiyor. Ancak, outliers hala sorunlara neden olabilir:

  • [Düzücü ağaç derinliği:[Dönetici: 0,4] Bir ağaç birkaç outlier puanını izole etmek için birçok bölünmüş oluşturabilir, aşırı yüklemeye yol açabilir.
  • [FONT:0)Noisy bölünmüşler:[Döncüler genelleştirilmeyen sahte bölgeler oluşturabilirler, özellikle eksik verilerle birleştirilirse.

En iyi uygulama, skewness'i azaltmak için bir log veya Box-Cox dönüşümü kullanmak içindir, ancak ağacın makul bir yüzde 1'inde aşırı değerlerin (örneğin, 1. ve yüzde 99ileler için) nadiren değiştirilmesi anlamına gelir.

Özel Seçim: Daha Az Daha Fazla

Karar ağaçları otomatik olarak, birçok sorumsuz özellik dahil olmak üzere bölünmüşleri seçerek bir tür özellik seçimi gerçekleştirebilir:

  • [FONT:0) Dilleşme:[Dönetici:[Dönetici: 0) Ağacı, özellikle küçük veri kümeleri nedeniyle yüksek bilgi kazanılması gereken gürültülü bir özellikte yanlışlıkla bölünebilir.
  • [FONT:0)Increased hesaplama maliyeti:) Daha fazla özellik daha aday bölünmüştür, yavaş eğitim anlamına gelir.
  • [FONT:0)Genelleştirme:[Dönetici:[Dönetici:)) Ağacın gereksiz derecede karmaşık hale gelebileceği.

Kullanım:0) filtreleme yöntemleri[[Dönetici:0))[Dönetici:0)))))))))En basit ve etkili bir yaklaşım, ilk ağacı veya rastgele ormanı eğitmek için, sonra özellik önemini incelemektir.

Gelişmiş Preprocessing Teknikleri

Binme ve Disiplin

Karar ağaçları doğal olarak bölünmüş noktalarda sürekli olarak çalışır. ancak, [[Düzg:0) Sürekli özellikleri ) küçük bir dizi bine kadar (örneğin, “yetişkin”, “daha fazla sezgisel bölünmeler kullanarak) bazen karar ağacının yorumlanabilirliği ve azaltılması, özellikle de mülk ve hedef arasındaki ilişki monoton değildir. Örneğin, yaş “çocuk”, “çocuk”, “yetişkin”, “senior”, “daha sezgisel bölünmeler yaratabilir.

Interaction Özellikler Oluşturma

Karar ağaçları, hierarşik bölünmeler yoluyla etkileşimleri yakalar (örneğin, yaş üzerinde ilk bölünmüştür, sonra gelir). Ancak bir etkileşim oldukça tahmin ediciyse ve düşük bir özellikte bir özellik daha artırırsa, ağaç, birçok etkileşim modelini (günah ormanı) otomatik olarak bir araya getirmek için birçok bölmeye ihtiyaç duyar.

Imbalanced Data

Hedef sınıflar ağır dengesizlik olduğunda (örneğin, %1 dolandırıcılık ile dolandırıcılık tespiti), karar ağaçları çoğunluk sınıfına karşı önyargılı hale gelir. Preprocessing ayarlamaları kritiktir:

  • [FONT=0)Resampling:[Dönetici:[Dönetici:0)[Dönetici:0)) SMOTE, azınlık sınıfından gelen k-nearest komşuları arasında bir araya getirerek sentetik örnekler yaratır.Bu, konvex hulls içinde sentetik noktalarla iyi çalışır, daha dengeli bir şekilde bölünür.
  • [FONT:0]Cost-sensitive learning:[Dönetici:[Döneticileri) Birçok ağaç uygulamaları sınıf başına farklı yanlış sınıflama maliyetleri atamasına izin verir (örneğin, “class weight='balanced' in scikit learning). Bu, azınlık sınıfında daha ağır hataları cezalandırmak için yetersizlik kriterini ayarlar.
  • [FONT:0) Dengeli çizme ile bir araya gelin: rastgele ormanlar için, her ağacın dengeli bir alt set üzerinde eğitildiği dengeli botlar kullanın.

Text and Date Özellikler

[FONT:0]Text verileri:[[Dönetici: 0,0) Kağıt torba-ilişiflere veya TF-IDF vektörlerine dönüştürülür. Karar ağaçları (özellikle derin olanlar) hala yüksek boyutlu sparse metin özellikleri ile çalışabilir, ancak konu modelleme veya anahtar kelime çıkarma ile boyutlandırmayı düşünün.

[FONT:0]Date/time data:[[Date/time data:[Date/timeT:1] Türlü Çevrim özellikleri (saat, hafta, ay) ve onları ordinal veya nominal olarak tedavi edin. Trendler için, referans noktası olarak zaman alabilir. Karar ağaçları, mevsimselliği ve eğilimleri anlamlı olup olmadığını iyi yakalayabilir.

Karar Ağacı Data için Pratik İş Akışı

Sistemli bir iş akışı, veri sızıntısını sağlar (önetici öncesi işlem sırasında hedef bilgileri kullanarak başarısız olur). İşte tavsiye edilen bir sipariş:

  1. [FONT=0]Split veri erken:[Dönetici:[Dönetici:)Eğitime ayrı ayrı ayrı ayrı ayrı, geçerlilik ve test, hedef bilgileri kullanan herhangi bir işlem öncesi ayarlar (örneğin, hedef kodlama, SMOTE).
  2. [FONT=0)Handle eksik değerler[[Dönetici:0) uygun bir engel kullanarak eğitim setinde yer alan. Mağaza yönlendirme parametreleri (örneğin, medyan değerleri) geçerlilik / test setleri için geçerlidir.
  3. [FONT:0)Encode kategorical değişkenler[Döneticileri], eğitim set kategorilere dayanan. etiket kodlaması için haritalama; bir hot için, onları gruplayarak test setlerinde bilinmeyen kategoriler ele alın.
  4. [FONT:0]Treat outliers[[Döncüler 1) Eğitim verileri üzerinde hesaplanan yüzdeileleri kullanıyor.
  5. [FONT:0)İsviçre sahip olmak gerekirse (örneğin, bir araya gelmek veya boyutsal azalma için).
  6. [FONT:0)İş seçimi[[Dönetici:0) Sadece eğitim seti kullanılarak yapılır. Bir ağaçtan özellik önemini kullanıyorsanız, ağaç eğitim setinde eğitilir.
  7. [FONT:0)Eminlik için [Dönetici: 2) Ayrılmadan sonra, sentetik noktaları geçerliliğe sokmaktan kaçınarak.
  8. [0] Karar ağacının [Döneticileri) uygun hiperparametrelerle (örneğin, “max derinlemesine”, “min samples leaf’, “min impurity decrease’).
  9. [FONT:0)Evaluate[Döneticileri değerlendirme için kullanılan görünmez test setinde[Dönetici).

Bu iş akışı hem tek ağaçlara hem de çantalı /boosted ensembles için, bir ilk çalıştırdıktan sonra bir özellik seçimi adımını ekledik, sonra yeniden inşa.

Ortak Pitfalls ve Them'dan Nasıl Kaçırmak

  • [FONT:0)Data sızıntıdan uzaklaştırma:[Dönetici: Asla hesaplamadan önce tüm veri kümesinde demektir.Eğitimde her zaman sadece işlem yapılır.
  • [FONT:0)Bir-hot, halka arz eden bir yığına yol açıyor: [Dönetici için yüksek kardinallik kategoricals için, özellik sayılabilirliğini tutmak için genişletilmiş veya hedef kodlamayı dikkate alıyor.
  • [FONT:0) Alan bilgilerini görmezden gelmek:[Dönetici:0] Preprocessing, tıbbi verilerde, eksik bir laboratuvar değeri “gösterilmemek” yerine “öğmen” anlamına gelebilir.
  • [FONT:0) Küçük veri setlerine genel olarak:[Dönetici: ) Daha basit bir işlem öncesi kullanım (göçme birçok eksik değerle ilgili özellikler, temel dürtüleri kullanın) ve ağır pruning.
  • [FONT:0) Boyutlu ölçeklendirme her zaman gereksizdir:) Tek bir ağaç için doğru olsa da, yüksek çözünürlükli ağaçlar (örneğin XGBoost) normalleştirme parametrelerini kullanırken ölçeklenebilir özelliklerden yararlanabilir.

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

Veri işlemesi, tek boyutlu bir iş değildir; en iyi teknikler, seçtiğiniz veri kümesinin özel özelliklerine bağlıdır ve seçtiğiniz karar ağacı değişkenine bağlıdır.Ancak, ilkeler sürekli kalır: temiz, iyi yapılandırılmış veriler, özellikle de eksik değerlerin sağlam bir şekilde işlenmesine başladığında, dikkatli bir şekilde kategorize edilebilir verilerle başlanır ve düşünceli özellik en büyük iyileştirmelere olanak sağlayacaktır.

Önişlemenin bu kadar basit olduğunu unutmayın.İlk bir model eğitimi aldıktan sonra, sadece doğru değil, aynı zamanda sağlam ve sağlam tahminler için kullanılan özellikler - veri kalitesinin hala eksik olabileceğini anlamak için alan uzmanlığı kullanın.Çalışanlar mantıklıdır.