พลังของการถดถอยโลจิสติกและการทดสอบทีเปรียบเทียบ


18

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

  1. [การทดสอบสถิติพารามิเตอร์]: 30 การดึงออกมาจากการสังเกตแบบทวินามและค่าที่ได้จะเป็นค่าเฉลี่ย สิ่งนี้ทำได้ 30 ครั้งสำหรับกลุ่ม A (ซึ่งมีค่าทวินามเท่ากับ. 70 ที่เกิดขึ้น) และ 30 ครั้งสำหรับกลุ่ม B (ซึ่งมีราคาทวินามเท่ากับ. 75 ที่เกิดขึ้น) ผลตอบแทนนี้ 30 หมายถึงกลุ่มที่เป็นตัวแทนของสรุป 1,800 ดึงจากการกระจายทวินาม การทดสอบ t-58df ใช้เพื่อเปรียบเทียบค่าเฉลี่ย
  2. [การถดถอยโลจิสติก]: การถดถอยโลจิสติกจะดำเนินการกับความลาดชันรหัสจำลองที่เป็นตัวแทนของการเป็นสมาชิกกลุ่มและแต่ละ 1,800 วาด

คำถามของฉันมีสองส่วน:

  1. เมื่อกำหนดค่าอัลฟ่าเป็น. 05 พลังของวิธีการเหล่านี้จะเหมือนหรือต่างกันหรือไม่ ทำไม? ฉันจะพิสูจน์ได้อย่างไร
  2. คำตอบสำหรับคำถามที่ 1 นั้นมีความอ่อนไหวต่อขนาดตัวอย่างที่จะเข้าสู่การทดสอบ t-size ขนาดตัวอย่างของแต่ละกลุ่มในการทดสอบ t-t ความน่าจะเป็นแบบทวินามพื้นฐานหรือปัจจัยอื่น ๆ ถ้าเป็นเช่นนั้นฉันจะรู้ได้อย่างไร (โดยไม่มีการจำลอง) ว่าพลังนั้นแตกต่างกันอย่างแท้จริงและการเปลี่ยนแปลงแบบใดที่จะทำให้เกิดการเปลี่ยนแปลงแบบใด หรือให้รหัส R ที่ได้ผลซึ่งแก้ไขปัญหาโดยใช้การจำลอง

คำตอบ:


19

ถ้าฉันคำนวณอย่างถูกต้องการถดถอยโลจิสติก asymptotically มีอำนาจเช่นเดียวกับการทดสอบ t หากต้องการดูสิ่งนี้ให้เขียนบันทึกความน่าจะเป็นของบันทึกและคำนวณความคาดหวังของ Hessian ที่ระดับสูงสุดของโลก อย่าไปสนใจกับการกำหนดพารามิเตอร์โลจิสติกส์ตามปกติ: มันง่ายกว่าที่จะกำหนดพารามิเตอร์ด้วยความน่าจะเป็นที่สอง รายละเอียดจะขึ้นอยู่กับวิธีที่คุณทดสอบความสำคัญของสัมประสิทธิ์การถดถอยโลจิสติก (มีหลายวิธี)

การทดสอบเหล่านี้มีพลังคล้ายกันไม่น่าแปลกใจมากนักเนื่องจากทฤษฎีไคสแควร์สำหรับการประเมิน ML นั้นตั้งอยู่บนพื้นฐานการประมาณค่าปกติของความน่าจะเป็นของล็อกและการทดสอบ t-based จะขึ้นอยู่กับการแจกแจงแบบปกติ ประเด็นสำคัญของเรื่องนี้ก็คือทั้งสองวิธีทำการประมาณค่าเดียวกันของสองสัดส่วนและการประมาณการทั้งสองมีข้อผิดพลาดมาตรฐานเดียวกัน


การวิเคราะห์ที่แท้จริงอาจน่าเชื่อถือมากขึ้น ลองใช้คำศัพท์ทั่วไปสำหรับค่าในกลุ่มที่กำหนด (A หรือ B):

  • คือความน่าจะเป็นที่ 1p
  • คือขนาดของชุดการจับแต่ละครั้งn
  • คือจำนวนชุดของการจับm
  • คือจำนวนข้อมูลN=mn
  • (เท่ากับ 0หรือ 1 ) เป็นค่าของเจTHผลในฉันTHชุดดึงkij01jthith
  • คือจำนวนของคนที่อยู่ใน ฉันTHชุดดึงkiith
  • คือจำนวนทั้งหมดk

การถดถอยโลจิสติกเป็นหลักประมาณ ML ของพีลอการิทึมของมันถูกกำหนดโดยp

