Bắt đầu ngayBắt đầu miễn phí

Một lối tắt có điều kiện

Tuyệt vời, giờ bạn đã thực hiện tính toán Bayesian mà không cần mô phỏng nào! Biểu đồ bạn tạo ra sẽ tương tự với phân phối hậu nghiệm bạn đã tính ở chương 3. Tuy nhiên, bạn có thể thấy là cần khá nhiều mã, liệu có gì có thể rút gọn không?

Có chứ! Bạn có thể điều kiện hóa trực tiếp trên dữ liệu, không cần tạo phân phối chung trước.

Bài tập này là một phần của khóa học

Những nền tảng của Phân tích dữ liệu Bayesian trong R

Xem khóa học

Hướng dẫn bài tập

  • Đặt n_visitors trực tiếp bằng 6, chỉ cần thay câu lệnh seq.
  • Bây giờ bạn có thể xóa dòng điều kiện hóa trên dữ liệu, và dòng ngay sau đó dùng để chuẩn hóa pars$probability.
  • Xem lại đoạn mã cuối cùng và tự tin rằng kết quả của mã đã chỉnh sửa sẽ giống như trước. :)

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Simplify the code below by directly conditioning on the data
n_ads_shown <- 100
proportion_clicks <- seq(0, 1, by = 0.01)
n_visitors <- seq(0, 100, by = 1)
pars <- expand.grid(proportion_clicks = proportion_clicks,
                    n_visitors = n_visitors)
pars$prior <- dunif(pars$proportion_clicks, min = 0, max = 0.2)
pars$likelihood <- dbinom(pars$n_visitors, 
    size = n_ads_shown, prob = pars$proportion_clicks)
pars$probability <- pars$likelihood * pars$prior
pars$probability <- pars$probability / sum(pars$probability)
pars <- pars[pars$n_visitors == 6, ]
pars$probability <- pars$probability / sum(pars$probability)
plot(pars$proportion_clicks, pars$probability, type = "h")
Chỉnh sửa và Chạy Mã