Cum funcționează regresia logistică

Regresie intermediară în R

Richie Cotton

Data Evangelist at DataCamp

Suma pătratelor nu funcționează

sum((y_pred - y_actual) ^ 2)

y_actual este întotdeauna 0 sau 1.

y_pred este între 0 și 1.

Există o metrică mai bună decât suma pătratelor.

Regresie intermediară în R

Likelihood

    y_pred * y_actual
Regresie intermediară în R

Likelihood

    y_pred * y_actual + (1 - y_pred) * (1 - y_actual)
Regresie intermediară în R

Likelihood

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

Când y_actual = 1

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

Când y_actual = 0

y_pred * 0 + (1 - y_pred) * (1 - 0) = 1 - y_pred
Regresie intermediară în R

Log-likelihood

  • Calculul likelihood implică adunarea multor numere foarte mici, ceea ce duce la erori numerice.
  • Log-likelihood este mai ușor de calculat.
log(y_pred) * y_actual + log(1 - y_pred) * (1 - y_actual)

Ambele ecuații produc același rezultat.

Regresie intermediară în R

Log-likelihood negativ

Maximizarea log-likelihood este echivalentă cu minimizarea log-likelihood negativ.

-sum(log_likelihoods)
Regresie intermediară în R

Algoritmul regresiei logistice

calc_neg_log_likelihood <- function(coeffs) {

intercept <- coeffs[1] slope <- coeffs[2]
# More calculation!
}
optim(
  par = ???,
  fn = ???
)
Regresie intermediară în R

Să exersăm!

Regresie intermediară în R

Preparing Video For Download...