ข้อมูลอนุกรมเวลาพยากรณ์พร้อมตัวแปรภายนอก


10

ขณะนี้ฉันกำลังทำงานในโครงการเพื่อคาดการณ์ข้อมูลอนุกรมเวลา (ข้อมูลรายเดือน) ฉันใช้ R เพื่อทำการพยากรณ์ ฉันมีตัวแปรอิสระ 1 ตัว (y) และตัวแปรอิสระ 3 ตัว (x1, x2, x3) ตัวแปร y มีการสังเกต 73 ครั้งและตัวแปรอีก 3 ตัว (alos 73) ตั้งแต่เดือนมกราคม 2009 ถึงมกราคม 2015 ฉันได้ตรวจสอบความสัมพันธ์และค่า p และมันสำคัญมากที่จะนำมาเป็นแบบจำลอง คำถามของฉันคือ: ฉันจะทำให้การคาดการณ์ที่ดีโดยใช้ตัวแปรอิสระทั้งหมดได้อย่างไร ฉันไม่มีค่าในอนาคตสำหรับตัวแปรเหล่านี้ สมมติว่าฉันต้องการทำนายตัวแปร y ของฉันใน 2 ปี (ในปี 2560) ฉันจะทำสิ่งนี้ได้อย่างไร

ฉันลองรหัสต่อไปนี้:

    model = arima(y, order(0,2,0), xreg = externaldata) 

ฉันสามารถทำนายค่า y ในระยะเวลา 2 ปีด้วยรหัสนี้ได้หรือไม่?

ฉันยังลองใช้รหัสการถดถอย:

    reg = lm(y ~ x1 + x2 + x3) 

แต่ฉันจะใช้เวลาในรหัสนี้ได้อย่างไร ฉันจะคาดการณ์ได้อย่างไรว่าค่า y ของฉันจะมากกว่า 2 ปีได้อย่างไร ฉันยังใหม่กับสถิติและการคาดการณ์ ฉันได้อ่านและแคมผ่านค่าความล่าช้าแล้ว แต่ฉันจะใช้ค่าความล่าช้าในตัวแบบเพื่อทำการพยากรณ์ได้อย่างไร

ที่จริงคำถามโดยรวมของฉันคือฉันจะคาดการณ์ข้อมูลอนุกรมเวลาที่มีตัวแปรภายนอกโดยไม่มีมูลค่าในอนาคตได้อย่างไร


อย่าใช้การถดถอยกับข้อมูลอนุกรมเวลา ใช้วิธีการถ่ายโอนรูปแบบฟังก์ชั่น
Tom Reilly

2
สวัสดีคุณช่วยบอกฉันเพิ่มเติมเกี่ยวกับแบบจำลองฟังก์ชั่นการถ่ายโอนได้ไหม และทำไมฉันไม่ควรใช้การถดถอยด้วยข้อมูลอนุกรมเวลา? การศึกษาส่วนใหญ่แนะนำให้ใช้การถดถอยกับอนุกรมเวลา
SB

แบบจำลองฟังก์ชั่นการถ่ายโอนได้อธิบายไว้ในหนังสือเรียน Box-Jenkins ในบทที่ 10 เป้าหมายคือการสร้างแบบจำลองสำหรับแต่ละสาเหตุ (ก่อนการฟอกสีฟัน) แล้วใช้ส่วนที่เหลือเพื่อค้นหาความสัมพันธ์กับ Y (cross correlation) สิ่งนี้จะช่วยให้คุณระบุตัวแปรที่มีความสำคัญและหากมีความสัมพันธ์ที่นำหรือล่าช้า อาจมีความต้องการ ARIMA ในสมการหรือตัวส่วนบนตัวแปร X คุณอาจมีค่าผิดปกติการเปลี่ยนแปลงแนวโน้มระดับฤดูกาลฤดูกาลพารามิเตอร์และความแปรปรวน
Tom Reilly

นอกจากนี้ยังอาจมีการถดถอยสมมติว่าเวลาไม่สำคัญ การถดถอยถูกใช้โดย Galton เพื่อศึกษาเหงื่อถั่ว ... ไม่ใช่ปัญหาอนุกรมเวลา ฟังก์ชันการถ่ายโอนใช้ส่วนต่าง ๆ ของกระบวนการเพื่อประเมินปัญหา
Tom Reilly

คำตอบ:


11

หากคุณพอดีกับโมเดลโดยใช้ตัวแปรภายนอกและต้องการคาดการณ์จากโมเดลนี้คุณจะต้องมีค่าในอนาคต (คาดการณ์) ของตัวแปรภายนอกธรรมดาและเรียบง่าย ไม่มีทางรอบนี้

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

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

