คุณใช้อัลกอริธึม EM ในการคำนวณ MLEs สำหรับสูตรตัวแปรแฝงของโมเดลปัวซองที่มีค่าศูนย์ได้อย่างไร


10

แบบจำลองการถดถอยปัวซงแบบ zero zero ถูกกำหนดไว้สำหรับตัวอย่างโดย และจะถือว่าพารามิเตอร์และไปY i = { 0 ด้วยความน่าจะเป็นp i + ( 1 - p i ) e - λ i k ด้วยความน่าจะเป็น( 1 - p i ) e - λ ฉัน λ k i / k ! λ = ( λ 1 , , λ n ) p =(Y1,...,Yn)

Yผม={0ด้วยความน่าจะเป็น พีผม+(1-พีผม)อี-λผมkด้วยความน่าจะเป็น (1-พีผม)อี-λผมλผมk/k!
λ=(λ1,...,λn)พี=(พี1,...,พีn)

เข้าสู่ระบบ(λ)=Bβlogit(พี)=เข้าสู่ระบบ(พี/(1-พี))=Gγ.

ความน่าจะเป็นบันทึกที่สอดคล้องกันของรูปแบบการถดถอยปัวซอง zero-inflated คือ

L(γ,β;Y)=ΣYผม=0เข้าสู่ระบบ(อีGผมγ+ประสบการณ์(-อีBผมβ))+ΣYผม>0(YผมBผมβ-อีBผมβ)-Σผม=1nเข้าสู่ระบบ(1+อีGผมγ)-ΣYผม>0เข้าสู่ระบบ(Yผม!)

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

สมมติว่าเราสามารถสังเกตเห็นเมื่อนั้นมาจากความสมบูรณ์แบบศูนย์รัฐและเมื่อมาจากรัฐปัวซองZผม=1YผมZผม=0Yผม

L(γ,β;Y,Z)=Σผม=1nเข้าสู่ระบบ((Zผม|γ))+Σผม=1nเข้าสู่ระบบ((Yผม|Zผม,β))

=Σผม=1nZผม(Gผมγ-เข้าสู่ระบบ(1+อีGผมγ))+-Σผม=1n(1-Zผม)เข้าสู่ระบบ(1+อีGผมγ)+Σผม=1n(1-Zผม)[YผมBผมβ-อีBผมβ-เข้าสู่ระบบ(Yผม!)]
สองคำแรกคือการสูญเสียในการถดถอยโลจิสติกเพื่อแยกZผม=0จากZผม=1 1 เทอมที่สองคือการถดถอยของคะแนนที่สร้างโดยกระบวนการปัวซอง

แต่ตัวแปรแฝงไม่สามารถเรียกคืนได้หรือไม่ วัตถุประสงค์คือเพื่อเพิ่มโอกาสในการบันทึกครั้งแรก แต่เราต้องแนะนำตัวแปรแฝงและหาโอกาสในการบันทึกใหม่ จากนั้นใช้อัลกอริทึม EM เราสามารถเพิ่มโอกาสในการบันทึกที่สอง แต่นี่สมมติว่าเรารู้ว่าหรือ ?Zผม=0Zผม=1


คืออะไร นอกจากนี้คำถามส่วนใหญ่ของคำถามนี้ดูเหมือนจะถูกตัดและวางจากคำถามก่อนหน้านี้ที่แตกต่างกันโดย @Robby นั่นคุณเหรอ
แมโคร

@ แมโคร: แมโครใช่นั่นคือฉัน ฉันไม่แน่ใจว่าคืออะไร กระดาษไม่เคยพูด
ดาเมียน

คำตอบ:


11

รากเหง้าของความยากลำบากที่คุณมีอยู่ในประโยค:

จากนั้นใช้อัลกอริทึม EM เราสามารถเพิ่มโอกาสในการบันทึกที่สอง

ตามที่คุณสังเกตคุณไม่สามารถ แต่สิ่งที่คุณเพิ่มเป็นค่าที่คาดหวังของบันทึกความน่าจะเป็นที่สอง (ที่เรียกว่า "ความน่าจะเป็นที่สมบูรณ์แบบบันทึกข้อมูล") ซึ่งคาดว่าค่าตัวจะเอาไปz_i Zผม

สิ่งนี้นำไปสู่ขั้นตอนการทำซ้ำโดยที่การวนซ้ำคุณคำนวณค่าที่คาดหวังของได้รับจากการประมาณพารามิเตอร์จากการวนซ้ำ ( (ซึ่งเรียกว่า "E-step ",) จากนั้นแทนที่พวกเขาในความเป็นไปได้ของบันทึกข้อมูลที่สมบูรณ์ (ดูที่ EDIT ด้านล่างสำหรับสาเหตุที่เราสามารถทำได้ในกรณีนี้) และขยายให้สูงสุดด้วยความเคารพต่อพารามิเตอร์เพื่อรับค่าประมาณสำหรับการทำซ้ำปัจจุบัน (" M-step " .)kเสื้อชั่วโมงZผม(k-1)เสื้อชั่วโมง

ความน่าจะเป็นบันทึกข้อมูลที่สมบูรณ์สำหรับปัวซงแบบ zero-inflated ในกรณีที่ง่ายที่สุด - พารามิเตอร์สองตัวคือและ - ช่วยให้การทำให้เข้าใจง่ายขึ้นอย่างมากเมื่อมาถึงขั้นตอน M และสิ่งนี้ดำเนินไปในระดับหนึ่ง ฉันจะแสดงให้คุณเห็นว่าวิธีการทำงานในกรณีง่าย ๆ ผ่านรหัส R เพื่อให้คุณสามารถเห็นสาระสำคัญของมัน ฉันจะไม่ลดความซับซ้อนให้มากที่สุดเนื่องจากอาจทำให้สูญเสียความชัดเจนเมื่อคุณคิดถึงปัญหาของคุณ:λพี

# Generate data
# Lambda = 1,  p(zero) = 0.1
x <- rpois(10000,1)
x[1:1000] <- 0

# Sufficient statistic for the ZIP
sum.x <- sum(x)

# (Poor) starting values for parameter estimates
phat <- 0.5
lhat <- 2.0

zhat <- rep(0,length(x))
for (i in 1:100) {
  # zhat[x>0] <- 0 always, so no need to make the assignment at every iteration
  zhat[x==0] <- phat/(phat +  (1-phat)*exp(-lhat))

  lhat <- sum.x/sum(1-zhat) # in effect, removing E(# zeroes due to z=1)
  phat <- mean(zhat)   

  cat("Iteration: ",i, "  lhat: ",lhat, "  phat: ", phat,"\n")
}

Iteration:  1   lhat:  1.443948   phat:  0.3792712 
Iteration:  2   lhat:  1.300164   phat:  0.3106252 
Iteration:  3   lhat:  1.225007   phat:  0.268331 
...
Iteration:  99   lhat:  0.9883329   phat:  0.09311933 
Iteration:  100   lhat:  0.9883194   phat:  0.09310694 

ในกรณีของคุณในแต่ละขั้นตอนคุณจะทำการปัวซองถ่วงน้ำหนักซึ่งตุ้มน้ำหนักจะ1-zhatได้รับค่าประมาณของและดังนั้นจากนั้นให้ขยาย:βλผม

Σ(EZผมเข้าสู่ระบบพีผม+(1-EZผม)เข้าสู่ระบบ(1-พีผม))

ด้วยความเคารพต่อเวกเตอร์ค่าสัมประสิทธิ์ของเมทริกซ์ของคุณจะได้รับการประมาณการของp_iค่าที่คาดไว้คำนวณอีกครั้งในแต่ละรอบซ้ำGพีผมEZผม=พีผม/(พีผม+(1-พีผม)ประสบการณ์(-λผม))

หากคุณต้องการทำสิ่งนี้กับข้อมูลจริงไม่ใช่เพียงแค่เข้าใจอัลกอริทึมเท่านั้นแพ็คเกจ R มีอยู่แล้ว นี่คือตัวอย่างhttp://www.ats.ucla.edu/stat/r/dae/zipoisson.htmโดยใช้psclห้องสมุด

แก้ไข: ฉันควรเน้นว่าสิ่งที่เรากำลังทำคือการเพิ่มมูลค่าที่คาดหวังของความน่าจะเป็นบันทึกข้อมูลที่สมบูรณ์ไม่เพิ่มความน่าจะเป็นบันทึกข้อมูลที่สมบูรณ์ด้วยค่าที่คาดหวังของตัวแปร data / latent ที่ขาดหายไป ความน่าจะเป็นของบันทึกข้อมูลที่สมบูรณ์นั้นเป็นเส้นตรงในข้อมูลที่หายไปเนื่องจากเป็นที่นี่แนวทางทั้งสองนั้นเหมือนกัน แต่ไม่เช่นนั้น


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