MCMC ไม่มีหน่วยความจำหรือไม่?


18

ฉันพยายามที่จะเข้าใจว่ามาร์คอฟโซ่มอนติคาร์โล (MCMC) มาจากหน้าวิกิพีเดียภาษาฝรั่งเศส พวกเขาบอกว่า"วิธีการมาร์คอฟโซ่มอนติคาร์โลประกอบด้วยการสร้างเวกเตอร์xiจากข้อมูลเวกเตอร์xi1เท่านั้นจึงเป็นกระบวนการ" ไม่มีหน่วยความจำ ""

Les Méthodesเดอมอนติคาร์โล chaines ที่ตราไว้หุ้นเดมาร์คอฟที่สอดคล้องgénérerยกเลิก vecteur xi uniquement à partir de la Donnee du vecteur xi1 ; c'est donc un processus « sans mémoire»,

ผมไม่เข้าใจว่าทำไมพวกเขากล่าวว่า MCMC เป็น"โดยไม่มีความทรงจำ"เท่าที่เราจะใช้ข้อมูลจากข้อมูลเวกเตอร์xi1เพื่อสร้างxiฉัน


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

ไม่ใช่ "จดจำ"; มันเป็นข้อมูลที่ชัดเจน xi1
chepner

คำตอบ:


28

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


9
หากคุณใช้เวลานี้ก้าวไปข้างหน้าคุณสามารถพูดว่าการกระจายตามเงื่อนไขของค่าในอนาคตเงื่อนไขในค่าในอดีตและปัจจุบันขึ้นอยู่กับมูลค่าปัจจุบันและในความทรงจำความรู้สึกว่าที่ผ่านมาไม่จำเป็นต้องตราบใดที่ตำแหน่งปัจจุบันเป็นที่รู้จักกัน
Henry

ยกเว้นคุณสามารถปรับพื้นที่รัฐเพื่อเก็บข้อมูลจำนวน จำกัด ใด ๆ เกี่ยวกับอดีตได้เสมอ ยกตัวอย่างเช่นยังเป็น Markovian ถึงขึ้นอยู่กับสิบสถานะสุดท้ายของคุณเนื่องจากคุณสามารถขยายพื้นที่รัฐเพื่อรวมข้อมูลนั้นใน "สถานะก่อนหน้า"
David Richerby

15

ในขณะที่เรามีคำตอบที่ถูกต้องฉันต้องการขยายความหมายของคำให้เข้าใจง่าย ลองนึกภาพว่าเรา redefine ดัชนีของเราเช่นที่คุณสร้างเวกเตอร์xi+1จากเวกเตอร์xiฉัน ทีนี้ช่วงเวลาที่iถูกเปรียบเทียบเป็น "ปัจจุบัน" และเวกเตอร์ทั้งหมดมา "เร็วกว่า" xiไม่เกี่ยวข้องกับการคำนวณอันถัดไปในอนาคต

ด้วยการจัดเรียงลำดับใหม่นี้อย่างง่ายดายมันจะกลายเป็น "สมบูรณ์โดยไม่มีหน่วยความจำ" ในแง่ที่ใช้งานง่าย - นั่นคือมันไม่สำคัญเลยว่าระบบมาร์คอฟมาอยู่ในสถานะปัจจุบันอย่างไร สถานะปัจจุบันเพียงอย่างเดียวจะกำหนดสถานะในอนาคตโดยไม่ใช้ข้อมูลใด ๆ จากรัฐในอดีต ( xin )

อาจเป็นจุดที่เล็กกว่านี้: คำว่า "หน่วยความจำ" กำลังถูกใช้งานด้วยเพราะสิ่งนี้หมายความว่าคุณไม่สามารถอนุมานสถานะที่ผ่านมาจากสถานะปัจจุบันได้ เมื่อคุณอยู่ที่xi , คุณไม่ทราบว่าสิ่งที่เกิดขึ้น "ก่อน" ระหว่างxin n นี่คือสิ่งที่ตรงกันข้ามกับระบบที่เข้ารหัสความรู้ของรัฐในอดีตในสถานะปัจจุบัน


5

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

xixi1xi1xi+1xi


2
ลองเรียกมันว่าวิธีการเมาค้าง
IggyPass

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