CommencezCommencez gratuitement

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

Formula for log-likelihood

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

Voir le cours

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
___
Modifier et exécuter le code