Makine Öğrenimi için Lojistik Regresyon: Eksiksiz Bir Kılavuz

Yayınlanan: 2021-10-04

Makine Öğrenimi modelleri, çalışmak için algoritmalar gerektirir. Koşullar kümesine bağlı olarak, belirli bir ML modeli, bir veya diğer algoritmayı kullanarak en iyi performansı gösterebilir. Sonuç olarak, Makine Öğrenimi mühendisleri ve meraklıları, zamanı geldiğinde hangisini kullanacaklarını bilmek için farklı bağlamlarda kullanılabilecek farklı algoritma türlerinin farkında olmalıdır. Makine Öğrenimi'nde hiçbir zaman herkese uyan tek bir çözüm yoktur ve farklı algoritmalarla ince ayar yapmak istenen sonuçları verebilir.

Örneğin, Lineer Regresyon hakkında zaten bilgi sahibi olmalısınız. Ancak, bu algoritma kategorik olarak bağımlı değişkenlere uygulanamaz. Lojistik Regresyonun kullanışlı olduğu yer burasıdır.

Makine Öğreniminde Lojistik Regresyon, bağımlı veya hedef değişkenin olasılığını tahmin etmek için kullanılan denetimli bir öğrenme yöntemidir. Lojistik Regresyon'u kullanarak bağımlı ve bir veya daha fazla bağımsız değişken arasındaki ilişkileri tahmin edebilir ve kurabilirsiniz.

Lojistik Regresyon denklemleri ve modelleri genellikle ikili sınıflandırma için tahmine dayalı analitik için kullanılır. Bunları çok sınıflı sınıflandırma için de kullanabilirsiniz.

Makine Öğrenimi için Lojistik Regresyon denklemi şöyle görünür:

logit(p) = ln(p/(1-p)) = h0+h1X1+h2X2+h3X3….+hkXk

Neresi;

p= özelliğin ortaya çıkma olasılığı

x1,x2,..xk = giriş özellikleri seti

h1,h2,….hk = Lojistik Regresyon denkleminde tahmin edilecek parametrik değerler.

İçindekiler

Makine Öğreniminde Lojistik Regresyon Modellerinin Türleri

Lojistik Regresyon'un kullanım şekline bağlı olarak, Lojistik Regresyon modelleri aşağıdaki gibi sınıflandırılabilir:

1. İkili Lojistik Regresyon Modeli

Bu, Lojistik Regresyon için en popüler kullanılan regresyon modellerinden biridir. Verileri iki sınıfa ayırmaya ve yeni bir girdinin değerini iki sınıftan birine ait olarak tahmin etmeye yardımcı olur. Örneğin, bir hastanın tümörü iyi huylu veya kötü huylu olabilir ama asla ikisi birden olamaz.

2. Çok Terimli Lojistik Regresyon Modeli

Bu model, hedef değişkenleri herhangi bir niceliksel önemden bağımsız olarak ikiden fazla sınıfa ayırmaya yardımcı olur. Bunun bir örneği, bir bireyin diyet tercihlerine ve geçmiş deneyimlerine dayanarak sipariş etmesi muhtemel yiyecek türünü tahmin etmek olabilir.

Kariyerinizi hızlandırmak için Makine Öğrenimi Kursuna , Makine Öğrenimi ve Yapay Zeka alanında Dünyanın en iyi Üniversiteleri - Yüksek Lisanslar, Yönetici Yüksek Lisans Programları ve İleri Düzey Sertifika Programından çevrimiçi katılın .

3. Sıralı Lojistik Regresyon Modeli

Bu model, hedef değişkeni sınıflandırmak için kullanılır. Örneğin, bir öğrencinin bir sınavdaki performansı hiyerarşik bir düzende zayıf, iyi ve mükemmel olarak sınıflandırılabilir. Bu şekilde, veriler, her sınıfın belirli bir önem düzeyine sahip olduğu üç farklı kategoride sınıflandırılır.

Lojistik Regresyon denklemi, istenmeyen posta tespiti, tümör sınıflandırması, cinsiyet sınıflandırması ve daha pek çok durumda kullanılabilir. Daha iyi anlamanıza yardımcı olması için, Makine Öğreniminde Lojistik Regresyon denkleminin en yaygın kullanım örneklerinden ikisine bakalım.

