Algorithme de régression logistique
Allons voir sous le capot et implémentons un algorithme de régression logistique. Comme la fonction glm() de R est très complexe, vous allez vous en tenir à une régression logistique simple pour un seul jeu de données.
Plutôt que d'utiliser la somme des carrés comme mesure, nous voulons utiliser la vraisemblance. Toutefois, la log-vraisemblance est plus stable numériquement, donc nous l'emploierons à la place. En fait, il y a un autre changement : comme nous voulons maximiser la log-vraisemblance, mais que optim() cherche par défaut des minima, il est plus simple de calculer la log-vraisemblance négative.
La valeur de log-vraisemblance pour chaque observation est

La mesure à calculer est l'opposé de la somme de ces contributions de log-vraisemblance.
Les valeurs explicatives (la colonne time_since_last_purchase de churn) sont disponibles dans x_actual.
Les valeurs de réponse (la colonne has_churned de churn) sont disponibles dans y_actual.
Cette activité fait partie du cours
Régression intermédiaire en R
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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
___