ค่าใช้จ่ายตัวอย่างของ


9

ฉันเจอปัญหาการจำลองต่อไปนี้: เนื่องจากชุดของจำนวนจริงที่รู้จักการแจกแจงถูกกำหนดโดย ที่หมายถึงการเป็นส่วนหนึ่งในเชิงบวกของZในขณะที่ฉันสามารถนึกถึงตัวอย่างของ Metropolis-Hastings ที่กำหนดเป้าหมายการกระจายตัวนี้ฉันสงสัยว่ามีตัวเก็บตัวอย่างโดยตรงที่มีประสิทธิภาพโดยใช้ประโยชน์จากความน่าจะเป็นศูนย์จำนวนมากเพื่อลดลำดับของอัลกอริทึมจากถึงง){ω1,…,ωd}{−1,1}d

P(X=(x1,…,xd))∝(x1ω1+…+xdωd)+
(z)+zO(2d)O(d)

คำตอบ:


4

ต่อไปนี้เป็นตัวอย่างแบบเรียกซ้ำที่ค่อนข้างชัดเจนคือในกรณีที่ดีที่สุด (ในแง่ของน้ำหนัก ) แต่เป็นเลขชี้กำลังในกรณีเลวร้ายที่สุดO(d)ωi

สมมติว่าเราได้เลือกแล้วและความปรารถนาที่จะเลือก{i} เราจำเป็นต้องคำนวณ และเลือกด้วยความน่าจะเป็น ตัวหารจะไม่ใช่ศูนย์สำหรับทางเลือกที่ถูกต้องใด ๆ ของกลุ่มตัวอย่าง{i-1}x1,…,xi−1xi

w(x1,…,xi−1,xi)=∑xi+1∈{−1,1}⋯∑xd∈{−1,1}(∑j=1dωjxj)+
xi=1
w(x1,…,xi−1,1)w(x1,…,xi−1,1)+w(x1,…,xi−1,−1).
x1,…,xi−1

ตอนนี้แน่นอนคำถามคือวิธีการคำนวณx_i)w(x1,…,xi)

หากเรามีดังนั้นสำหรับใด ๆ ที่มีรายการนำหน้า , และดังนั้นจึงกลายเป็น: C:=∑j=1iωjxj≥∑j=i+1d|ωj|ω⋅x≥0xx1:iw

∑xi+1⋯∑xdω⋅x=ω⋅(∑xi+1⋯∑xdx)=∑j=1iωj(∑xi+1⋯∑xdxj)⏟2d−ixj+∑j=i+1dωj(∑xi+1⋯∑xdxj)⏟0=2d−iC.

ในกรณีที่ตรงกันข้ามเรามีและ0C≤−∑j=i+1d|ωj|ω⋅x≤0w(x1,…,xi)=0

มิฉะนั้นเราจะต้อง recurse ใช้-1)w(x1,…,xi)=w(x1,…,xi,1)+w(x1,…,xi,−1)

สมมติว่าหน่วยความจำไม่ใช่ปัญหาและเราสามารถแคชการคำนวณย่อยทั้งหมดใน ,ในทรี - จนถึงจุดที่เราเข้าสู่หนึ่งใน "ดี" กรณีหลังจากนั้น การโทรต้องใช้เวลาคงที่ (เราจะต้องคำนวณทรีทั้งหมดนี้เพื่อเลือก ) จากนั้นเมื่อการคำนวณทรีของนี้ถูกสร้างขึ้นเครื่องเก็บตัวอย่างจะใช้เวลาเท่านั้น คำถามคือใช้เวลานานแค่ไหนในการสร้างต้นไม้หรือเท่ากับขนาดของต้นไม้w(1)w(−1)x1wO(d)


แน่นอนว่าเราจะตี "ดี" กรณีได้เร็วขึ้นถ้าจะเรียง,\ωiω1≥ω2≥⋯≥ωd

ในกรณีที่ดีที่สุด\ แล้วเราตี "ดี" กรณีทันทีสำหรับทั้งหรือดังนั้นก่อสร้างต้นไม้ต้องใช้เวลาอย่างต่อเนื่องและตัวอย่างทั้งหมดใช้เวลาเวลา|ω1|>∑j=2d|ωj|w(1)w(−1)wO(d)

ในที่เลวร้ายที่สุด (เรียงลำดับ) กรณีที่\ ถ้าอย่างนั้นคำถามคือต้นไม้ทั้งหมดมีขนาดใหญ่แค่ไหน?ω1=ω2=⋯=ωd

ดีเส้นทางแรกที่จะยุติแน่นอนและความยาว\ ดังนั้นต้นไม้จึงมีความสมบูรณ์จนถึงความลึกดังกล่าวและมีโหนดอย่างน้อย(มีมากกว่านั้นคุณอาจพบว่ามันมีข้อโต้แย้งเหมือนกับที่ใช้ในปัญหาความหายนะของนักพนัน แต่ฉันไม่สามารถหามันได้ในสองนาทีของ Googling และไม่สนใจเป็นพิเศษ - ไม่ดี พอ....)(1,1,…,1)(−1,−1,…,−1)⌈d/2⌉O(2d/2)2d/2

หากการตั้งค่าของคุณมีขนาดใหญ่มากนี่อาจเป็นวิธีการที่ใช้งานได้จริง ถ้ามีทั้งหมดของขนาดที่คล้ายกันก็อาจจะยังคงมีการชี้แจงและมีราคาแพงเกินไปสำหรับขนาดใหญ่dωiωid


ขอบคุณสำหรับการกำจัด Viterbi ประเภทนี้ เมื่อคุณเขียน "ในกรณีตรงข้าม",ฉันเข้าใจคุณไม่ได้หมายถึงการเติมเต็มของกรณีแรก
Ci≤−∑j=i+1d|ωj|
Ci≥∑j=i+1d|ωj|
— ซีอาน

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