Lojistik Regresyon Denklemi için örnek kullanım örnekleri

Örnek 1: İstenmeyen E-postaların Belirlenmesi

E-posta spam ise 1 sınıfını ve e-posta değilse 0 sınıfını düşünün. Bunu saptamak için, posta gövdesinden birden çok öznitelik analiz edilir. Bunlar şunları içerir:

  • gönderen
  • yazım hataları
  • E-postadaki "banka bilgileri", "şanslı", "kazanan", "tebrikler" gibi anahtar kelimeler.
  • E-postadaki iletişim bilgileri veya URL

Çıkarılan bu veriler daha sonra tüm girdileri analiz edecek ve 0 ile 1 arasında bir puan verecek olan Makine Öğrenimi için Lojistik Regresyon denklemine beslenebilir. Puan 0'dan büyük ancak 0,5'ten küçükse, e-posta spam olarak sınıflandırılır ve puan 0,5 ile 1 arasındaysa, posta istenmeyen posta değil olarak işaretlenir.

Örnek 2: Kredi Kartı Dolandırıcılığının Belirlenmesi

Bankalar, Lojistik Regresyon denklemlerini veya Lojistik Regresyon tabanlı Makine Öğrenimi modellerini kullanarak sahte kredi kartı işlemlerini anında tespit edebilir. Bunun için PoS, kart numarası, işlem değeri, işlem verileri ve benzerleri gibi ayrıntılar, belirli bir işlemin gerçek (0) veya sahte (1) olup olmadığına karar veren Lojistik Regresyon modeline beslenir. Örneğin, satın alma değeri çok yüksekse ve tipik değerlerden sapıyorsa, regresyon modeli işlemi dolandırıcılık olarak sınıflandıran bir değer (0,5 ile 1 arasında) atar.

Makine Öğreniminde Lojistik Regresyon Çalışması

Lojistik Regresyon, tahminleri çıktı olasılıklarıyla eşleştirmek için Sigmoid işlevini kullanarak çalışır. Bu fonksiyon, 0 ile 1 arasında tahmin edilen değerleri çizen S-şekilli bir eğridir. Daha sonra değerler, etiketler olarak 0 ve 1 kullanılarak Y ekseninin üstündeki ve altındaki kenar boşluklarına doğru çizilir. Daha sonra bu değerlere bağlı olarak bağımsız değişkenler sınıflandırılabilir.

Sigmoid işlevi şöyle görünür:

Sigmoid işlevi aşağıdaki denkleme dayanmaktadır:

y=1/(1+e^x)

Burada e^x= 2.718 değerinde üstel sabit.

Yukarıdaki Sigmoid fonksiyonunun denklemi, x negatif olarak kabul edilirse, tahmin edilen değeri (y) sıfır olarak sağlar. x büyük bir pozitif sayı ise, tahmin edilen değer bire yakındır.

Python'da Lojistik Regresyon Modeli Oluşturma

Python'da bir Lojistik Regresyon modeli oluşturma sürecini gözden geçirelim. Bunun için, regresyon analizini yapmak için Sosyal Ağ veri setini kullanalım ve bir bireyin belirli bir arabayı satın alıp almayacağını tahmin etmeye çalışalım. Adımların nasıl göründüğü aşağıda açıklanmıştır.

Adım 1: Kitaplıkları ve Veri Kümesini İçe Aktarma

Modeli oluşturmak için gereken kitaplıkları içe aktararak başlar. Buna Pandalar, Numpy ve Matplotlib dahildir. Ayrıca birlikte çalışacağımız veri setini de içe aktarmamız gerekiyor. İşte kod neye benziyor:

numpy'yi np olarak içe aktar

matplotlib.pyplot'u pt olarak içe aktar

pandaları pd olarak içe aktar

veri kümesi = pd.read_csv('Social_Network.csv')

Adım 2: Bağımlı ve Bağımsız Değişkenlere Bölme

Şimdi, beslenen verileri bağımlı ve bağımsız değişkenlere ayırmanın zamanı geldi. Bu örnek için, bireylerin tahmini maaş ve yaşları boyunca bağımlı değişken olarak satın alma değerini bağımsız değişken olarak ele alacağız.

