Loi gaussienne

Modèles de mélange en R

Victor Medina

Researcher at The University of Edinburgh

Modèle de mélange pour le jeu de données Gender

Modèles de mélange en R

Packages pour ajuster des modèles de mélange

  • mixtools
    • La loi de Poisson n'est pas implémentée.
  • bayesmix
    • L'inférence bayésienne est hors du périmètre du cours.
  • EMCluster
    • Uniquement des lois gaussiennes.
  • flexmix
    • Contient toutes les lois nécessaires et offre la flexibilité pour des modèles plus complexes.
Modèles de mélange en R

Propriétés de la loi gaussienne

Moyenne

Écart type

Modèles de mélange en R

Échantillonner selon une loi gaussienne

Pour générer des valeurs selon une loi gaussienne :

  • rnorm(n, mean, sd)

Exemple : générer 100 valeurs d'une loi gaussienne de moyenne 10 et d'écart type 5

 

> population_sample <- rnorm(n = 100, mean = 10, sd = 5)
> head(population_sample)
[1]  6.248874  9.564190 16.006521  9.139647 10.114969 16.423538
Modèles de mélange en R

Estimation de la moyenne

  • On ne connaît pas la moyenne ni l'écart type, seulement les observations
    • Ils doivent être estimés à partir des observations
  • Pour estimer la moyenne, on calcule la moyenne empirique

 

> mean_estimate <- mean(population_sample)
10.35759
Modèles de mélange en R

Pour estimer sd, appliquez la procédure suivante

$$value_i\rightarrow (. -mean\_estimate)\rightarrow (.)^2\rightarrow mean (.)\rightarrow \sqrt{(.)}$$

> population_sample %>%  
+   subtract(mean_estimate) %>%
+   raise_to_power(2) %>% mean() %>% sqrt()
5.318641
  • Avec la fonction sd
> standard_deviation_estimate <- sd(population_sample)
> standard_deviation_estimate
5.345435
Modèles de mélange en R

Visualiser la loi gaussienne estimée

# Transform the sample into a data frame
population_sample <- data.frame(x = population_sample)

# Plot the histogram
ggplot(data = population_sample) + 
   geom_histogram(aes(x = x, y = ..density..)) +
   stat_function(geom = "line", 
                 fun = dnorm, 
                 args = list(mean = mean_estimate, 
                             sd = standard_deviation_estimate))
Modèles de mélange en R

Modèles de mélange en R

Passons à la pratique !

Modèles de mélange en R

Preparing Video For Download...