Cara kerja regresi logistik

Regresi Tingkat Menengah di R

Richie Cotton

Data Evangelist at DataCamp

Jumlah kuadrat tidak cocok

sum((y_pred - y_actual) ^ 2)

y_actual selalu 0 atau 1.

y_pred berada di antara 0 dan 1.

Ada metrik yang lebih baik daripada jumlah kuadrat.

Regresi Tingkat Menengah di R

Likelihood

    y_pred * y_actual
Regresi Tingkat Menengah di R

Likelihood

    y_pred * y_actual + (1 - y_pred) * (1 - y_actual)
Regresi Tingkat Menengah di R

Likelihood

sum(y_pred * y_actual + (1 - y_pred) * (1 - y_actual))

Saat y_actual = 1

y_pred * 1 + (1 - y_pred) * (1 - 1) = y_pred

Saat y_actual = 0

y_pred * 0 + (1 - y_pred) * (1 - 0) = 1 - y_pred
Regresi Tingkat Menengah di R

Log-likelihood

  • Menghitung likelihood menjumlahkan banyak angka sangat kecil, berisiko error numerik.
  • Log-likelihood lebih mudah dihitung.
log(y_pred) * y_actual + log(1 - y_pred) * (1 - y_actual)

Keduanya memberi hasil yang sama.

Regresi Tingkat Menengah di R

Negative log-likelihood

Memaksimalkan log-likelihood sama dengan meminimalkan negative log-likelihood.

-sum(log_likelihoods)
Regresi Tingkat Menengah di R

Algoritma regresi logistik

calc_neg_log_likelihood <- function(coeffs) {

intercept <- coeffs[1] slope <- coeffs[2]
# More calculation!
}
optim(
  par = ???,
  fn = ???
)
Regresi Tingkat Menengah di R

Ayo berlatih!

Regresi Tingkat Menengah di R

Preparing Video For Download...