DataRockie

EP4 – False Discovery Rate คืออะไร

ลองนึกภาพว่าวันนี้เราอยู่ในห้อง lab เพื่อทดลองแชมพูช่วยลดรังแคยี่ห้อหนึ่งของบริษัท Unilaver (อันนี้ชื่อสมมติใช้ในการเขียนบทความเท่านั้น! 5555+)

นักวิจัยของ Unilaver พัฒนาแชมพูสูตรใหม่ขึ้นมาทั้งหมด 100 สูตร และต้องการทดสอบว่าสูตรไหนที่สามารถลดการเกิดรังแคได้อย่างมีนัยสำคัญทางสถิติ? i.e. ลดรังแคได้จริง ไม่ใช่เรื่องบังเอิญ

โดยงานวิจัยครั้งนี้ เราใช้เครื่องมือในการทดสอบที่มี power สูงถึง 80% และมี false positive rate อยู่ที่ 5% set up นี้เหมือนกับงานวิจัยทางสถิติส่วนใหญ่

  • power = 0.80
  • alpha = 0.05

Unilaver ให้ข้อมูลเราเพิ่มเติมว่าจากการทำ initial analysis เค้าพบว่าแชมพู 10 สูตรจาก 100 สูตรดูมี potential ในการลดรังแคได้จริง i.e. effective 10%

ถ้าเรา random หยิบแชมพู 1 สูตรเพื่อทำการทดลองแล้วได้ผล significance คำถามคือแชมพูสูตรนี้มีโอกาสที่จะรักษารังแคได้จริงกี่ %? นักสถิติสาย Bayes คูลๆอย่างเราตอบคำถามนี้ได้ง่ายๆด้วยรูป diagram ด้านล่าง

Easy Diagram

ลองสร้าง matrix 10 x 10 ใน Excel เพื่อแทนแชมพู 100 สูตร

shampoo 100 สูตรที่อยู่ในห้องทดลอง สีเทาในรูปคือ TN อ่านคำอธิบายด้านล่าง

ตัวย่อภาษาอังกฤษที่เราเห็นใน diagram อธิบายได้ดังนี้

  • TP – True Positive คือแชมพูสูตรที่ effective และการทดลองของเราตรวจได้ผล sig.
  • FP – False Positive คือแชมพูสูตรที่ ineffective แต่การทดลองของเราตรวจได้ผล sig.
  • FN – False Negative คือแชมพูสูตรที่ effective แต่การทดลองของเราตรวจได้ผล not sig.
  • TN – True Negative คือแชมพูสูตรที่ ineffective และการทดลองของเราตรวจได้ผล not sig. (cell สีเทาใน diagram)

จากโจทย์วันนี้เรารู้ว่ามีแชมพู 10 สูตรที่ effective และการทดลองของเรามี power 80% แปลว่าเราจะมีโอกาสเห็นผล sig. อย่างถูกต้องเท่ากับ 8 สูตร (TP) และไม่สามารถตรวจเจอแชมพูที่ effective จำนวน 2 สูตร (FN)

สีแดงคือแชมพูสูตรที่ ineffective แต่เราดันตรวจเจอผล sig. = 0.05 * 90 = 4.5 ปัดขึ้นกลมๆเท่ากับ 5 สูตร (FP) ตัวเลข 90 คือจำนวนแชมพูที่ไม่มีประสิทธิภาพ (100 – 10) และ 0.05 คือ alpha ที่เรากำหนดไว้ตอนแรก

สีเทาใน diagram คือ TN และสิ่งที่ทุกคนต้องรู้คือ TP + FP + FN + TN = sample size ในงานวิจัยนั้นๆ ซึ่ง concept นี้ถูกออกแบบมาเพื่อใช้กับปัญหา binary classification โดยเฉพาะ

Total Significance

จำนวนผล sig. ทั้งหมดที่เรามีโอกาสพบในการทดลองนี้คิดมาจาก TP + FP = 8 + 5 = 13 ถ้าเราสุ่มหยิบแชมพูขึ้นมาหนึ่งสูตร ทดสอบแล้วได้ผล sig. ความน่าจะเป็นที่ผล sig. นั้นเป็น TP = 8 / 13 = 0.6153 หรือ ~62%

แปลว่าความน่าจะเป็นที่เราจะเจอผล sig. ผิดๆแบบ FP สูงถึง 1 – 0.6153 = 0.3846 หรือ ~38% เลย! และค่านี้มีชื่อเรียกแบบทางการในทางสถิติว่า “False discovery rate

Untold Story

ทบทวนความจำอีกครั้ง alpha คือ false positive rate

ถึงแม้ว่าเราจะกำหนด alpha = 5% ไม่ได้แปลว่าการเจอผล sig. ในงานวิจัยนั้นๆจะมีโอกาสผิดแบบ FP แค่ 5% (ตัวอย่างด้านบน false discovery rate สูงถึง 38%)

ทฤษฏีสถิติในช่วงปี 1990s มีการพัฒนาองค์ความรู้ในการใช้ p-value ทดสอบสมมติฐานเรื่อยมาและ concept ล่าสุดที่เราใช้กันในงานวิจัยและ journal ดังๆทั่วโลกคือ false discovery rate ที่เราอธิบายในตัวอย่างวันนี้

Think Like Bayes

Unilaver บอกเราว่า “ความน่าจะเป็นที่แชมพูมีประสิทธิภาพเท่ากับ 10%” และนี่เทียบเท่ากับ prior probability ของ Bayes Theorem ตามที่เราอธิบายใน EP3 – Reimagine p-value

# R code (same as shown in EP3)
# set up what you already know
power <- 0.80
alpha <- 0.05
prior <- 0.10

# solve for what you want to know
posterior <- 0.80 * 0.10 / (0.80 * 0.10 + 0.05 * 0.90)

# print to see posterior
print(posterior) # 0.64
print(1 - posterior) # 0.36

ถ้าเรารู้ค่า power, alpha, prior เราสามารถหาค่า posterior ได้ง่ายๆด้วย Bayes formula นี้ posterior = (power * prior) / (power * prior + alpha * (1-prior))

ซึ่งได้ผลลัพธ์เท่ากับการคิดจากสูตร TP / (TP + FP) ในตัวอย่างวันนี้

# R code
TP <- 0.80 * 10
FP <- 0.05 * 90 
false_discovery_rate <- 1 - TP/(TP+FP)

# see the result
print(false_discovery_rate) # 0.36

การสรุปผล significance ด้วย p-value โดยไม่สนใจ prior probability หรือที่นักสถิติสาย Frequentist ในยุคหลังเรียกมันว่า “Base rate fallacy” เป็นสิ่งที่ Bayesian มองว่าไม่สมควรทำเลย

Reference

ตัวแอดรู้จัก false discovery rate ครั้งแรกตอนอ่านหนังสือ Statistics Done Wrong เขียนโดย Alex Reinhart เมื่อ 3 ปีที่แล้ว อ่านสรุปเนื้อหาบางส่วนได้ที่ https://www.statisticsdonewrong.com (2015)

Optional – ถ้ายังไม่ค่อย get เรื่อง TP FP FN TN วิธีง่ายที่สุดที่จะทำให้เราเห็นภาพคือการสร้าง confusion matrix ลองอ่านบทความเก่าของเราได้ที่ลิ้งนี้

Image result for statistics done wrong

Leave a Reply