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

จำลอง Beta Posterior

ในแบบฝึกหัดชุดถัดไป จะได้ใช้ฟังก์ชัน simulate_beta_posterior() ที่เห็นในวิดีโอที่ผ่านมา แบบฝึกหัดนี้จะช่วยให้เข้าใจการทำงานของฟังก์ชันนั้น ด้วยการคำนวณด้วยตนเองทีละขั้นตอน

มีรายการการโยนเหรียญสิบครั้ง ชื่อ tosses โดยที่ 1 หมายถึงหัว และ 0 หมายถึงก้อย และนิยามให้หัวคือ "ความสำเร็จ" หากต้องการจำลองความน่าจะเป็น posterior ของการออกหัว จะใช้ beta prior โดยถ้า prior คือ \(Beta(a, b)\) แล้ว posterior จะเป็น \(Beta(x, y)\) โดยที่:

\(x = \text{NumberOfHeads} + a\)

\(y = \text{NumberOfTosses} - \text{NumberOfHeads} + b\)

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

การวิเคราะห์ข้อมูลแบบเบย์เซียนด้วย Python

ดูคอร์ส

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Set prior parameters and calculate number of successes
beta_prior_a = ____
beta_prior_b = ____
num_successes = np.sum(____)

# Generate 10000 posterior draws
posterior_draws = np.random.beta(
  ____ + ____, 
  ____ - ____ + ____, 
  10000)  

# Plot density of posterior_draws
sns.kdeplot(posterior_draws, shade=True)
plt.show()
แก้ไขและรันโค้ด