IniziaInizia gratis

Funzione di expectation

Finora hai visto come l'algoritmo Expectation-Maximization viene usato per stimare i parametri di due distribuzioni gaussiane con entrambe le sd uguali a 1. L'obiettivo di questo esercizio è creare la funzione expectation, che generalizza lo step di stima delle probabilità quando conosciamo means, proportions e sds.

Questo esercizio fa parte del corso

Modelli di Mixture in R

Visualizza il corso

Istruzioni dell'esercizio

Crea la funzione expectation completando il codice di esempio. Nota che ora stiamo considerando le deviazioni standard di ciascun cluster come quarto parametro.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

expectation <- ___(___, means, proportions, ___){
  # Estimate the probabilities
  exp_data <- data %>% 
    mutate(prob_from_cluster1 = ___[1] * dnorm(x, mean = means[1], sd = ___[1]),
           prob_from_cluster2 = ___[2] * dnorm(x, mean = means[2], sd = ___[2]),
           prob_cluster1 = prob_from_cluster1/(prob_from_cluster1 + prob_from_cluster2),
           prob_cluster2 = prob_from_cluster2/(prob_from_cluster1 + prob_from_cluster2)) %>% 
    select(x, ___, ___)
    
  # Return data with probabilities
  return(exp_data)
}
Modifica ed esegui il codice