log(L)=klog(p)+(Nk)log(1p).

อนุพันธ์ของมันเทียบกับพารามิเตอร์คือp

log(L)p=kpNk1p and

2log(L)p2=kp2+Nk(1p)2.

การตั้งค่าผลผลิตแรกที่จะเป็นศูนย์ ML ประมาณการP = k / Nและการอุดตันที่เป็นซึ่งกันและกันในการแสดงออกที่สองผลตอบแทนถัวเฉลี่ยความแปรปรวนP ( 1 - P ) / Nซึ่งเป็นตารางของข้อผิดพลาดมาตรฐานp^=k/Np^(1p^)/N

เสื้อสถิติจะได้รับจากการประมาณค่าบนพื้นฐานของข้อมูลที่จัดกลุ่มตามชุดดึง; กล่าวคือเนื่องจากความแตกต่างของค่าเฉลี่ย (หนึ่งจากกลุ่ม A และอีกกลุ่มจากกลุ่ม B) หารด้วยข้อผิดพลาดมาตรฐานของความแตกต่างนั้นซึ่งได้มาจากการเบี่ยงเบนมาตรฐานของค่าเฉลี่ย ลองดูค่าเฉลี่ยและส่วนเบี่ยงเบนมาตรฐานสำหรับกลุ่มที่กำหนดแล้ว เท่ากับค่าเฉลี่ยซึ่งเป็นเหมือน ML ประมาณการP ค่าเบี่ยงเบนมาตรฐานในคำถามคือค่าเบี่ยงเบนมาตรฐานของวิธีการวาด นั่นคือมันเป็นค่าเบี่ยงเบนมาตรฐานของการตั้งค่าของk ฉัน/ n นี่คือประเด็นสำคัญของเรื่องนี้ดังนั้นเรามาสำรวจความเป็นไปได้บ้างk/Np^ki/n

  1. สมมติว่าข้อมูลยังไม่ได้แบ่งออกเป็นดึงที่ทั้งหมด: นั่นคือและม. = N k ฉันเป็นวิธีการวาด ของพวกเขาตัวอย่างแปรปรวนเท่ากับN / ( N - 1 )ครั้งหน้า ( 1 - P ) จากนี้จึงเกิดข้อผิดพลาดมาตรฐานเหมือนกับข้อผิดพลาดมาตรฐาน ML นอกเหนือจากปัจจัยของn=1m=NkiN/(N1)p^(1p^)ซึ่งเป็นหลักที่ 1เมื่อN=1800 ดังนั้น - นอกเหนือจากความแตกต่างเล็ก ๆ น้อย ๆ - การทดสอบใด ๆ ที่อิงกับการถดถอยโลจิสติกจะเหมือนกับ t-test และเราจะได้รับพลังเดียวกันเป็นหลักN/(N1)1N=1800

  2. เมื่อข้อมูลถูกจัดกลุ่มความแปรปรวน (จริง) ของเท่ากับp ( 1 - p ) / nเพราะสถิติk iแสดงถึงผลรวมของตัวแปรn Bernoulli ( p ) แต่ละอันมีความแปรปรวนp ( 1 - p ) . ดังนั้นข้อผิดพลาดมาตรฐานที่คาดหวังของค่าเฉลี่ยของmของค่าเหล่านี้คือสแควร์รูทของp ( 1 - p ) / n / m =ki/np(1p)/nkinpp(1p)mเหมือนเมื่อก่อนp(1p)/n/m=p(1p)/N

หมายเลข 2 บ่งบอกถึงพลังของการทดสอบไม่ควรเปลี่ยนแปลงอย่างมีนัยสำคัญกับวิธีการจับรางวัล (นั่นคือวิธีที่และnแปรผันตามm n = N ) อาจแตกต่างจากผลกระทบเล็กน้อยจากการปรับตัวอย่าง ความแปรปรวน (ยกเว้นว่าคุณโง่เขลาจนใช้ชุดการดึงน้อยมากภายในแต่ละกลุ่ม)mnmn=N

