เทคนิคใดบ้างสำหรับการสุ่มตัวอย่างสองตัวแปรสุ่มที่สัมพันธ์กัน?


16

เทคนิคใดบ้างสำหรับการสุ่มตัวอย่างตัวแปรสุ่มที่มีความสัมพันธ์สองตัว:

  • ถ้าการแจกแจงความน่าจะเป็นของพวกเขาถูกแปร (เช่น log-normal)

  • หากพวกเขามีการแจกแจงแบบไม่อิงพารามิเตอร์

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

สำหรับกรณี (2) อะนาล็อก 1-D จะสร้าง CDF และตัวอย่างจากมัน ดังนั้นฉันเดาว่าฉันสามารถสร้าง CDF 2 มิติและทำสิ่งเดียวกัน อย่างไรก็ตามฉันสงสัยว่ามีวิธีที่จะเข้าใกล้โดยใช้ 1-D CDFs แต่ละรายการและเชื่อมโยงตัวเลือกอย่างใด

ขอบคุณ!


3
การเชื่อมโยง CDF 1-D ทำให้ฉันคิดถึงcopula s ไม่แน่ใจว่าพวกเขาจะมีประโยชน์กับคุณหรือไม่
onestop

คำตอบ:


23

ฉันคิดว่าสิ่งที่คุณกำลังมองหาคือ copula คุณมีการแจกแจงมาร์จิ้นสองอัน (ที่ระบุโดยพารามิเตอร์ cam หรือพารามิเตอร์เชิงประจักษ์) และตอนนี้คุณต้องการระบุการพึ่งพาระหว่างทั้งสอง สำหรับกรณี bivariate มีตัวเลือกทุกชนิด แต่สูตรพื้นฐานเหมือนกัน ฉันจะใช้แบบเกาส์เกาส์เพื่อความสะดวกในการตีความ

การวาดจากเชื่อมเกาส์ที่มีสัมพันธ์เมทริกซ์C

  1. วาด(Z=(Z1,Z2)N(0,C)

  2. ชุดสำหรับฉัน= 1 , 2 (กับΦ CDF ปกติมาตรฐาน) ตอนนี้U 1 , U 2U [ 0 , 1 ]แต่มันขึ้นอยู่กับUi=Φ(Zi)i=1,2ΦU1,U2U[0,1]

  3. ชุดที่F - 1ฉันเป็น (หลอก) ผกผันของ CDF ร่อแร่ตัวแปรฉัน นี่ก็หมายความว่าY ฉันทำตามการกระจายตัวที่ต้องการ (ขั้นตอนนี้เป็นเพียงการสุ่มตัวอย่างการแปลงผกผัน)Yi=Fi1(Ui)Fi1iYi

Voila! ลองใช้กรณีง่าย ๆ ดูที่ฮิสโทแกรมและสแกตเตอร์โพล

ไม่รับประกันว่าสิ่งนี้เหมาะสมสำหรับแอปพลิเคชันของคุณโดยเฉพาะ (โดยเฉพาะคุณอาจต้องเปลี่ยนแบบเกาส์เกาส์เป็นแบบโคคูล่า) แต่สิ่งนี้จะช่วยให้คุณเริ่มต้นได้ การอ้างอิงที่ดีเกี่ยวกับการสร้างแบบจำลองโคคูล่าคือ Nelsen (1999), บทนำสู่ Copulasแต่ก็มีการแนะนำที่ดีงามทางออนไลน์เช่นกัน


2
+1 Nelsen อ่านได้ค่อนข้างมาก ฉันซื้อสำเนาไม่กี่ปีที่ผ่านมาแม้จะผ่านสื่อออนไลน์มากมาย
whuber

1
ฉันพบกระดาษสอนที่ดีและสเปรดชีตที่แนบมา: behan.ws/copula.pdfและ soa.org/files/xls/rsrch-copula-ex.xls
Pete

1
@ Pet กระดาษดีจริงๆ ในทางกลับกันลิงก์สเปรดชีตจะตาย
Boris Gorelik

ดูเหมือนว่า Mathematica และ Matlab รุ่นล่าสุดมีฟังก์ชั่นการจัดการปัญหาในตัวอยู่แล้ว?
LCFactorization

จะทำอย่างไรถ้าฉันต้องการร่วมกับ plackett copula มีความสัมพันธ์ระหว่าง Normal กับ plackett หรือไม่?
fedvasu

2

อีกวิธีที่นิยมคือ "การลดลงเล็กน้อย" ซึ่งเป็นตัวอย่าง X1~Y+Z และ X2~W+Z ดังนั้นความสัมพันธ์จะถูกเหนี่ยวนำโดยตัวแปรสุ่ม Z. โปรดทราบว่าสิ่งนี้สามารถปรับเปลี่ยนได้มากกว่า 2 มิติ - แต่ซับซ้อนกว่าเคส 2 มิติ คุณอาจคิดว่าคุณจะได้รับความสัมพันธ์เชิงบวกเท่านั้น แต่ที่จริงแล้วคุณสามารถรับความสัมพันธ์เชิงลบด้วยการใช้ยู และ (1-ยู) เมื่อสร้างตัวแปรสุ่มสิ่งนี้จะทำให้เกิดความสัมพันธ์เชิงลบกับการแจกแจง

วิธีที่ได้รับความนิยมอันดับสามคือ(NORTA) NORmal To Anything ; สร้างความแปรปรวนปกติที่มีความสัมพันธ์ทำให้พวกมันเป็นชุดความแปรปรวนแบบสุ่มผ่านการประเมิน cdf ตามลำดับจากนั้นใช้ชุดการสุ่มแบบ "ใหม่" เหล่านี้เป็นแหล่งที่มาของการสุ่มในการสร้างการดึงจากการแจกแจงใหม่

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

หากคุณยินดีที่จะรับตัวอย่างโดยประมาณ (ในกรณีส่วนใหญ่) เทคนิค MCMCก็เป็นตัวเลือกตัวอย่างจากการแจกแจงหลายมิติ

นอกจากนี้คุณสามารถใช้วิธีการยอมรับ - ปฏิเสธได้แต่โดยทั่วไปแล้วจะยากที่จะค้นหาความหนาแน่นที่มีอิทธิพลต่อการสุ่มตัวอย่างและประเมินอัตราส่วนของความหนาแน่นต่อความหนาแน่นที่ต้องการ

นี่คือวิธีการเพิ่มเติมทั้งหมดที่ฉันสามารถนึกได้ แต่อาจมีบางอย่างที่ฉันพลาด

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