0Pricing
Learn AI with Python · Ders

LightGBM ve CatBoost

LightGBM'nin neden daha hızlı olduğu, histogram tabanlı bölme ve kategorik özellikler için CatBoost.

LightGBM ve CatBoost, CoddyKit'te ücretsiz bir Learn AI with Python dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn AI with Python öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn AI with Python kursu toplamda 4 dersten oluşur.

XGBoost'un Ötesinde

XGBoost güçlüdür; ancak çok büyük veri kümelerinde yavaş kalabilir. LightGBM ve CatBoost, hızı artıran ve kategorik verileri daha başarılı biçimde işleyen yeni gradyan artırma kitaplıklarıdır.

Histogram Tabanlı Bölmeler

LightGBM, bölmeleri bulmadan önce sürekli özellikleri ayrık kutulara (histograma) ayırır. Bu yöntem, bölme bulmayı kesin yönteme göre çok daha hızlı hâle getirir ve daha az bellek kullanır.

Yaprak Bazlı Ağaç Büyütme

Seviye bazlı büyümenin aksine LightGBM, ağaçları yaprak bazlı büyütür: önce kaybı en fazla azaltan yaprağı böler. Bu yöntem daha hızlı yakınsar; ancak aşırı uyuma yol açabilir. Bu nedenle yöntemi num_leaves ile denetlersiniz.

LGBMClassifier ve num_leaves

num_leaves, LightGBM için en önemli karmaşıklık ayarıdır. Daha büyük değerler doğruluğu artırır; ancak aşırı uyum riskini yükseltir. Genel bir kural olarak num_leaves < 2^max_depth koşulunu koruyun.

from lightgbm import LGBMClassifier

model = LGBMClassifier(
    n_estimators=300,
    num_leaves=31,
    learning_rate=0.05,
    random_state=0,
)
model.fit(Xtr, ytr)
print(model.score(Xte, yte))

LightGBM'nin Hız Avantajları

Histogram kutulama, yaprak bazlı büyütme ve özellik/veri alt örneklemesi sayesinde LightGBM, büyük veri kümelerinde XGBoost'tan belirgin biçimde daha hızlı eğitilir ve çoğu zaman benzer doğruluk sağlar.

from lightgbm import LGBMClassifier

model = LGBMClassifier(
    n_estimators=1000,
    num_leaves=63,
    learning_rate=0.03,
    feature_fraction=0.8,
    bagging_fraction=0.8,
)

LightGBM'de Erken Durdurma

LightGBM, geri çağırmalar aracılığıyla erken durdurmayı destekler. Bir değerlendirme kümesi ve early_stopping geri çağırması geçirerek metrik yatay seyrettiğinde eğitimi durdurun.

import lightgbm as lgb
from lightgbm import LGBMClassifier

model = LGBMClassifier(n_estimators=2000, learning_rate=0.03)
model.fit(
    Xtr, ytr,
    eval_set=[(Xte, yte)],
    callbacks=[lgb.early_stopping(50)],
)

CatBoost ve Kategorik Özellikler

CatBoost, kategorik verilerle çok başarılıdır. Ham kategorik sütunları cat_features aracılığıyla doğrudan geçirirsiniz; manuel kodlama gerekmez.

Hedef sızıntısını önlemek için dahili olarak sıralı hedef istatistiklerini kullanır.

from catboost import CatBoostClassifier

model = CatBoostClassifier(
    iterations=500,
    learning_rate=0.05,
    depth=6,
    verbose=False,
)
model.fit(Xtr, ytr, cat_features=[0, 3, 5])

Kodlama Olmamasının Gücü

Diğer kitaplıklarda kategorileri tek-sıcak veya etiket kodlamasıyla kodlamanız gerekir; bu işlem boyutluluğu aşırı artırabilir veya hedef sızıntısına yol açabilir. CatBoost bunu dahili olarak sıralı artırmayla işler ve kategorik özelliklerde aşırı uyumu azaltır.

CatBoost'un Temel Parametreleri

CatBoost, iterations (n_estimators gibi), learning_rate ve depth değerlerini kullanır; simetrik ağaçlar oluşturur. Çok az ayarlamayla çoğu zaman iyi çalışır.

from catboost import CatBoostClassifier

model = CatBoostClassifier(
    iterations=1000,
    learning_rate=0.03,
    depth=8,
    l2_leaf_reg=3.0,
    verbose=100,
)

Hız Karşılaştırması

Genel öneriler:

  • LightGBM genellikle büyük sayısal veri kümelerinde en hızlıdır
  • CatBoost çok sayıda kategorik özellik olduğunda en iyisidir ve daha az ayar gerektirir
  • XGBoost olgun, sağlam ve varsayılanları başarılıdır

Üçünü de verileriniz üzerinde kıyaslayın; sonuçlar probleme göre değişir.

Kitaplık Seçimi

Yoğun kategorik verileriniz varsa CatBoost ile başlayın. Çok büyük sayısal tablolar ve hız için LightGBM'yi seçin. Sınanmış bir temel model için XGBoost'u kullanın. Üçünün temelinde de gradyan artırma bulunur; bu nedenle kavramlar birbirine aktarılabilir.

Kısa Kontrol

Gradyan artırma kitaplıkları bilginizi sınayın.

Özet

Özet: LightGBM, büyük sayısal verilerde hız sağlamak için num_leaves ile denetlenen histogram tabanlı, yaprak bazlı büyütmeyi kullanır. CatBoost, kategorik özellikleri cat_features aracılığıyla yerel olarak işler ve kodlama gerektirmez. Her ikisi de XGBoost ile birlikte gradyan artırmanın çeşitleridir. Seçim yapmak için kıyaslama yapın; kategorik veriler için CatBoost'u, hız için LightGBM'yi tercih edin.

Sıkça Sorulan Sorular

“LightGBM ve CatBoost” dersi ücretsiz mi?

Evet — “LightGBM ve CatBoost” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn AI with Python kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn AI with Python kursu toplamda 4 dersten oluşur.

“LightGBM ve CatBoost” dersinde ne öğreneceğim?

LightGBM'nin neden daha hızlı olduğu, histogram tabanlı bölme ve kategorik özellikler için CatBoost. Learn AI with Python ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Learn AI with Python öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Learn AI with Python, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“LightGBM ve CatBoost” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Learn AI with Python dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Learn AI with Python dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Karar Ağaçları: Kuram ve Uygulama
  2. Rastgele Ormanlar ve Bagging
  3. Gradyan Artırma: GBM ve XGBoost
  4. LightGBM ve CatBoost
← Learn AI with Python Sayfasına Dön