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

Artık python ile bir örnek yapalım. Örneğimizde Iris verisetini kullanacağız.

import numpy as np
from sklearn import datasets
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.svm import LinearSVC

İlk olarak gerekli modülleri ve fonksiyonları içeri aktardık.

iris = datasets.load_iris()
X = iris["data"][:, (2,3)] #petal length, petal width
y = (iris["target"] == 2).astype(np.float32) #Iris-Virginica

X değişkenimize Iris verisetindeki yaprak uzunluğu ve yaprak genişliği özniteliklerini atadık. Iris veriseti üç farklı yaprak çeşidi içermektedir (Setosa, Versicolour, ve Virginica). y değişkenine de eğer Virginica ise 1, değilse 0 değerlerini atadık.

svm_clf = Pipeline((
        ("scaler", StandardScaler()),
        ("linear_svc", LinearSVC(C=1, loss="hinge")),
))

Makine öğrenimi için “pipeline” oluşturduk. İlk olarak öznitelikleri ölçeklemek için StandartScaler ve ardında sınıflandırmak için LinearSVC fonksiyonlarını kullandık. C=1 aldık.

svm_clf.fit(X, y)

Komutu ile de sınıflandırma işlemini gerçekleştirdik.

svm_clf.predict([[5.5, 1.7]])

Tahimn işlemini gerçekleştirdik. Yaprak uzunluğu 5.5 cm, yaprak genişliği 1.7 cm olan bir yaprağı sınıflandırıcımız Iris-Virginica olarak tahmin etti.

Alternatif olarak,  sınıflandırıcı için

SVC(kernel="linear", C=1)

komutunu da kullanabilirdik, fakat bu daha yavaştır ve daha büyük verisetlerinde tavsiye edilmez. Üçüncü bir yol olarak da, stokastik gradient descent metodunu lineer destek vektör makinesine uygulayan SGCDClassifier sınıflandırıcısını da kullanabiliriz. Bu LinearSVC kadar hızlı yakınsamasada, hafızaya sığmayan verisetleri (out-of-core training) üzerinde çalışırken kullanışlı olabilir.

Kaynaklar

  1. Geron, A. (2017). Hands-On Machine Learning with Scikit-Learn and TensorFlow Concepts, Tools, and Techniques for Building Intelligent Systems. Sebastopol: OReilly UK Ltd.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s