MulaiMulai sekarang secara gratis

Algoritme regresi logistik

Mari menelusuri bagian internal dan mengimplementasikan algoritme regresi logistik. Karena fungsi glm() di R sangat kompleks, Anda akan fokus mengimplementasikan regresi logistik sederhana untuk satu himpunan data.

Alih-alih menggunakan jumlah kuadrat sebagai metrik, kita ingin menggunakan likelihood. Namun, log-likelihood lebih stabil secara komputasi, sehingga kita akan menggunakannya. Sebenarnya, ada satu perubahan lagi: karena kita ingin memaksimalkan log-likelihood, tetapi optim() secara bawaan mencari nilai minimum, lebih mudah untuk menghitung log-likelihood yang bernilai negatif.

Nilai log-likelihood untuk setiap observasi adalah

Formula for log-likelihood

Metrik yang dihitung adalah negatif dari jumlah kontribusi log-likelihood ini.

Nilai penjelas (kolom time_since_last_purchase dari churn) tersedia sebagai x_actual. Nilai respons (kolom has_churned dari churn) tersedia sebagai y_actual.

Latihan ini adalah bagian dari kursus

Regresi Tingkat Menengah di R

Lihat Kursus

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Set the intercept to 1
intercept <- ___

# Set the slope to 0.5
slope <- ___

# Calculate the predicted y values
y_pred <- ___

# Calculate the log-likelihood for each term
log_likelihoods <- ___

# Calculate minus the sum of the log-likelihoods for each term
___
Edit dan Jalankan Kode