การรวมตัวของมหานคร - เฮสติ้งส์ - ทำไมกลยุทธ์ของฉันจึงไม่ทำงาน


16

สมมติว่าฉันมีฟังก์ชั่นที่ฉันต้องการรวม แน่นอนสมมติว่าไปที่ศูนย์ที่จุดสิ้นสุดไม่มีการระเบิดฟังก์ชันที่ดี วิธีหนึ่งที่ฉันได้รับการเล่นซอกับคือการใช้อัลกอริทึม Metropolis-เฮสติ้งส์เพื่อสร้างรายการของตัวอย่างจากการกระจายสัดส่วนการซึ่งจะหายไปอย่างต่อเนื่องการฟื้นฟู ซึ่งฉันจะเรียกแล้วคำนวณสถิติf (x)บนxเหล่านี้: g(x)

∫−∞∞g(x)dx.
g(x)x1,x2,…,xng(x)
N=∫−∞∞g(x)dx
p(x)f(x)x
1n∑i=0nf(xi)≈∫−∞∞f(x)p(x)dx.

ตั้งแต่p(x)=g(x)/Nฉันสามารถแทนที่f(x)=U(x)/g(x)เพื่อยกเลิกgจากอินทิกรัลส่งผลให้เกิดการแสดงออกของรูปแบบ

1N∫−∞∞U(x)g(x)g(x)dx=1N∫−∞∞U(x)dx.
ดังนั้นหากU(x)รวมกับ1ตามภูมิภาคนั้นฉันควรได้ผลลัพธ์1/Nซึ่งฉันสามารถเอาส่วนกลับซึ่งกันและกันเพื่อได้คำตอบที่ฉันต้องการ ดังนั้นฉันสามารถใช้ช่วงของตัวอย่างของฉัน (เพื่อใช้คะแนนอย่างมีประสิทธิภาพมากที่สุด) r=xmax−xminและให้U(x)=1/rสำหรับแต่ละตัวอย่างที่ฉันวาด ด้วยวิธีนี้U(x)หาค่าเป็นศูนย์นอกขอบเขตที่ตัวอย่างของฉันไม่ได้ แต่รวมกับ1ในพื้นที่นั้น ดังนั้นถ้าฉันเอาค่าที่คาดหวังมาฉันควรได้รับ:
E[U(x)g(x)]=1N≈1n∑i=0nU(x)g(x).

ฉันพยายามทดสอบนี้ใน R สำหรับฟังก์ชันตัวอย่าง2} ในกรณีนี้ฉันไม่ใช้ Metropolis-Hastings เพื่อสร้างตัวอย่าง แต่ใช้ความน่าจะเป็นที่แท้จริงด้วยเพื่อสร้างตัวอย่าง (เพื่อทดสอบ) ฉันไม่ได้รับผลลัพธ์ที่ต้องการ โดยพื้นฐานแล้วการแสดงออกอย่างเต็มรูปแบบของสิ่งที่ฉันจะคำนวณคือ: นี้ควรในทฤษฎีของผมประเมินปี่} มันเข้าใกล้ แต่แน่นอนไม่ได้มาบรรจบกันตามที่คาดหวังฉันจะทำอะไรผิดหรือเปล่า? 1g(x)=e−x2rnorm 1/√

1n(xmax−xmin)∑i=0n1e−xi2.
1/π
ys = rnorm(1000000, 0, 1/sqrt(2))
r = max(ys) - min(ys)
sum(sapply(ys, function(x) 1/( r * exp(-x^2))))/length(ys)
## evaluates to 0.6019741. 1/sqrt(pi) = 0.5641896

แก้ไขสำหรับ CliffAB

