Mensimulasikan pengambilan sampel posterior
Anda baru saja memutuskan untuk menggunakan prior Beta(5, 2) untuk laju efektivitas. Anda juga menggunakan distribusi binomial untuk memodelkan data (menyembuhkan pasien sakit adalah "sukses", ingat?). Karena distribusi beta merupakan prior konjugat untuk likelihood binomial, Anda dapat langsung mensimulasikan posterior!
Anda tahu bahwa jika prior adalah \(Beta(a, b)\), maka posterior adalah \(Beta(x, y)\), dengan:
\(x = NumberOfSuccesses + a\),
\(y = NumberOfObservations - NumberOfSuccesses + b\).
Dapatkah Anda mensimulasikan distribusi posterior? Ingat bahwa secara keseluruhan Anda memiliki data 22 pasien, 19 di antaranya telah sembuh. numpy dan seaborn telah diimpor untuk Anda sebagai np dan sns masing-masing.
Latihan ini adalah bagian dari kursus
Analisis Data Bayesian dengan Python
Petunjuk latihan
- Tetapkan jumlah pasien yang diobati dan yang sembuh ke
num_patients_treateddannum_patients_cured. - Gunakan fungsi
numpyyang sesuai untuk mengambil sampel dari distribusi posterior dan tetapkan hasilnya keposterior_draws. - Plot distribusi posterior menggunakan fungsi
seabornyang sesuai.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Define the number of patients treated and cured
num_patients_treated = ____
num_patients_cured = ____
# Simulate 10000 draws from the posterior distribuition
posterior_draws = ____(____ + ____, ____ - ____ + ____, 10000)
# Plot the posterior distribution
____(____, shade=True)
plt.show()