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

Destek Vektör Makineleri (Support Vector Machines – SVMs) – 8

Bir kısıtlanmış optimizasyon problemi (primal problem) için, oldukça benzer başka bir problem (dual problem) ifade edilebilir. Dual problemin çözümü, genelde, primal problemin çözümü için bir alt sınır verir. Ancak, amaç fonksiyonu konveks, eşitsizlik kısıtlamaları (inequality constraints) sürekli türevlenebilir ve konveks fonksiyonlar ise, primal ve dual problemlerin çözümleri aynıdır. DVM problemi de bu koşulları sağladığından, primal problem veya … Okumaya devam et Destek Vektör Makineleri (Support Vector Machines – SVMs) – 8

Destek Vektör Makineleri (Support Vector Machines – SVMs) – 7

Karar Fonksiyonu ve Tahmin Doğrusal DVM sınıflandırıcısı, yeni $latex x$ örneğinin sınıfını karar fonksiyonunu hesaplayarak tahmin eder. Karar fonksiyonu, $latex w^T \cdot x + b$ pozitif ise, $latex \hat{y}$ tahmini pozitif sınıf(1), değilse negatif sınıf(0) olur. Burada $latex b$, yanlılık terimi, $latex w$ ise ağırlık vektörüdür. Aşağıdaki grafikte Iris veriseti üzerindeki bir modelin karar sınırını … Okumaya devam et Destek Vektör Makineleri (Support Vector Machines – SVMs) – 7

Destek Vektör Makineleri (Support Vector Machines – SVMs) – 6

DVM ile Regresyon Önceden belirttiğim gibi, Destek vektör makineleri hem sınıflandırma hem de regresyon problemlerinde kullanılmaktadır. Regresyon için amaç tersine çevrilir: mümkün olan en geniş caddeyi bulmak yerine, mümkün olduğunca en fazla veri örneğini cadde üzerinde tutmaya çalışır (Sınıflandırmada caddenin dışında tutmaya çalışır). Caddenin genişliği, $latex \epsilon$ üstün-parametresi (hyper-parameter) ile belirlenir. Yukarıdaki grafikte, solda daha … Okumaya devam et Destek Vektör Makineleri (Support Vector Machines – SVMs) – 6

Destek Vektör Makineleri (Support Vector Machines – SVMs) – 5

Polinomial Çekirdek (Polynomial Kernel) Verisetine polinomial öznitelikler eklemek basit ve kullanışlı ve ayrıca diğer makine öğrenimi modellerinde de kullanılabilmesine rağmen, düşük dereceden polinomlar, karmaşık verisetlerinde işe yaramaz, yüksek dereceden polinomlar ise modele yüksek sayıda öznitelik ekleyerek, oldukça yavaşlatmaktadır. DVM kullanırken, çekirdek hilesi (kernel trick) olarak adlandırılan bir teknik kullanabiliriz. Çekirdek hilesini daha ileride detaylıca açıklayacağım. … Okumaya devam et Destek Vektör Makineleri (Support Vector Machines – SVMs) – 5