ผมขอแนะนำให้นี้ออนไลน์ฟรีตำราการคาดการณ์โดยเฉพาะอย่างยิ่งในส่วนนี้ในการถดถอยพหุคูณ (โชคไม่ดีที่มีอะไรที่เกี่ยวกับ ARIMAX มี) เช่นเดียวกับบล็อกโพสต์ร็อบ Hyndman เรื่อง "The ARIMAX รุ่นนัวเนีย"


1

ในฐานะที่เป็นโยคี Berra กล่าวว่า "มันยากที่จะคาดการณ์โดยเฉพาะเกี่ยวกับอนาคต"

โมดูลซอฟต์แวร์สถิติจำนวนมากจะสร้างการพยากรณ์ตามกระแสเวลาที่ไม่แปรเปลี่ยนในกรณีที่ไม่มีข้อมูลในอนาคตเช่น Proc Forecast ใน SAS หรือโมดูล ARIMA จำนวนเท่าใดก็ได้ การคาดการณ์เหล่านี้เป็นการคาดการณ์ตามพฤติกรรมในอดีตของข้อมูลของคุณ

คุณบอกเราว่าข้อมูลของคุณเป็นรายเดือน แต่อย่าบอกเราว่าคุณมีช่วงเวลาเท่าใด อีกวิธีหนึ่งคือตั้งค่า IVs ของคุณสามครั้งย้อนหลัง 24 เดือนเมื่อเทียบกับ DV เพื่อให้ช่วงเวลาที่พวกเขาคาดการณ์คือ t + 24 สิ่งนี้จะถือว่าคุณมีวันที่เพียงพอทั้งในการเริ่มต้นแบบจำลองและปรับเทียบฤดูกาลที่เกี่ยวข้องตามความเหมาะสม


ฉันแก้ไขข้อความแล้ว ตอนนี้คุณสามารถตอบคำถามของฉันได้ไหม
SB

เนื่องจากคุณมีข้อมูลเพียงพอมีหลายวิธีในการรวมเวลาเข้ากับโมเดลของคุณ คุณสามารถสร้างตัวแปรจำลองสำหรับปี (เช่น 2009, 2010, ฯลฯ ), สำหรับไตรมาสสำหรับแต่ละเดือนในอนุกรมเวลาหรือเป็นวิธีการบัญชีตามฤดูกาลในแต่ละเดือนของปี อีกวิธีหนึ่งคือการรักษาเวลาในฐานะฟังก์ชันแนวโน้มเชิงตัวเลขเช่นเชิงเส้น (ในการนับช่วงเวลาที่เริ่มต้นด้วย ม.ค. 2009 = 1, ก.พ. = 2, ฯลฯ ) หรือแนวโน้มพหุนามจำนวนเท่าใดก็ได้ตามแนวโน้มเชิงเส้น เช่นกำลังสอง (แนวโน้มเชิงเส้นกำลังสอง) ขึ้นไป คุณต้องการรู้อะไรอีก
Mike Hunter

แต่เวลาไม่สามารถเป็นตัวแปรอิสระใช่ไหม ดังนั้นฉันจะทำนายตัวแปร y ของฉันโดยใช้ตัวแปรภายนอก 3 ตัวได้อย่างไร ฉันมีช่วงเวลาที่ยากลำบากจริง ๆ แล้วเลือกรุ่นที่จะทำการทำนาย?
SB

ตามที่ระบุไว้ในความคิดเห็นก่อนหน้าเวลาจะเป็นตัวแปรอิสระ ฉันคิดว่าคุณจำเป็นต้องอ่านข้อมูลเกี่ยวกับการถดถอยเศรษฐมิติและวรรณกรรมอนุกรมเวลา มีหลายกระทู้ในเว็บไซต์นี้ที่ตอบคำถามเหล่านี้และแนะนำบทความหนังสือ ฯลฯ เรียกดูทางด้านขวามือของเว็บเพจนี้เพื่อดูหัวข้อเพิ่มเติมที่เกี่ยวข้องกับข้อกังวลของคุณ
Mike Hunter

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

1

เท่าที่ฉันเห็นคุณมีสามตัวเลือก:

  1. ใช้การพยากรณ์ที่เผยแพร่สำหรับตัวแปรอิสระของคุณหรือค้นหาแบบจำลองเพื่อคาดการณ์ ตัวอย่างเช่นการสำรวจสำมะโนประชากรจะมีการคาดการณ์ข้อมูลประชากร
  2. การใช้ชุดข้อมูลที่คุณมีให้ถอยหลังตัวแปรอิสระแต่ละตัวของคุณตามเวลาแล้วใช้ผลลัพธ์เหล่านี้แบบจำลองการคาดการณ์ของคุณสำหรับตัวแปรอิสระ
  3. วางตัวแปรอิสระและเพียงวางโมเดลตัวแปรตามของคุณเป็นฟังก์ชันของเวลาและค่า lagged ของ y

แต่ละวิธีมีจุดแข็งและจุดอ่อนของตนเองดังนั้นวิธีที่ดีที่สุดขึ้นอยู่กับบริบทเฉพาะ

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