CommencezCommencez gratuitement

Maximiser la vraisemblance, 1re partie

Plus tôt, nous avons choisi la mean de l'échantillon comme estimation du paramètre de modèle de population mu. Mais comment savoir si la moyenne d'échantillon est le meilleur estimateur? Ce n'est pas simple, alors procédons en deux étapes.

Dans la 1re partie, vous utiliserez une approche informatique pour calculer la log-vraisemblance d'une estimation donnée. Ensuite, dans la 2e partie, nous verrons qu'en calculant la log-vraisemblance pour de nombreuses valeurs possibles de l'estimation, une valeur donnera la vraisemblance maximale.

Cette activité fait partie du cours

Introduction aux modèles linéaires en Python

Voir le cours

Instructions de l’exercice

  • Calculez mean() et std() des sample_distances préchargées comme valeurs supposées des paramètres du modèle de probabilité.
  • Calculez la probabilité, pour chaque distance, en utilisant gaussian_model() construit à partir de sample_mean et sample_stdev.
  • Calculez la loglikelihood comme sum() du log() des probabilités probs.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Compute sample mean and stdev, for use as model parameter value guesses
mu_guess = np.____(sample_distances)
sigma_guess = np.____(sample_distances)

# For each sample distance, compute the probability modeled by the parameter guesses
probs = np.zeros(len(sample_distances))
for n, distance in enumerate(sample_distances):
    probs[n] = gaussian_model(____, mu=____, sigma=____)

# Compute and print the log-likelihood as the sum() of the log() of the probabilities
loglikelihood = np.____(np.____(probs))
print('For guesses mu={:0.2f} and sigma={:0.2f}, the loglikelihood={:0.2f}'.format(mu_guess, sigma_guess, ____))
Modifier et exécuter le code