แบบจำลองที่ จำกัดเพื่อเปรียบเทียบถึงp = 0.74 (กับ 10,000 ซ้ำละคน) ที่เกี่ยวข้องกับ m = 900 , n = 1 (การถดถอยโลจิสติกเป็นหลัก); m = n = 30 ; และm = 2 , n = 450 (การปรับค่าความแปรปรวนตัวอย่างสูงสุด) รับสิ่งนี้: กำลัง (ที่α = 0.05p=0.70p=0.74m=900,n=1m=n=30m=2,n=450α=0.05ด้านเดียวในสองกรณีแรกคือ 0.59 ในขณะที่ในส่วนที่สามซึ่งปัจจัยการปรับเปลี่ยนทำให้การเปลี่ยนแปลงวัสดุ (ตอนนี้มีเพียงสององศาอิสระแทน 1798 หรือ 58) มันลดลงถึง 0.36 การทดสอบอื่นเปรียบเทียบถึงp = 0.52ให้พลังของ 0.22, 0.21, และ 0.15 ตามลำดับ: อีกครั้งเราสังเกตเพียงเล็กน้อยจากไม่มีการจัดกลุ่มเป็นวาด (= การถดถอยโลจิสติก) เพื่อจัดกลุ่มเป็น 30 กลุ่มและหล่นลงอย่างมาก เพียงสองกลุ่มp=0.50p=0.52

คุณธรรมของการวิเคราะห์นี้คือ:

  1. คุณจะไม่สูญเสียอะไรมากเมื่อคุณแบ่งพาร์ติชันค่าข้อมูลของคุณเป็นกลุ่มm "กลุ่ม" ขนาดเล็กจำนวนมากNm
  2. คุณสามารถสูญเสียพลังงานที่สามารถประเมินได้โดยใช้กลุ่มจำนวนน้อย ( มีขนาดเล็กn - จำนวนข้อมูลต่อกลุ่ม - มีขนาดใหญ่)mn
  3. คุณไม่ควรจัดกลุ่มค่าข้อมูลของคุณเป็น "ดึง" เลย เพียงวิเคราะห์ตามที่เป็นอยู่ (ใช้การทดสอบที่สมเหตุสมผลใด ๆ รวมถึงการถดถอยโลจิสติกและการทดสอบ t)N

1
@suncoolsu เป็นเรื่องน่าละอายที่เราไม่สามารถลงคะแนนอัปเดตได้ ...
chl

2
@chl .. ฉันเห็นด้วยฉันอยากจะให้ (+2) :-) ที่จริงฉันไม่เคยคิดอย่างลึกซึ้งเกี่ยวกับคำถามนี้จนกว่าจะมีการอัปเดตนี้
suncoolsu

ตามปกติทัวร์เดอบังคับจาก Bill Huber ดูที่คำถามที่ทำให้งงว่าจะเปรียบเทียบพลังงานสำหรับการทดสอบ t ด้วยการถดถอยโลจิสติกอย่างไร แต่ดูเหมือนว่าคนธรรมดาสามัญกำลังวางทั้งสองวิธีในการทดสอบสัดส่วน ..
Michael R. Chernick

8

นี่คือรหัสในการวิจัยที่แสดงให้เห็นการจำลองของ whuber ของคำตอบ ข้อเสนอแนะในการปรับปรุงรหัส R ของฉันเป็นมากกว่าการต้อนรับ

N <- 900            # Total number data points
m <- 30;            # Size of draw per set
n <- 30;            # No of sets

p_null <- 0.70;     # Null hypothesis
p_alternate <- 0.74 # Alternate hypothesis
tot_iter <- 10000;

set.seed(1);        # Initialize random seed
null_rejected <- 0; # Set counter to 0
for (iter in 1:tot_iter)
{
    draws1 <- matrix(0,m,n);
    draws2 <- matrix(0,m,n);
    means1 <- matrix(0,m);
    means2 <- matrix(0,m);

    for (obs in 1:m)
    {
        draws1[obs,] <- rbinom(n,1,p_null);
        draws2[obs,] <- rbinom(n,1,p_alternate);

        means1[obs,] <- mean(draws1[obs,]);
        means2[obs,] <- mean(draws2[obs,]);
    }
    if (t.test(means1,means2,alternative="l")$p.value <= 0.05)
    {
        null_rejected <- null_rejected + 1; 
    }
}
power <- null_rejected / tot_iter

1
ขอบคุณที่แชร์สิ่งนี้! (ฉันชอบสไตล์ของคุณในการสร้างตัวแปรพารามิเตอร์ทั้งหมดและแสดงความคิดเห็นอย่างชัดเจน) วันนี้ฉันหมดคะแนน :-( ดังนั้นฉันจะต้องรอ
อัปโหลด

2
replicate()rbinom() k{*}apply()

@chl ขอบคุณ ฉันใช้คำถามเหล่านี้เพื่อเรียนรู้ R! ดังนั้นข้อเสนอแนะเช่นคุณมีค่า

@Skrikant LOL ฉันเพิ่งเพิ่ม: "BTW ฉันชอบวิธีที่คุณเรียนรู้ R!"
chl

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