Veri Bilimi

Python'da Lojistik Regresyon

Python'da Lojistik Regresyon
Lojistik regresyon, bir makine öğrenimi sınıflandırma algoritmasıdır. Lojistik regresyon da lineer regresyona benzer. Ancak lojistik regresyon ile doğrusal regresyon arasındaki temel fark, lojistik regresyon çıktı değerlerinin her zaman ikili (0, 1) olması ve sayısal olmamasıdır. Lojistik regresyon temel olarak bağımsız değişkenler (bir veya birden fazla) ile bağımlı değişkenler arasında bir ilişki oluşturur. Bağımlı değişken, çoğunlukla iki durumu olan bir ikili değişkendir:

Lojistik Regresyonun kilit önemi:

  1. Bağımsız değişkenler çoklu bağlantı olmamalıdır; eğer bir ilişki varsa, o zaman çok az olmalı.
  2. Lojistik regresyon için veri seti, daha iyi sonuçlar elde etmek için yeterince büyük olmalıdır.
  3. Veri kümesinde yalnızca bu nitelikler bulunmalıdır, bu da bir anlamı vardır.
  4. Bağımsız değişkenler aşağıdakilere göre olmalıdır: günlük oranları.

Modeli oluşturmak için lojistik regresyon, kullanıyoruz scikit-öğrenmek kütüphane. Python'da lojistik regresyon süreci aşağıda verilmiştir:

  1. Lojistik regresyon ve diğer kütüphaneler için gerekli tüm paketleri içe aktarın.
  2. Veri kümesini yükleyin.
  3. Bağımsız veri kümesi değişkenlerini ve bağımlı değişkenleri anlama.
  4. Veri kümesini eğitim ve test verilerine ayırın.
  5. Lojistik regresyon modelini başlat.
  6. Modeli eğitim veri kümesiyle sığdır.
  7. Test verilerini kullanarak modeli tahmin edin ve modelin doğruluğunu hesaplayın.

Sorun: İlk adımlar, uygulamak istediğimiz veri setini toplamaktır Lojistik regresyon. Burada kullanacağımız veri seti, MS kabul veri seti içindir. Bu veri kümesinin dört değişkeni vardır ve bunlardan üçü bağımsız değişkendir (GRE, GPA, work_experience) ve biri bağımlı değişkendir (kabul edilir). Bu veri seti, adayın GPA, GRE veya iş deneyimine dayalı olarak prestijli bir Üniversiteye kabul edilip edilmeyeceğini söyleyecektir.

Aşama 1: Python programı için gerekli olan tüm kütüphaneleri içe aktarıyoruz.

Adım 2: Şimdi, read_csv pandas işlevini kullanarak ms giriş veri setimizi yüklüyoruz.

Aşama 3: Veri kümesi aşağıdaki gibi görünür:

4. Adım: Veri setinde bulunan tüm sütunları kontrol ediyoruz ve ardından aşağıdaki ekran görüntüsünde gösterildiği gibi tüm bağımsız değişkenleri X değişkenine ve bağımlı değişkenleri y olarak ayarlıyoruz.

Adım 5: Bağımsız değişkenleri X'e ve bağımlı değişkeni y'ye ayarladıktan sonra, şimdi burada baş pandalar işlevini kullanarak X ve y'yi çapraz kontrol etmek için yazdırıyoruz.

6. Adım: Şimdi tüm veri setini eğitim ve test olarak ayıracağız. Bunun için sklearn'in train_test_split yöntemini kullanıyoruz. Tüm veri setinin %25'ini teste, kalan %75'ini eğitime verdik.

7. Adım: Şimdi tüm veri setini eğitim ve test olarak ayıracağız. Bunun için sklearn'in train_test_split yöntemini kullanıyoruz. Tüm veri setinin %25'ini teste, kalan %75'ini eğitime verdik.

Ardından Lojistik Regresyon modelini oluşturuyoruz ve eğitim verilerine uyuyoruz.

Adım 8: Artık modelimiz tahmin için hazır, yani şimdi test (X_test) verilerini modele geçiriyoruz ve sonuçları alıyoruz. Sonuçlar (y_predictions), 1 (kabul edilen) ve 0 (kabul edilmeyen) değerlerinin olduğunu gösterir.

9. Adım: Şimdi sınıflandırma raporunu ve karışıklık matrisini yazdırıyoruz.

Sınıflandırma_raporu, modelin sonuçları %69 doğrulukla tahmin edebildiğini gösterir.
Karışıklık matrisi, toplam X_test veri ayrıntılarını şu şekilde gösterir:
TP = Gerçek Pozitifler = 8
TN = Gerçek Negatifler = 61
FP = Yanlış Pozitifler = 4
FN = Yanlış Negatifler = 27

Bu nedenle, karışıklık_matrix'e göre toplam doğruluk:

Doğruluk = (TP+TN)/Toplam = (8+61)/100 = 0.69

Adım 10: Şimdi sonucu yazdırarak çapraz kontrol edeceğiz. Bu nedenle, head pandas işlevini kullanarak X_test ve y_test'in (gerçek gerçek değer) ilk 5 öğesini yazdırıyoruz. Ardından, aşağıda gösterildiği gibi tahminlerin ilk 5 sonucunu da yazdırıyoruz:

Aşağıda gösterildiği gibi tahminleri anlamak için üç sonucu da bir sayfada birleştiriyoruz. Doğru (1) olan 341 X_test verisi dışında, tahminin yanlış (0) olduğunu görebiliriz. Dolayısıyla, yukarıda da gösterdiğimiz gibi, model tahminlerimiz %69 oranında çalışıyor.

Adım 11 : Böylece X_test gibi görünmeyen veri setlerinde model tahminlerinin nasıl yapıldığını anlıyoruz. Böylece, bir panda veri çerçevesi kullanarak rastgele yeni bir veri seti oluşturduk, onu eğitilmiş modele ilettik ve aşağıda gösterilen sonucu aldık.

Aşağıda verilen python'daki kodun tamamı:

Bu blogun kodu, veri kümesiyle birlikte aşağıdaki bağlantıda mevcuttur
https://github.com/shekharpandey89/lojistik-regresyon

Linux Oyuncuları için Faydalı Araçlar
Linux'ta oyun oynamayı seviyorsanız, oyun deneyimini geliştirmek için Wine, Lutris ve OBS Studio gibi uygulamaları ve yardımcı programları kullanmış o...
Daha Önce Bir Linux Sürümü Olmayan Linux için HD Remastered Oyunlar
Birçok oyun geliştiricisi ve yayıncısı, franchise'ın ömrünü uzatmak için eski oyunların HD remaster'ı ile geliyor, lütfen modern donanımla uyumluluk i...
Linux Oyunlarını Otomatikleştirmek için AutoKey Nasıl Kullanılır?
AutoKey, Linux ve X11 için Python 3, GTK ve Qt'de programlanmış bir masaüstü otomasyon aracıdır. Komut dosyası oluşturma ve MAKRO işlevselliğini kulla...