x = veri kümesi.iloc[:, [2,3]].değerler

y = dataset.iloc[:, 4].değerler

3. Adım: Veri Kümesini Eğitim kümesine ve Test kümesine bölme

Veri setini belirli eğitim ve test setlerine bölmek esastır. Eğitim seti Lojistik Regresyon denklemini eğitirken, test verileri modelin eğitimini doğrulamak ve test etmek için kullanılacaktır. Sklearn, verilen veri kümesini iki kümeye bölmek için kullanılır. Eğitim ve test için ayırmak istediğimiz veri miktarını belirterek train_split_function işlevini kullanırız.

sklearn.model_selection'dan train_test_split'i içe aktarın

x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.33, random_state = 0)

Gördüğünüz gibi, test boyutunu tüm veri setinin %33'ü olarak tanımladık. Böylece kalan %66 eğitim verisi olarak kullanılacaktır.

4. Adım: Ölçekleme

Lojistik Regresyon modelinizin doğruluğunu artırmak için verileri yeniden ölçeklendirmeniz ve doğası gereği oldukça değişken olabilecek değerler getirmeniz gerekir.

sklearn.preprocessing'den içe aktarma StandardScaler

sc_X = StandardScaler()

X_train = sc_X.fit_transform(X_train)

X_test = sc_X.transform(X_test)

Adım 5: Lojistik Regresyon modelini oluşturma

Bu yapıldıktan sonra, Lojistik Regresyon modelini oluşturmanız ve eğitim setine sığdırmanız gerekir. Sklearn'den Lojistik Regresyon algoritmasını içe aktararak başlayın.

sklearn.linear_model'den LogisticRegression'ı içe aktarın

Ardından, eğitim verilerine uyacak bir örnek sınıflandırıcı oluşturun.

sınıflandırıcı = LogisticRegression(random_state=0)

classifier.fit(x_train, y_train)

Ardından, test veri kümesinde tahminler oluşturun.

y_pred = classifier.predict(x_test)

Son olarak, Karışıklık matrisini kullanarak Lojistik Regresyon modelinizin performansını kontrol edin.

sklearn.metrics'den configuration_matrix'i içe aktarın

cm = karışıklık_matrix(y_test, y_pred)

acc = doğruluk_skoru(y_test, y_pred)

yazdır(acc)

baskı (cm)

Artık eğitim ve test setleri dahil tüm veri setini görselleştirmek için Matplotlib'i kullanabilirsiniz!

Sonuç olarak

Lojistik Regresyon, Makine Öğrenimi modellerinin ve algoritmalarının geliştirilmesine yardımcı olan araçlardan biridir. Benzer şekilde, eldeki kullanım durumuna bağlı olarak kullanılan birden çok başka algoritma da vardır. Ancak hangi algoritmayı kullanacağınızı bilmek için tüm olası seçeneklerin farkında olmalısınız. Ancak o zaman veri kümeniz için en uygun algoritmayı seçebilecek konumda olacaksınız.

Sizi sıfırdan alacak ve becerilerinizi en üst düzeye çıkarmanıza yardımcı olacak şekilde tasarlanmış Makine Öğreniminde Yönetici PG Programımıza göz atın - böylece gerçek dünyadaki herhangi bir Makine Öğrenimi problemini çözebilecek bir konumda olursunuz. Farklı kurslara göz atın ve size uygun olanı seçin. upGrad'a katılın ve bütünsel bir öğrenme ortamı ve yerleştirme desteğini deneyimleyin!

Makine Öğrenimi için kaç çeşit Lojistik Regresyon mümkündür?

Lojistik Regresyon genel olarak üç tiptedir:
1. İkili
2. Çok terimli
3. Sıradan.

Makine Öğreniminde Lojistik Regresyon ne için kullanılır?

Lojistik Regresyon, uygun gelecek tahminleri yapmak için bağımlı ve bağımsız değişkenler arasında en uygun ilişkiyi bulmak ve oluşturmak için kullanılan denetimli öğrenme yöntemlerinden biridir.

Logistic Regression for Machine Learning'in kullandığı işlev nedir?

Makine Öğrenimi için Lojistik Regresyon, en uygun eğriyi bulmak için Sigmoid işlevini kullanır.