Scikit-Learn ile Stacking

Önceki yazımızda stacking metodundan bahsetmiştik. Şimdi uygulamalı olarak görelim. İlk olarak her zamanki gibi gerekli fonksiyon ve modülleri içeri aktarıyoruz: Verimizi içeri aktarıp, öznitelikler ve hedef olarak ayırıyoruz: Şimdi verimizi daha önceki örneklerden farklı olarak, %60 eğitim (train), %20 geçerleme (validation) ve %20 test verisi olarak ayırmamız gerekiyor. Bunun için bir yol train_test_split fonksiyonunu iki defa kullanmak: Şimdi üç farklı … Okumaya devam et Scikit-Learn ile Stacking

Reklamlar

Modellerin birleştirilmesi (Ensemble Learning) – 4

Boosting Boosting, bir çok zayıf öğreniciyi (weak learner) bir araya getirerek bir güçlü öğrenici (strong learner) oluşturmak anlamına gelir. Bir çok boosting metodunun ana fikri, tahmin edicileri ardışık olarak eğitmektir. En sık kullanılan boosting metodları, AdaBoost (Adaptive Boosting) ve Gradient Boosting metodlarıdır. Adaboost Bir tahmin edicinin, kendinden önce gelen tahmin ediciyi düzeltmesi için bir yol, … Okumaya devam et Modellerin birleştirilmesi (Ensemble Learning) – 4

Rastgele Ormanlar(Random Forests) ile Churn Analizi

Churn Analizi Nedir? Müşteri Kayıp Oranı (Churn Rate), müşterilerin bir ürünü ya da hizmeti kullanmayı bırakma olasığı olarak tanımlanabilir. Araştırmalara göre, bir çok iş kolu için, yeni müşteri kazanmak mevcut müşteriyi elde tutmaktan çok daha maliyetlidir. Bu nedenle şirketler churn analizi ile ürün ya da hizmeti kullanmayı bırakma olasığı yüksek olan müşterileri tespit edip, bu … Okumaya devam et Rastgele Ormanlar(Random Forests) ile Churn Analizi

Modellerin birleştirilmesi (Ensemble Learning) – 3

Rastgele Ormanlar (Random Forests) Karar ağaçları yazımızda (Link), karar ağaçlarının, rastgele ormanlar algoritmasının temel bileşeni olduğunu belirtmiştik. Rastgele ormanlar, çok sayıda karar ağacının bagging ya da pasting metodları ile bir araya getirilmesinden oluşur. Şimdi Scikit-Learn ile basit bir örnek yapalım. İlk olarak gerekli fonksiyonları içeri aktardık. Iris verisetini kullanıyoruz. RandomForestClassifier oluşturduk, verilerimizi sınıflandırıcıya besledik. Bir … Okumaya devam et Modellerin birleştirilmesi (Ensemble Learning) – 3

Modellerin birleştirilmesi (Ensemble Learning) – 2

Bagging ve Pasting Başka bir ensemble learning metodu ise, aynı algoritmayı verinin farklı altkümeleri üzerinde çalıştırmaktır. Altkümeleri oluştururken, örnekleme (sampling - kısaca verisetinden noktalar seçimi) işlemi yerine koyma (aynı nokta birden fazla kere seçilebilir) ile yapılırsa, bu yöntem bagging (bootstrap aggreating) olarak, yerine koyma ile yapılmıyor ise de, bu yöntem pasting olarak adlandırılır. Tüm tahmin ediciler eğitildikten … Okumaya devam et Modellerin birleştirilmesi (Ensemble Learning) – 2

Modellerin birleştirilmesi (Ensemble Learning) – 1

Karmaşık bir soruyu binlerce insana soralım ve verdikleri cevapları birleştirelim. Çoğu durumda, bu birleştirilmiş cevap, tek bir uzmanın verdiği cevaptan çok daha iyi olacaktır. Bu "Wisdom of the crowd" olarak adlandırılır (Daha fazla bilgi için tıklayınız). Benzer olarak, birden fazla tahmin edicinin (predictor) tahminlerini bir araya getirirsek, tek bir tahmin ediciden daha iyi sonuç elde … Okumaya devam et Modellerin birleştirilmesi (Ensemble Learning) – 1

k-En yakın komşular (k-Nearest Neighbors)

k-En yakın komşular algoritması en basit makine öğrenimi algoritmalarından biridir. Bir örnekle inceleyelim. Elimizde kırmızı ve yeşil olarak sınıflandırılmış noktalar olsun. Yıldız noktasının sınıfını tahmin etmek istiyoruz. Yıldız noktasına en yakın noktalar "komşu" olarak adlandırılır. Algoritmanın adındaki k sayısı sınıflarına bakılacak komşu sayısıdır. Noktanın komşuları en çok hangi sınıfa ait ise, tahmin o sınıftır. k=3 … Okumaya devam et k-En yakın komşular (k-Nearest Neighbors)

Karar Ağaçları (Decision Trees) – 2

Her bir düğüm (node) gini özelliğine sahiptir: gini özelliği o düğümün "kirlilik" (impurity) ni ölçer: Eğer o düğümdeki eğitim örneklerinin hepsi aynı sınıftan ise, düğüm saftır (gini = 0) denir. Formulü ise: CART Algoritması Scikit-Learn'in karar ağaçları için CART algoritmasını kullandığını bir önceki yazıda söylemiştim. Algoritmadan bahsedelim: algoritma ilk olarak eğitim verilerini tek bir öznitelik … Okumaya devam et Karar Ağaçları (Decision Trees) – 2

Karar Ağaçları (Decision Trees) – 1

Karar ağaçları, destek vektör makineleri gibi oldukça güçlü bir makine öğrenimi algoritmasıdır. Hem regresyon hem de sınıflandırma problemleri için kullanılabilirler. Ayrıca ileride değineceğimiz rastgele ormanlar (random forests) algoritmasının temel bileşenidir. Karar ağaçlarını daha kolay anlayabilmek için bir örnek yapalım ve nasıl tahmin ettiğine bakalım. Yine Iris verisetini kullandık. Karar ağacını görselleştirebilmemiz için öncelikle graf tanım … Okumaya devam et Karar Ağaçları (Decision Trees) – 1

Rastgele Ağaçlar ile Kredi kartı dolandırıcılık tespiti

Verisetini buradan indirebilirsiniz. Verisetimiz, 284,807 kredi kartı işlemi içermektedir. 28 tane anonimleştirilmiş ve normalize edilmiş öznitelik içermektedir. Normalleştirme işlemi, tüm özniteliklerin değerlerinin aynı aralıkta olmasını sağlar. Anonimleştirme ve normalleştirme işlemi Temel Bileşen Çözümlemesi (Principal Component Analysis - PCA) ile yapılmıştır. Bu algoritmaya ileride değineceğiz. Verisetimiz, ayrıca, kredi kartı işleminin ne zaman gerçekleştiğini belirten bir zaman değişkeni ve … Okumaya devam et Rastgele Ağaçlar ile Kredi kartı dolandırıcılık tespiti