Perbandingan Model Regresi Logistik Biner dan Multinomial
1. Pendahuluan
Analisis regresi logistik merupakan salah satu metode statistik yang digunakan untuk memodelkan hubungan antara satu variabel dependen (respon) dengan satu atau lebih variabel independen (prediktor), terutama ketika variabel dependen bersifat kategorikal.
Dalam tugas ini, akan dilakukan dua jenis analisis:
a. Regresi Logistik Biner (Binary Logistic Regression)
→ digunakan ketika variabel respon hanya memiliki dua kategori (misalnya Ya atau Tidak).
b. Regresi Logistik Multinomial (Multinomial Logistic Regression)
→ digunakan ketika variabel respon memiliki lebih dari dua kategori (misalnya Rendah, Sedang, Tinggi).
2. Tujuan Analisis
Tujuan dari tugas ini adalah membandingkan dua jenis model regresi logistik — yaitu Binary Logistic Regression dan Multinomial Logistic Regression — untuk melihat model mana yang lebih akurat dalam memprediksi variabel target berdasarkan data yang tersedia.
3. Konsep Dasar
a. Binary Logistic Regression
Model ini digunakan jika variabel dependen \((Y)\) hanya memiliki dua kategori (misalnya: “Success = 1” dan “Tidak Success = 0”). Rumus umumnya: \[ \text{logit}(p) = \ln\left(\frac{p}{1 - p}\right) = \beta_0 + \beta_1 X_1 + \beta_2 X_2 + \dots + \beta_k X_k \] Hasilnya berupa probabilitas keberhasilan (p) antara 0 dan 1.
b. Multinomial Logistic Regression
Model ini digunakan jika variabel dependen memiliki lebih dari dua kategori (misalnya: “Satisfaction = Low, Medium, High”). Rumusnya: \[ P(Y = k) = \frac{e^{\mathbf{X} \boldsymbol{\beta}_k}}{\sum_{j=1}^{K} e^{\mathbf{X} \boldsymbol{\beta}_j}} \] Hasilnya memberikan probabilitas untuk setiap kategori (bukan hanya dua).
4. Langkah-langkah Analisi
Langkah 1: Import dan Cek Data
## Rows: 200
## Columns: 6
## $ X <int> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17…
## $ Advertising <dbl> 12.189438, 24.707628, 15.224423, 27.075435, 28.511682, 6.…
## $ Salespeople <dbl> 15.96815, 34.05897, 25.03414, 22.87574, 20.06433, 32.0061…
## $ Satisfaction <dbl> 9.874489, 2.233607, 9.147786, 6.186717, 4.559040, 5.04822…
## $ Competition <dbl> 3.135067, 7.178413, 3.032366, 3.866451, 2.565854, 8.21286…
## $ Success <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, …
## X Advertising Salespeople Satisfaction
## Min. : 1.00 Min. : 5.016 Min. :10.16 Min. :1.004
## 1st Qu.: 50.75 1st Qu.:11.803 1st Qu.:15.89 1st Qu.:3.462
## Median :100.50 Median :17.052 Median :21.73 Median :5.555
## Mean :100.50 Mean :17.660 Mean :22.23 Mean :5.520
## 3rd Qu.:150.25 3rd Qu.:23.334 3rd Qu.:28.55 3rd Qu.:7.813
## Max. :200.00 Max. :29.857 Max. :34.99 Max. :9.970
## Competition Success
## Min. :1.011 Min. :0.00
## 1st Qu.:3.217 1st Qu.:1.00
## Median :5.429 Median :1.00
## Mean :5.442 Mean :0.92
## 3rd Qu.:7.797 3rd Qu.:1.00
## Max. :9.954 Max. :1.00
## X Advertising Salespeople Satisfaction Competition Success
## 0 0 0 0 0 0
Penjelasan:
- tidyverse digunakan untuk manipulasi data dan visualisasi.
- tidymodels, caret, dan yardstick digunakan untuk model dan evaluasi.
- nnet digunakan untuk multinomial logistic regression.
Langkah 2: Menentukan Target dan Split Data
Misalnya, pada dataset ini:
- Variabel Binary -> Success (0 = gagal, 1 = berhasil)
- Variabel Multinomial -> Statisfaction_cat (kategori kepuasan)
## [1] "X" "Advertising" "Salespeople" "Satisfaction" "Competition"
## [6] "Success"
Penjelasan:
Kita membagi data menjadi \(70\)% training dan \(30\)% testing. strata digunakan agar proporsi kategori target tetap seimbang.
Langkah 3: Binary Logistik Regression
##
## Call:
## glm(formula = Success ~ Advertising + Salespeople + Satisfaction +
## Competition, family = binomial, data = train_bin)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -6.47435 2.19941 -2.944 0.00324 **
## Advertising 0.18133 0.06590 2.751 0.00593 **
## Salespeople 0.25127 0.08277 3.036 0.00240 **
## Satisfaction 0.51994 0.16995 3.059 0.00222 **
## Competition -0.18244 0.16077 -1.135 0.25646
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 86.548 on 139 degrees of freedom
## Residual deviance: 49.767 on 135 degrees of freedom
## AIC: 59.767
##
## Number of Fisher Scoring iterations: 7
## Predicted
## Actual 0 1
## 0 1 2
## 1 2 55
## [1] 0.9333333
Dimana:
a. Ringkasan Model (summary(model_bin))
Ini adalah hasil ringkasan model regresi logistik yang menunjukkan:
- Koefisien setiap variabel (Advertising, Salespeople, Satisfaction, Competition)
Nilai koefisien menunjukkan pengaruh masing-masing variabel terhadap peluang keberhasilan (Success). - Koefisien positif → variabel meningkatkan peluang keberhasilan. - Koefisien negatif → variabel menurunkan peluang keberhasilan.
- Nilai p-value untuk menguji signifikanasi
masing-masing variabel.
- p-value kecil (biasanya < 0.05) berarti variabel signifikan mempengaruhi Success
- Intercept adalah baseline log-odds keberhasilan saat semua variabel prediktor bernilai nol.
b. Prediksi Probabilitas pred_bin
Model menghasilkan nilai antara 0 dan 1, yang artinya probabilitas prediksi keberhasilan untuk tiap data di test set.
Contoh:
Jika pred_bin[i] = \(0.8\) berarti model memprediksi data ke-i memiliki peluang \(80\)% untuk Success = \(1\).
C. Klasifikasi Hasil Prediksi (pred_bin_class)
Probabilitas tadi diubah ke kelas diskrit:
- Jika > \(0.5\) -> prediksi Success = \(1\) (berhasil)
- Jika \(\leq\) \(0.5\) -> prediksi Success = \(0\) (gagal)
d. Confusion Matrix (conf_mat_bin)
Misalkan hasilnya seperti ini: \[ \begin{array}{c|cc} \text{Actual} \backslash \text{Predicted} & 0 & 1 \\ \hline 0 & 40 & 10 \\ 1 & 5 & 45 \\ \end{array} \] Artinya:
- 40 data yang sebenarnya 0 diprediksi benr 0 (True Negative)
- 45 data yang sebenarnya 1 diprediksi bener 1 (True Positive)
- 10 data yang sebenarnya 0 salah diprediksi 1 (False POsitive)
- 5 data yang sebenarnya 1 salah diprediksi 0 (False Negative)
e. Akurasi (accuracy_bin)
Misal akurasi 0.85 -> artinya model memprediksi dengan benar \(85\)% dari semua data testing.
Langkah 4: Multinommial Logistik Regression
## [1] "X" "Advertising" "Salespeople" "Satisfaction"
## [5] "Competition" "Success" "Satisfaction_cat"
## # weights: 18 (10 variable)
## initial value 151.608496
## iter 10 value 141.823194
## final value 141.706531
## converged
## Call:
## nnet::multinom(formula = Satisfaction_cat ~ Advertising + Salespeople +
## Competition + Success, data = train_multi, maxit = 1000)
##
## Coefficients:
## (Intercept) Advertising Salespeople Competition SuccessYa
## Sedang -2.6821879 -0.004474509 0.008989837 0.09721557 2.160575
## Tinggi 0.4796326 -0.076052863 -0.060283586 0.02227914 2.181477
##
## Std. Errors:
## (Intercept) Advertising Salespeople Competition SuccessYa
## Sedang 1.410719 0.03203124 0.03100914 0.08239920 1.145696
## Tinggi 1.204516 0.03253664 0.03180666 0.08521589 0.912896
##
## Residual Deviance: 283.4131
## AIC: 303.4131
## Predicted
## Actual Rendah Sedang Tinggi
## Rendah 6 9 6
## Sedang 6 8 6
## Tinggi 4 6 11
## [1] 0.4032258
Dimana:
- multinom() digunakan untuk data target lebih dari dua kategori.
- Prediksi dikategorikan, lalu dibandingkan dengan nilai aktual untuk menghitung akurasi.
Langkah 5: Membandingkan Akurasi
accuracy_df <- data.frame(
Model = c("Binary Logistic Regression", "Multinomial Logistic Regression"),
Accuracy = c(accuracy_bin, accuracy_multi)
)
print(accuracy_df)## Model Accuracy
## 1 Binary Logistic Regression 0.9333333
## 2 Multinomial Logistic Regression 0.4032258
Dimana:
Tabel ini menampilkan perbandingan akurasi dua model. Model dengan nilai akurasi lebih tinggi -> lebih akurat.
Langkah 6: Visualisasi Perbandingan Akurasi
Dimana:
Grafik batang ini menunjukkan akurasi masing-masing model secara visual. Semakin tinggi batang, semakin akurat model tersebut.
Langkah 7: Visualisasi Distribusi Prediksi Binary
4. Interpretasi Hasil
- Jika accuracy_bin > accuracy_multi -> Model Binary Logistik lebih baik.
- Jika accuracy_multi > accuracy_bin -> Model Multinomial lebih baik.
- Nilai akurasi mendekati \(1\) menunjukkan model memprediksi dengan sangat baik.
- Selain akurasi, kamu juga bisa menilai dari confusion matrix untuk melihat kesalahan klasifikasi.
- Model dengan akurasi lebih tinggi lebih mampu mengenali pola hubungan antara variabel prediktor (Advertising, Salespeople, Competition, dll.) dengan variabel target.
- Jika Multinomial lebih akurat → berarti informasi kategori kepuasan pelanggan memberikan kontribusi lebih besar terhadap pemahaman karakteristik performa bisnis.
- Jika Binary lebih akurat → berarti pemisahan sederhana antara “berhasil” dan “tidak berhasil” sudah cukup mewakili prediksi performa.
5. Kesimpulan
Berdasarkan analisis yang telah dilakukan menggunakan dua pendekatan regresi logistik, yaitu Binary Logistic Regression dan Multinomial Logistic Regression, dapat disimpulkan bahwa kedua model mampu memprediksi variabel target pada dataset dengan baik, namun tingkat akurasinya berbeda.
Model Binary Logistic Regression digunakan untuk memprediksi kategori Success (0 = tidak berhasil, 1 = berhasil). Sedangkan Multinomial Logistic Regression digunakan untuk memprediksi tingkat Satisfaction yang terdiri dari tiga level (Rendah, Sedang, Tinggi).
Refrensi
- Regression Models Klik disini
- Coding Studio Team December 2021 Klik disini
- Regresi Logistik (Biner, Ordinal, Multinomial), by Lumiveri Klik disini” >
- Oleh Karen Grace-Martnin Klik disini