ข้อ จำกัด MCMC / EM MCMC มากกว่า EM?


9

ขณะนี้ฉันเรียนรู้โมเดลเบย์แบบลำดับชั้นโดยใช้ JAGS จาก R และ pymc โดยใช้ Python ( "วิธีเบส์สำหรับแฮกเกอร์" )

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

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

ฉันยังสงสัยด้วยว่าฟังก์ชันความน่าจะเป็นและการกระจายก่อนหน้านั้นเป็นแบบคอนจูเกตหรือไม่ มันหมายความว่า MCMC ต้องมาบรรจบกัน? ฉันสงสัยเกี่ยวกับข้อ จำกัด ของ MCMC และ EM


2
MCMC แปลงเป็นตามคำนิยาม จากนั้นให้พิสูจน์ว่าคุณวินิจฉัยการบรรจบกันเพื่อตรวจสอบว่าแบบจำลองของคุณมีการลู่เข้าหรือไม่เช่นmath.pku.edu.cn/teachers/xirb/Courses/QR2013/ReadingForFinal/?hl=thหรือpeople.fas.harvard.edu/~plam/teaching/methodsss / ลู่ / …n
ทิม

3
EM เร็วกว่าไม่ใช่คน Bayesian (ไม่ใช่ทุกคนที่รักสถิติ Bayesian) และในบางกรณีมันมีปัญหาในการระบุตัวตนน้อยกว่า (มันรวมเข้ากับค่าสูงสุดเดียวในขณะที่แนวทาง MCMC คุณมีการกระจายทั้งหมดที่อาจซับซ้อนกว่า ) ฯลฯ
ทิม

2
EM ใช้เพื่อความเป็นไปได้สูงสุดหรือการประมาณค่าสูงสุดด้านหลัง แต่เริ่มแรกอธิบายว่าเป็นอัลกอริธึม ML และใช้กันทั่วไปในแนวทาง ML (ดูen.wikipedia.org/wiki/… )
ทิม

1
แม้ว่าคุณจะใช้ EM สำหรับการประมาณค่า MAP แทนที่จะเป็น ML มันไม่ใช่ Bayesian สำหรับฉันเพราะมันพยายามที่จะอธิบายลักษณะการกระจายของหลัง แต่เพียงทำให้คุณได้รับโหมดท้องถิ่นของมัน
Luca

1
สำหรับฉันที่ใช้ EM นั้นไม่ใช่ Bayesian เพราะมันให้การประมาณค่าพารามิเตอร์ที่คุณสนใจและไม่ได้คำนวณปริมาณการกระจายด้านหลังแบบเต็ม ด้วย EM และ MCMC เราสามารถมีแบบจำลองความน่าจะเป็นเต็มรูปแบบพร้อมด้วยไพรเออร์แฝงและตัวแปรสุ่ม แต่การอนุมานนั้นแตกต่างกัน MCMC ตั้งเป้าหมายที่จะแสดงลักษณะการกระจายของหลังเต็มรูปแบบในขณะที่ EM ให้ไม่นำเสนอข้อมูลของการกระจายหลังเต็มรูปแบบ สำหรับฉันชาวเบย์คือคนที่ใช้การแจกแจงหลังเพื่อการตัดสินใจ อย่างไรก็ตามนี่อาจจะง่าย ฉันกำลังเรียนรู้สิ่งนี้เช่นกัน
Luca

คำตอบ:


13

EM เป็นเทคนิคการปรับให้เหมาะสม: เมื่อมีโอกาสกับตัวแปรแฝงที่มีประโยชน์มันจะคืนค่าสูงสุดในท้องถิ่นซึ่งอาจเป็นค่าสูงสุดทั่วโลกขึ้นอยู่กับค่าเริ่มต้น

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

เมื่อตัวอย่างนี้ใช้ในการประเมินอินทิกรัลที่เกี่ยวข้องกับการแจกแจงหลัง [ส่วนใหญ่ที่ท่วมท้นของกรณี] คุณสมบัติการคอนเวอร์เจนซ์ก็เหมือนกับในการประมาณ iid Monte Carlo โดยอาศัยทฤษฎีบทอัตลักษณ์

หากมีความจำเป็นมากกว่านั่นคือรับประกันว่าเป็นตัวอย่างจาก posteriorเทคนิคการประเมินคอนเวอร์เจนซ์บางอย่างก็มีให้เช่น ในแพคเกจ R CODA ในทางทฤษฎีเครื่องมือที่ทำให้แน่ใจว่าการลู่เข้าจะเกินเอื้อมของคุณ ยกตัวอย่างเช่นการสุ่มตัวอย่างที่สมบูรณ์แบบหรือวิธีการ rewewal(xt,,xt+T)π(x|D)

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