คำอธิบายที่เข้าใจง่ายว่าทำไมขั้นตอน FDR ของ Benjamini-Hochberg จึงเป็นเช่นนั้น?


14

มีวิธีง่าย ๆ ในการอธิบายว่าทำไมขั้นตอนของ Benjamini และ Hochberg (1995) จึงควบคุมอัตราการค้นพบที่ผิดพลาด (FDR) จริงหรือไม่ ขั้นตอนนี้สวยงามและกะทัดรัดและยังพิสูจน์ได้ว่าทำไมมันทำงานภายใต้ความเป็นอิสระ (ปรากฏในภาคผนวกของกระดาษ 1995ของพวกเขา) ไม่สามารถเข้าถึงได้มาก


4
ในความคิดของฉันการพิสูจน์ของการควบคุม FDR ที่นำเสนอที่นี่นั้นง่ายกว่า (โปรดสังเกตว่าคุณกำลังมองหาการพิสูจน์ทฤษฎีบทที่ 2): citeseerx.ist.psu.edu/viewdoc/ ที่ นั่นการโต้เถียงก็ขึ้นอยู่กับการสังเกตว่าเรา สามารถใช้ทฤษฎีการหยุดแบบเลือกได้
user795305

3
มีการบรรยายที่ดีจาก Benjamini บน YouTubeเกี่ยวกับปัญหาการเปรียบเทียบหลายประการและประวัติและการพัฒนาเชิงตรรกะของวิธีการปรับใช้เพื่อแก้ไขปัญหา
Alexis

Ramdas และคณะ (2017)เป็นบทความล่าสุดที่ดีมากที่รวบรวมและสรุปวิธีการทดสอบหลายวิธีหลายอย่างและข้อเสนอที่ 1 (c) แสดงถึงทฤษฎีบทที่ 1 ใน Benjamini & Hochberg (1995) การพิสูจน์ใช้เล็มม่า 1 (c) เพื่อจำกัดความคาดหวังของ FDP และเลมม่าตัวนี้ได้รับการพิสูจน์โดยแคลคูลัสหลายตัวแปรพื้นฐานในภาคผนวก
daniel.s

2
ต่อไปนี้เป็นคำอธิบายที่เข้าใจง่ายที่ฉันพบในช่องของ StatQuest บน YouTube: youtube.com/watch?v=K8LQSvtjcEo
RobertF

คำตอบ:


2

นี่คือRรหัสสำหรับสร้างภาพ มันจะแสดงค่า p-values ​​จำลอง 15 ค่าตามลำดับของพวกเขา ดังนั้นพวกเขาจึงสร้างรูปแบบจุดขึ้น คะแนนใต้เส้นสีแดง / สีม่วงแสดงถึงการทดสอบที่สำคัญที่ระดับ 0.1 หรือ 0.2 FDR คือจำนวนของจุดดำใต้เส้นหารด้วยจำนวนคะแนนรวมใต้เส้น

x0 <- runif(10)      #p-values of 10 true null hypotheses. They are Unif[0,1] distributed.
x1 <- rbeta(5,2,30)  # 5 false hypotheses, rather small p-values
xx <- c(x1,x0)
plot(sort(xx))
a0 <- sort(xx)
for (i in 1:length(x0)){a0[a0==x0[i]] <- NA}
points(a0,col="red")
points(c(1,15), c(1/15 * 0.1 ,0.1), type="l", col="red")
points(c(1,15), c(1/15 * 0.2 ,0.2), type="l", col="purple")

ฉันหวังว่านี่อาจให้ความรู้สึกเกี่ยวกับรูปร่างที่การกระจายของค่า p ที่สั่งซื้อมี เส้นนั้นถูกต้องและไม่ใช่เช่นเส้นโค้งที่มีรูปร่างเหมือนคำอุปมาบางอย่างเกี่ยวข้องกับรูปร่างของการแจกแจงคำสั่ง สิ่งนี้จะต้องมีการคำนวณอย่างชัดเจน ในความเป็นจริงสายเป็นเพียงวิธีการอนุรักษ์


1
คุณจะเพิ่มset.seed(<some number>)และโพสต์ตัวเลขผลลัพธ์สำหรับคนที่ไม่อ่าน R หรือไม่?
gung - Reinstate Monica

ไม่มีจุดใดที่อยู่ต่ำกว่าเส้นเมื่อฉันเรียกใช้รหัสนี้ ...
winni2k
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.