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
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)
}