CommencezCommencez gratuitement

Appliquer les deux étapes

Puisque vous avez créé les fonctions expectation et maximization, vous pouvez maintenant appliquer l'algorithme EM à un cadre de données.

L'objectif de cet exercice est de trouver deux grappes gaussiennes dans les données gaussian_sample. Supposons que les deux sd sont égaux à 10.

Cette activité fait partie du cours

Modèles de mélange en R

Voir le cours

Instructions de l’exercice

  • Commencez avec l'hypothèse qu'une des grappes a une moyenne de 0 et l'autre de 100. Utilisez les fonctions expectation et maximization pour créer une liste new_values.
  • Enregistrez ces valeurs dans le vecteur means_init. Considérez que les proportions sont égales dans le vecteur props_init.
  • Faites 10 itérations.

Exercice interactif pratique

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

means_init <- c(0, 100)
___ <- c(0.5, 0.5)

# Iterative process
for(i in 1:___){
  ___ <- maximization(___(gaussian_sample, means_init, props_init, c(10, 10)))
  means_init <- new_values[[1]]
  props_init <- ___[[2]]
  cat(c(i, means_init, props_init), "\n")
}
Modifier et exécuter le code