Expectation-functie
Tot nu toe heb je geleerd hoe het Expectation-Maximization-algoritme wordt gebruikt om de parameters te schatten van twee Gaussische verdelingen met beide sd gelijk aan 1. Het doel van deze oefening is om de functie expectation te maken, die de stap van het schatten van de kansen generaliseert wanneer we de means, proportions en de sds kennen.
Deze oefening maakt deel uit van de cursus
Mixture Models in R
Oefeninstructies
Maak de functie expectation door de voorbeeldcode aan te vullen. Let op dat we nu de standaardafwijkingen van elke cluster meenemen als vierde parameter.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
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)
}