Regresi logistik adalah algoritma machine learning diawasi dalam ilmu data. Ini adalah jenis algoritma klasifikasi yang memprediksi hasil diskret atau kategoris. Sebagai contoh, kita dapat menggunakan model klasifikasi untuk menentukan apakah pinjaman disetujui atau tidak berdasarkan prediktor seperti jumlah tabungan, pendapatan, dan skor kredit.
Pada artikel ini, kita menyelami matematika di balik regresi logistik — salah satu algoritma klasifikasi yang paling banyak digunakan dalam machine learning dan kecerdasan buatan (AI). Kami juga akan menyelami detail analisis regresi, kasus penggunaan, dan berbagai jenis regresi logistik. Dalam era AI generatif, fondasi yang menopang regresi masih memainkan peran penting dalam mengatur model neural networks yang kompleks. Regresi logistik juga masih sangat relevan dalam melakukan pengujian statistik dalam konteks penelitian ilmu perilaku dan sosial, dan bidang ilmu data pada umumnya. Kita dapat menerapkan regresi logistik dengan mudah dengan menggunakan modul scikit-learn di Python.
Dalam bagian Penjelas ini, kami memperkenalkan Anda pada perbedaan antara regresi linier dan regresi logistik, dasar-dasar matematika, berbagai jenis regresi logistik, dan contoh penggunaan terkait.
Regresi logistik, seperti regresi linier, adalah jenis model linier yang menguji hubungan antara variabel prediktor (variabel independen) dan variabel output (respons, target, atau variabel dependen). Perbedaan utamanya adalah bahwa regresi linier digunakan ketika output adalah nilai kontinu—misalnya, memprediksi skor kredit seseorang. Regresi logistik digunakan ketika hasilnya kategoris, seperti apakah pinjaman disetujui atau tidak.
Dalam regresi logistik, model memprediksi probabilitas bahwa hasil tertentu terjadi. Misalnya, mengingat profil keuangan seseorang, kami dapat memprediksi kemungkinan pinjaman mereka disetujui. Output dari model adalah nilai antara 0 dan 1. Berdasarkan ambang batas—sering kali 0,5—kami mengklasifikasikan hasilnya sebagai "disetujui" atau "tidak disetujui." Alih-alih menggambar garis lurus melalui data seperti yang kita lakukan dalam regresi linier, regresi logistik cocok dengan kurva berbentuk S untuk memetakan nilai input ke probabilitas.
Baik regresi linier maupun logistik menggunakan uji statistik untuk mengevaluasi variabel prediktor mana yang secara signifikan memengaruhi output. Teknik seperti uji-t dan analisis varians (ANOVA) (atau uji rasio kemungkinan untuk regresi logistik) menghasilkan nilai p untuk setiap koefisien, yang membantu kami menilai apakah hubungan tersebut signifikan secara statistik. Nilai p rendah (biasanya di bawah 0,05) menunjukkan bahwa variabel berkontribusi secara bermakna pada model. Kami juga mengevaluasi kesesuaian—seberapa baik model menjelaskan hasil yang diamati—menggunakan metrik yang berbeda, tergantung pada jenis regresi.
Saat kami membangun model, penting untuk menghindari overfitting, di mana model menangkap ketidakakuratan dalam data pelatihan dan berkinerja buruk pada data baru. Risiko ini meningkat ketika kita memiliki banyak variabel prediktor tetapi ukuran sampel kecil. Untuk mengatasi masalah ini, kita dapat menerapkan regularisasi, teknik yang mengurangi pengaruh variabel yang kurang penting dengan mengecilkan koefisiennya. Perhatian yang cermat juga harus diberikan pada outlier, karena dapat mendistorsi model dan menyebabkan nilai p atau koefisien yang menyesatkan. Dalam praktiknya, kami meningkatkan model melalui beberapa iterasi pemilihan fitur, pengujian, dan penyempurnaan.
Untuk membandingkan kedua model secara lebih konkret, pertimbangkan skenario regresi linier di mana kita ingin memprediksi skor kredit seseorang, berdasarkan fitur seperti tabungan mereka saat ini. Kita dapat memodelkan ini sebagai:
Seperti regresi linier, regresi logistik adalah jenis model linier yang berada di bawah keluarga model linier umum (GLM). Seperti pada contoh sebelumnya, jika kita ingin merepresentasikan probabilitas menyetujui atau tidak menyetujui, kita menerapkan fungsi linier.
Karena fungsi linier mengasumsikan hubungan linier, ketika nilai X berubah, Y dapat mengambil nilai dari (-inf, inf). Probabilitas, seperti yang kita ketahui, terbatas pada [0,1]. Dengan menggunakan prinsip model linier ini, kita tidak dapat secara langsung memodelkan probabilitas untuk hasil biner. Sebaliknya, kita membutuhkan model logistik untuk memahami probabilitas. Oleh karena itu, kami ingin menerapkan transformasi pada input sehingga hasilnya dapat dibatasi. Transformasi ini dikenal sebagai persamaan regresi logistik. Persamaan ini mungkin terlihat rumit, tetapi kami akan memecahnya langkah demi langkah tentang derivasinya di bagian berikut.
Transformasi sigmoid memungkinkan kita membuat prediksi biner untuk contoh penggunaan sebelumnya. Setelah menerapkan transformasi, nilai X dapat mengambil (-inf, inf) dan y akan dibatasi pada [0,1]
Untuk memahami fungsi regresi logistik (atau fungsi sigmoid), kita membutuhkan dasar yang kuat tentang konsep berikut:
Log dari rasio probabilitas dikenal sebagai fungsi logit dan ini menjadi dasar regresi logistik.
Karena kita tidak dapat memodelkan probabilitas secara langsung dengan menggunakan fungsi linier—karena probabilitas dibatasi antara 0 dan 1—kita akan bekerja dengan peluang. Meskipun probabilitas dan peluang menunjukkan kemungkinan hasil, mereka berbeda dalam hal definisi:
Probabilitas mengukur kemungkinan suatu peristiwa terjadi dari semua hasil yang mungkin terjadi.
Peluang membandingkan kemungkinan terjadinya atau tidak terjadinya suatu peristiwa.
Misalkan p (x) mewakili probabilitas suatu hasil. Kemudian, peluang x didefinisikan sebagai:
Mari kita ambil contoh konkret:
Misalkan keranjang berisi 3 apel dan 5 jeruk.
- Probabilitas memetik jeruk adalah 5/ (3+5) = 0,625
- Peluang memetik jeruk adalah 5/3 ≈ 1,667
Ini berarti bahwa memetik jeruk adalah ≈1,667 kali lebih mungkin daripada memetik apel. Sebaliknya, peluang memetik apel adalah 3/5 = 0,6, yang kurang dari 1, yang mengindikasikan hasil (memetik apel) lebih kecil kemungkinannya daripada tidak. Mengikuti persamaan peluang, kita juga dapat menganggap peluang sebagai probabilitas dari terjadinya hasil lebih dari 1 - probabilitas dari terjadinya hasil. Oleh karena itu, kemungkinan memetik jeruk adalah = P(jeruk)/(1-P (jeruk)) = 0,625/ (1-0,625) ≈1,667
Peluang dapat berkisar dari 0 hingga tak terbatas. Nilai peluang lebih besar dari 1 menunjukkan hasil yang menguntungkan, kurang dari 1 menunjukkan hasil yang tidak menguntungkan, dan sama dengan 1 berarti peristiwa itu bisa terjadi atau tidak.
Namun, peluangnya tidak simetris di sekitar 1. Misalnya, peluang 2 dan 0,5 mewakili "dua kali lebih mungkin" dan "setengah lebih mungkin", tetapi keduanya memiliki skala numerik yang sangat berbeda. Untuk mengatasi ketidakseimbangan ini, kami mengambil logaritma peluang, yang mengubah skala peluang [0, ∞) yang tidak terbatas menjadi garis bilangan riil (-∞, ∞). Ini dikenal sebagai log-odds, atau logit, dan merupakan dasar dari model regresi logistik.
Kami mendefinisikan log-odds sebagai:
Transformasi ini memungkinkan kita untuk mengekspresikan log-odds sebagai fungsi linier dari input:
Kita kemudian dapat memangkatkan kedua sisi untuk kembali ke peluang:
Pemecahan untuk kami mendapatkan fungsi sigmoid, yang membantu memastikan nilai prediksi tetap antara 0 dan 1:
Transformasi ini memungkinkan regresi logistik untuk menghasilkan probabilitas yang valid, meskipun kami memodelkannya menggunakan fungsi linier di bawahnya.
Terakhir, mari kita tambahkan rasio peluang, sebuah konsep yang membantu menafsirkan efek koefisien model. Rasio peluang memberi tahu kita bagaimana peluang berubah ketika variabel input x1 meningkat hingga satu unit.
Katakanlah peluang peristiwa adalah:
Jika kita meningkatkan x1 dengan satu unit, peluang baru menjadi:
Ini berarti bahwa untuk setiap peningkatan satu unit dalam x1, peluang dikalikan dengan eb1 . Pengali ini adalah rasio peluang.
- Jika b1>1, maka peluang meningkat (peristiwa menjadi lebih mungkin)
- Jika b1<1, maka peluang berkurang (peristiwa menjadi seperti mungkin)
- Jika b1=1, rasio peluang adalah 0, artinya input tidak berpengaruh pada peluang
Rasio odds memberikan regresi logistik interpretabilitasnya—ini memberi tahu Anda bagaimana peluang suatu peristiwa berubah berdasarkan input, yang berguna dalam banyak kondisi terapan seperti perawatan kesehatan, pemasaran, dan keuangan. Namun, kita tidak dapat menafsirkan koefisien dengan cara seperti penafsiran regresi linier. Dalam bagian selanjutnya, mari kita lihat dari dekat bagaimana koefisien ditentukan dan ditafsirkan.
Ingat dari bagian sebelumnya: dalam regresi linier, koefisiennya mudah ditafsirkan. Ambil contoh regresi linier dengan variabel kontinu: untuk peningkatan satu unit dalam fitur input x menghasilkan peningkatan b1-unit dalam hasil prediksi y. Hubungan langsung ini bekerja karena regresi linier mengasumsikan tingkat perubahan yang konstan antara fitur input dan target. Outputnya tidak terbatas dan bertambah secara linier.
Namun, regresi logistik tidak memodelkan y secara langsung, melainkan memodelkan probabilitas y melalui log-odds (log peluang). Karena itu, kita tidak dapat mengatakan bahwa peningkatan satu unit dalam x menghasilkan perubahan satuan konstan dalam y. Sebaliknya, kami menafsirkan koefisien dalam hal pengaruhnya terhadap log-odds, dan lebih jauh lagi, pada peluang dan probabilitas hasil.
Lebih khusus lagi, dalam regresi logistik:
Yang penting, besarnya koefisien mencerminkan seberapa kuat pengaruh ini, dan rasio peluang (yang merupakan eksponensial dari koefisien) memberi tahu kita seberapa besar perubahan peluang untuk peningkatan satu unit dalam variabel.
Sama seperti algoritma machine learning lainnya, kami dapat menggabungkan variabel kategoris dalam membuat prediksi untuk regresi logistik. Saat bekerja dengan variabel kategoris atau diskret, kami sering menggunakan teknik rekayasa fitur seperti one-hot encoding atau variabel dummy untuk mengubahnya menjadi format biner yang dapat digunakan model.
Sebagai contoh, dengan menggunakan konsep yang sama dengan sebelumnya, katakanlah kita ingin memprediksi apakah seseorang disetujui untuk mendapatkan pinjaman ( untuk disetujui, untuk tidak disetujui) berdasarkan apakah mereka masih memiliki utang:
- Tetapkan berarti mereka tidak memiliki utang
- Tetapkan berarti mereka memiliki utang
Log-odds kami untuk adalah
Koefisien , kemudian merepresentasikan perubahan dalam log-odds disetujui ketika orang tersebut memiliki utang, dibandingkan dengan orang yang tidak memiliki utang.
Untuk membuatnya lebih dapat ditafsirkan, kita dapat memangkatkan b1 untuk mendapatkan rasio peluang:
Jadi, meskipun kita kehilangan interpretasi langsung tentang koefisien dari regresi linier, regresi logistik masih menawarkan insight yang kaya dan dapat ditafsirkan—terutama ketika kita membingkainya dalam hal pergeseran peluang dan probabilitas. Besarnya kenaikan atau penurunan probabilitas sebagai fungsi dari tidak sesuai dengan peningkatan satu unit dalam , tapi tergantung pada di mana berada pada titik tertentu.
Koefisien dalam regresi logistik, dan , diestimasi dengan menggunakan estimasi kemungkinan maksimum (MLE). Konsep inti di balik MLE adalah menemukan parameter yang membuat data yang diamati paling "mungkin" di bawah model regresi logistik.
Dalam regresi logistik, kami memodelkan probabilitas bahwa variabel target adalah 1 (misalnya, "disetujui") diberi input dengan menggunakan fungsi logistik (sigmoid):
MLE mencoba berbagai kombinasi dan , dan untuk setiap kombinasi, tanyakan: Seberapa besar kemungkinan kita akan melihat hasil yang sebenarnya pada data kita, dengan semua parameter ini?
Ini didapat dengan menggunakan fungsi kemungkinan, yang mengalikan probabilitas yang diprediksi untuk setiap titik data:
- Jika =1 (“disetujui”), kami ingin probabilitas model yang diprediksi sedekat 1. Bagian mengatasi hal ini. Jika data diamati aktual dari y1 sebenarnya “disetujui” atau 1, bagian ini akan menjadi 1.
- Jika =0, kita ingin probabilitas yang diprediksi mendekati 0. Bagian mengatasi kasus ini. Jika data diamati aktual adalah “tidak disetujui”, atau 0, nilainya akan akan mendekati 0, oleh karena itu akan mendekati 1.
Jadi untuk setiap titik data, kita kalikan ATAU , tergantung pada apakah label aktual adalah 1 atau 0. Hasil perkalian dari semua contoh memberi kita satu angka: kemungkinan melihat seluruh kumpulan data di bawah model saat ini. Seperti yang bisa kita lihat, jika hasil yang diprediksi (menggunakan parameter dan ) sesuai dengan data yang diamati, nilai kemungkinan akan dimaksimalkan. Alasan di balik mengalikan semua probabilitas secara bersamaan adalah karena kami mengasumsikan hasil yang independen satu sama lain. Dengan kata lain, kesempatan satu orang untuk mendapatkan persetujuan seharusnya tidak memengaruhi kesempatan orang lain untuk mendapatkan persetujuan.
Karena hasil perkalian ini bisa menjadi sangat kecil, kami biasanya menggunakan log-likelihood, yang mengubahnya menjadi sebuah jumlah dan lebih mudah untuk dihitung dan dioptimalkan.
Untuk menemukan nilai dari dan yang memaksimalkan log-likelihood, kami menggunakan gradient descent—algoritma pengoptimalan berulang. Pada setiap langkah, kami menghitung bagaimana log-likelihood berubah sehubungan dengan setiap parameter (misalnya, gradiennya), dan kemudian agak memperbarui parameter ke arah yang meningkatkan kemungkinan. Seiring waktu, proses ini menyatu menuju nilai dan yang paling sesuai dengan data.
Ada tiga jenis model regresi logistik, yang didefinisikan berdasarkan respons kategoris.
Regresi logistik umumnya digunakan untuk masalah prediksi dan klasifikasi. Beberapa contoh penggunaan ini meliputi:
Latih, validasi, lakukan tuning, dan terapkan AI generatif, model dasar, dan kemampuan machine learning dengan IBM watsonx.ai, studio perusahaan generasi berikutnya untuk pembangun AI. Bangun aplikasi AI dalam waktu singkat, dengan sedikit data.
Gunakan AI di bisnis Anda dalam perpaduan antara keahlian AI terdepan di industri dari IBM dan portofolio solusi Anda.
Temukan kembali alur kerja dan operasi yang penting dengan menambahkan AI untuk memaksimalkan pengalaman, pengambilan keputusan secara real-time, dan nilai bisnis.