CatBoost
Kategorik veriler için güçlü bir gradyan artırma algoritması olan CatBoost'u keşfet. Yapay zekâ iş akışları için Ultralytics YOLO26 ile birlikte tahmine dayalı modellemeyi nasıl geliştirdiğini öğren.
CatBoost (Kategorik Güçlendirme), karar ağaçları üzerinde gradient boosting tabanlı, açık kaynaklı bir makine öğrenimi algoritmasıdır. Yandex tarafından geliştirilen bu algoritma, minimum veri hazırlığıyla yüksek performans sunmak üzere tasarlanmıştır ve özellikle sayısal değerler yerine farklı grupları veya etiketleri temsil eden değişkenler olan kategorik verileri işleme konusunda başarılıdır. Geleneksel algoritmalar kategorileri sayılara dönüştürmek için genellikle one-hot encoding gibi karmaşık ön işleme teknikleri gerektirirken CatBoost, bu özellikleri eğitim sırasında doğrudan işleyebilir. Bu yetenek, sıralı güçlendirme yoluyla aşırı öğrenmeyi azaltma becerisiyle birleştiğinde CatBoost'u veri bilimindeki çok çeşitli predictive modeling görevleri için güçlü bir seçenek hâline getirir.
Temel Avantajlar ve Çalışma Mekanizması#
CatBoost, doğruluğu ve kullanım kolaylığını ön planda tutan çeşitli mimari tercihleri sayesinde diğer ensemble yöntemlerinden ayrılır.
- Yerel Kategorik Destek: Algoritma, kategorik değerleri eğitim sırasında sayılara dönüştürmek için sıralı hedef istatistikleri adı verilen bir teknik kullanır. Bu, standart kodlama yöntemlerinde sıkça görülen hedef sızıntısını önleyerek doğrulama sürecinin bütünlüğünü korur.
- Sıralı Güçlendirme: Standart gradient boosting yöntemleri, bir bias in AI türü olan tahmin kaymasından etkilenebilir. CatBoost, modeli eğitmek için permütasyon odaklı bir yaklaşım kullanarak bu sorunu giderir ve modelin belirli eğitim verisi dağılımına aşırı uyum sağlamamasını güvence altına alır.
- Simetrik Ağaçlar: Diğer birçok boosting kütüphanesi ağaçları derinlik bazında veya yaprak bazında büyütürken CatBoost simetrik (dengeli) ağaçlar oluşturur. Bu yapı, real-time inference uygulamaları için kritik olan son derece hızlı çıkarım hızları sağlar.
CatBoost ile XGBoost ve LightGBM Karşılaştırması#
CatBoost, diğer popüler boosting kütüphaneleriyle birlikte sıkça değerlendirilir. Aynı temel çerçeveyi paylaşsalar da belirgin özelliklere sahiptirler.
- XGBoost: data science competitions alanındaki performansıyla tanınan, son derece esnek ve yaygın olarak kullanılan bir kütüphanedir. En yüksek performansa ulaşmak için genellikle dikkatli hyperparameter tuning ve kategorik değişkenlerin manuel olarak kodlanmasını gerektirir.
- LightGBM: Bu kütüphane, yaprak bazında büyüme stratejisi kullanarak devasa veri kümelerinde eğitim sürecini olağanüstü hızlı hâle getirir. Ancak dikkatli bir düzenlileştirme uygulanmadığında, CatBoost'un kararlı simetrik ağaçlarına kıyasla daha küçük veri kümelerinde overfitting eğilimi gösterebilir.
- CatBoost: Varsayılan parametrelerle çoğu zaman en iyi "kutudan çıktığı hâliyle" doğruluğu sunar. Veri kümeleri önemli sayıda kategorik özellik içerdiğinde genellikle tercih edilen seçenektir ve kapsamlı feature engineering ihtiyacını azaltır.
Gerçek Dünya Uygulamaları#
CatBoost'un sağlamlığı, onu yapılandırılmış verilerle çalışan çeşitli sektörlerde çok yönlü bir araç hâline getirir.
-
Finansal Risk Değerlendirmesi: Bankalar ve fintech şirketleri, kredi uygunluğunu değerlendirmek ve kredi temerrütlerini tahmin etmek için CatBoost kullanır. Model, doğru risk profilleri oluşturmak üzere başvuru sahibinin mesleği (kategorik) ve gelir düzeyi (sayısal) gibi çeşitli veri türlerini sorunsuzca birleştirebilir. Bu yetenek, modern AI in finance uygulamalarının temel taşlarından biridir.
-
E-ticaret Önerileri: Çevrimiçi perakendeciler, kişiselleştirilmiş recommendation systems çözümlerine güç vermek için CatBoost'tan yararlanır. Algoritma, kullanıcı davranış günlüklerini, ürün kategorilerini ve satın alma geçmişini analiz ederek kullanıcının bir öğeye tıklama veya onu satın alma olasılığını tahmin eder ve doğrudan AI in retail optimizasyonuna katkıda bulunur.
Bilgisayarlı Görü ile Entegrasyon#
CatBoost öncelikli olarak tablo şeklindeki veriler için kullanılan bir araç olsa da görsel verilerin yapılandırılmış meta verilerle buluştuğu multi-modal model iş akışlarında hayati bir rol oynar. Yaygın bir iş akışında, görüntülerden özellikleri çıkarmak için bir bilgisayarlı görü modeli kullanılır ve ardından bu özellikler bir CatBoost sınıflandırıcısına aktarılır.
Örneğin bir gayrimenkul değerleme sistemi, mülk fotoğraflarında object detection gerçekleştirmek ve havuzlar veya güneş panelleri gibi olanakları saymak için Ultralytics YOLO26 kullanabilir. Bu nesnelerin sayıları, evin değerini tahmin etmek üzere konum ve metrekare verileriyle birlikte sayısal özellikler olarak bir CatBoost modeline aktarılır. Geliştiriciler, veri kümesi yönetimini ve model dağıtımını kolaylaştıran Ultralytics Platform ile bu işlem hatlarının görüntü bileşenini yönetebilir.
Aşağıdaki örnek, bir görüntüden nesne sayılarını çıkarmak üzere önceden eğitilmiş bir YOLO modelinin nasıl yükleneceğini gösterir; bu sayılar daha sonra bir CatBoost modeli için girdi özellikleri olarak kullanılabilir.
from ultralytics import YOLO
# Load the YOLO26 model
model = YOLO("yolo26n.pt")
# Run inference on an image
results = model("path/to/property_image.jpg")
# Extract class counts (e.g., counting 'cars' or 'pools')
# This dictionary can be converted to a feature vector for CatBoost
class_counts = {}
for result in results:
for cls in result.boxes.cls:
class_name = model.names[int(cls)]
class_counts[class_name] = class_counts.get(class_name, 0) + 1
print(f"Features for CatBoost: {class_counts}")