เหตุผลที่ผมใช้ช่วงเป็นเพียงเพื่อให้ง่ายต่อการกำหนดฟังก์ชั่นที่เป็นที่ไม่ใช่ศูนย์ภาคเหนือที่จุดของฉันมี แต่บูรณาการที่ในช่วงinfty] ข้อมูลจำเพาะทั้งหมดของฟังก์ชันคือ: ฉันไม่จำเป็นต้องใช้เป็นความหนาแน่นสม่ำเสมอ ฉันอาจใช้ความหนาแน่นอื่น ๆ ที่รวมเข้ากับตัวอย่างเช่นความหนาแน่นของความน่าจะเป็น อย่างไรก็ตามสิ่งนี้จะทำให้การสรุปตัวอย่างแต่ละตัวอย่างเล็ก ๆ น้อย ๆ คือ [ - ∞ , ∞ ] U ( x ) = { 11[−∞,∞]U(x)1P(x)=1

U(x)={1xmax−xminxmax>x>xmin0otherwise.
U(x)1 1
P(x)=1πe−x2.
1n∑i=0nP(x)g(x)=1n∑i=0ne−xi2/πe−xi2=1n∑i=0n1π=1π.

ผมอาจจะลองเทคนิคนี้สำหรับการแจกแจงอื่น ๆ ที่รวมไป1อย่างไรก็ตามฉันยังต้องการที่จะรู้ว่าทำไมมันใช้งานไม่ได้กับการกระจายแบบสม่ำเสมอ1


ดูอย่างรวดเร็วเท่านั้นดังนั้นฉันไม่แน่ใจว่าทำไมคุณถึงเลือกใช้ช่วง (x) เงื่อนไขว่ามันถูกต้องมันไม่มีประสิทธิภาพมาก! ช่วงของขนาดตัวอย่างนั้นเป็นเพียงสถิติที่ไม่เสถียรที่สุดที่คุณสามารถทำได้
— หน้าผา AB

@Cliffab ไม่มีอะไรพิเศษเป็นพิเศษเกี่ยวกับฉันโดยใช้ช่วงนอกเหนือจากการกำหนดการแจกแจงแบบสม่ำเสมอในช่วงเวลาที่คะแนนของฉันอยู่ ดูการแก้ไข
— Mike Flynn

1
ฉันจะดูรายละเอียดเพิ่มเติมในภายหลัง แต่สิ่งที่ต้องพิจารณาก็คือเช่นถ้า x เป็นชุดของเครื่องแบบ RV ที่แล้วเป็นช่วง1 แต่ถ้า x เป็นชุดของการไม่ degenarate RV ปกติแล้วเป็น ,\ n→∞(x)→1n→∞range(x)→∞
— Cliff AB

@CliffAB คุณอาจพูดถูกฉันคิดว่าเหตุผลก็คือขอบเขตของอินทิกรัลไม่คงที่ดังนั้นความแปรปรวนของตัวประมาณจะไม่มาบรรจบกัน ...
— Mike Flynn

คำตอบ:


13

นี่เป็นคำถามที่น่าสนใจที่สุดซึ่งเกี่ยวข้องกับปัญหาของการประมาณค่าคงที่ normalizing ของความหนาแน่นgตามเอาต์พุต MCMC จากความหนาแน่นgเดียวกัน (คำพูดจากด้านข้างคือการสันนิษฐานที่ถูกต้องที่จะทำคือการที่gนั้นสามารถรวมเข้าด้วยกันได้การไปที่ศูนย์ที่อินฟินิตี้นั้นไม่เพียงพอ)

ในความคิดของฉันรายการที่เกี่ยวข้องมากที่สุดในหัวข้อนี้เกี่ยวกับข้อเสนอแนะของคุณคือบทความโดย Gelfand และ Dey (1994, JRSS B ) ซึ่งผู้เขียนได้พัฒนาวิธีการที่คล้ายกันมากในการหาเมื่อสร้างจาก

∫Xg(x)dx
p(x)∝g(x)α(x)U(x)
{x;α(x)>0}⊂{x;g(x)>0}
∫Xα(x)g(x)p(x)dx=∫Xα(x)Ndx=1N
p1/N
η^=1n∑i=1nα(xi)g(xi)xi∼iidp(x)
η^αα=π
α(x)g(x)=1ℓ(x)
ℓ(x)g(x)=π(x)ℓ(x)
N^=n∑i=1n1/ℓ(xi)

(min(xi),max(xi))exp⁡{x2}

α(q.25(xi),q.75(xi))g

1/π

ys = rnorm(1e6, 0, 1/sqrt(2))
r = quantile(ys,.75) - quantile(ys,.25)
yc=ys[(ys>quantile(ys,.25))&(ys<quantile(ys,.75))]
sum(sapply(yc, function(x) 1/( r * exp(-x^2))))/length(ys)
## evaluates to 0.5649015. 1/sqrt(pi) = 0.5641896

เราจะหารือถึงวิธีการนี้ในรายละเอียดในเอกสารสองกับคาร์เรนเจตภูตและกับฌองมิเชลมาริน

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