Função de Expectativa
Até aqui, você viu como o algoritmo de Expectation-Maximization é usado para estimar os parâmetros de duas distribuições Gaussianas com sd igual a 1. O objetivo deste exercício é criar a função expectation, que generaliza a etapa de estimar as probabilidades quando conhecemos os means, proportions e os sds.
Este exercício faz parte do curso
Modelos de Mistura em R
Instruções do exercício
Crie a função expectation completando o código de exemplo. Observe que agora estamos considerando os desvios padrão de cada cluster como seu quarto parâmetro.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
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)
}