เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ฟังก์ชัน Expectation

จนถึงตอนนี้ได้เรียนรู้แล้วว่าอัลกอริทึม Expectation-Maximization ใช้ประมาณค่าพารามิเตอร์ของการแจกแจงแบบเกาส์เซียนสองตัวที่มีค่า sd เท่ากับ 1 ทั้งคู่ เป้าหมายของแบบฝึกหัดนี้คือการสร้างฟังก์ชัน expectation ซึ่งทำให้ขั้นตอนการประมาณค่าความน่าจะเป็นมีความยืดหยุ่นมากขึ้น โดยรับค่า means, proportions และ sds เป็นอินพุต

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Mixture Models ใน R

ดูคอร์ส

คำแนะนำการฝึกหัด

สร้างฟังก์ชัน 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)
}
แก้ไขและรันโค้ด