시작하기무료로 시작하기

Expectation 함수

지금까지는 두 개의 Gaussian 분포에서 sd가 모두 1일 때 Expectation-Maximization 알고리즘을 이용해 모수를 추정하는 방법을 배웠어요. 이 연습의 목표는 expectation 함수를 만들어서, means, proportions, sds를 알고 있을 때 확률을 추정하는 단계를 일반화하는 것입니다.

이 연습은 강의의 일부입니다

R로 배우는 Mixture Models

강의 보기

연습 안내

샘플 코드를 완성해 expectation 함수를 작성하세요. 이제 각 클러스터의 표준편차를 네 번째 매개변수로 고려한다는 점에 주의하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

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)
}
코드 편집 및 실행