Ilmu Data

Regresi Logistik dengan Python

Regresi Logistik dengan Python
Regresi logistik adalah algoritma klasifikasi pembelajaran mesin. Regresi logistik juga mirip dengan regresi linier. Tetapi perbedaan utama antara regresi logistik dan regresi linier adalah bahwa nilai keluaran regresi logistik selalu biner (0, 1) dan bukan numerik. Regresi logistik pada dasarnya menciptakan hubungan antara variabel bebas (satu atau lebih dari satu) dan variabel terikat. Variabel terikat adalah variabel biner yang sebagian besar memiliki dua kasus:

Pentingnya Regresi Logistik:

  1. Variabel independen tidak boleh multikolinearitas; jika ada beberapa hubungan, maka itu harus sangat sedikit.
  2. Dataset untuk regresi logistik harus cukup besar untuk mendapatkan hasil yang lebih baik.
  3. Hanya atribut-atribut itu yang harus ada di dataset, yang memiliki beberapa arti.
  4. Variabel bebas harus sesuai dengan peluang masuk.

Untuk membangun model regresi logistik, kami menggunakan scikit-belajar Perpustakaan. Proses regresi logistik di python diberikan di bawah ini:

  1. Impor semua paket yang diperlukan untuk regresi logistik dan perpustakaan lainnya.
  2. Unggah kumpulan data.
  3. Memahami variabel dataset independen dan variabel dependen.
  4. Pisahkan dataset menjadi data pelatihan dan pengujian.
  5. Inisialisasi model regresi logistik.
  6. Sesuaikan model dengan set data pelatihan.
  7. Prediksi model menggunakan data uji dan hitung akurasi model.

Masalah: Langkah pertama adalah mengumpulkan dataset yang ingin kita terapkan Regresi logistik. Dataset yang akan kita gunakan di sini adalah untuk dataset penerimaan MS. Dataset ini memiliki empat variabel dan tiga di antaranya adalah variabel independen (GRE, IPK, work_experience), dan satu adalah variabel dependen (diakui). Dataset ini akan memberi tahu apakah kandidat akan diterima atau tidak ke Universitas bergengsi berdasarkan IPK, GRE, atau pengalaman_kerja mereka.

Langkah 1: Kami mengimpor semua pustaka yang diperlukan yang kami perlukan untuk program python.

Langkah 2: Sekarang, kami memuat dataset penerimaan ms kami menggunakan fungsi read_csv pandas.

Langkah 3: Datasetnya seperti di bawah ini:

Langkah 4: Kami memeriksa semua kolom yang tersedia di dataset dan kemudian mengatur semua variabel independen ke variabel X dan variabel dependen ke y, seperti yang ditunjukkan pada tangkapan layar di bawah ini.

Langkah 5: Setelah mengatur variabel independen ke X dan variabel dependen ke y, sekarang kita mencetak di sini untuk memeriksa silang X dan y menggunakan fungsi kepala panda.

Langkah 6: Sekarang, kita akan membagi seluruh dataset menjadi pelatihan dan pengujian. Untuk ini, kami menggunakan metode train_test_split dari sklearn. Kami telah memberikan 25% dari seluruh dataset untuk pengujian dan sisanya 75% dari dataset untuk pelatihan.

Langkah 7: Sekarang, kita akan membagi seluruh dataset menjadi pelatihan dan pengujian. Untuk ini, kami menggunakan metode train_test_split dari sklearn. Kami telah memberikan 25% dari seluruh dataset untuk pengujian dan sisanya 75% dari dataset untuk pelatihan.

Kemudian kita buat model Regresi Logistik dan sesuaikan dengan data pelatihan.

Langkah 8: Sekarang, model kami siap untuk prediksi, jadi kami sekarang meneruskan data uji (X_test) ke model dan mendapatkan hasilnya. Hasil menunjukkan (y_predictions) bahwa nilai 1 (diterima) dan 0 (tidak diterima).

Langkah 9: Sekarang, kami mencetak laporan klasifikasi dan matriks kebingungan.

Klasifikasi_laporan menunjukkan bahwa model dapat memprediksi hasil dengan akurasi 69%.
Confusion matrix menunjukkan total detail data X_test sebagai:
TP = Benar Positif = 8
TN = Negatif Benar = 61
FP = Positif Palsu = 4
FN = Negatif Palsu = 27

Jadi, akurasi total menurut confusion_matrix adalah:

Akurasi = (TP+TN)/Total = (8+61)/100 = 0.69

Langkah 10: Sekarang, kita akan memeriksa silang hasilnya melalui print. Jadi, kami hanya mencetak 5 elemen teratas dari X_test dan y_test (nilai sebenarnya yang sebenarnya) menggunakan fungsi kepala panda. Kemudian, kami juga mencetak 5 hasil prediksi teratas seperti yang ditunjukkan di bawah ini:

Kami menggabungkan ketiga hasil dalam satu lembar untuk memahami prediksi seperti yang ditunjukkan di bawah ini. Kita dapat melihat bahwa kecuali untuk 341 data X_test, yang benar (1), prediksinya salah (0) selain itu. Jadi, prediksi model kami bekerja 69%, seperti yang telah kami tunjukkan di atas.

Langkah 11: Jadi, kami memahami bagaimana prediksi model dilakukan pada dataset yang tidak terlihat seperti X_test. Jadi, kami hanya membuat kumpulan data baru secara acak menggunakan kerangka data pandas, meneruskannya ke model terlatih, dan mendapatkan hasil yang ditunjukkan di bawah ini.

Kode lengkap dalam python diberikan di bawah ini:

Kode untuk blog ini, bersama dengan dataset, tersedia di tautan berikut
https://github.com/shekharpandey89/logistic-regression

Kontrol & kelola gerakan mouse di antara beberapa monitor di Windows 10
Manajer Mouse Tampilan Ganda memungkinkan Anda mengontrol & mengonfigurasi gerakan mouse di antara beberapa monitor, dengan memperlambat gerakannya di...
WinMouse memungkinkan Anda menyesuaikan & meningkatkan gerakan penunjuk tetikus di PC Windows
Jika Anda ingin meningkatkan fungsi default penunjuk tetikus Anda, gunakan freeware WinMouse. Ini menambahkan lebih banyak fitur untuk membantu Anda m...
Tombol klik kiri mouse tidak berfungsi pada Windows 10
Jika Anda menggunakan mouse khusus dengan laptop, atau komputer desktop, tetapi but tombol klik kiri mouse tidak berfungsi pada Windows 10/8/7 untuk b...