วิธีแก้ไขค่าผิดปกติที่ตรวจพบเมื่อทำการพยากรณ์ข้อมูลอนุกรมเวลา?


10

ฉันพยายามหาวิธีแก้ไขค่าผิดปกติเมื่อฉันค้นหา / ตรวจจับพวกมันในข้อมูลอนุกรมเวลา วิธีการบางอย่างเช่น nnetar ใน R ให้ข้อผิดพลาดบางประการสำหรับอนุกรมเวลาที่มีค่าผิดปกติจำนวนมาก / มาก ฉันจัดการเพื่อแก้ไขค่าที่หายไปแล้ว แต่ผู้นอกองค์กรยังคงสร้างความเสียหายต่อการคาดการณ์ของฉัน ...


คุณหมายถึงอะไรโดย "แก้ไข"?
rbatt

การแทนที่หรือแทนที่ ... หรือควรลบ ... ?
Mila

3
ค่าผิดปกติ "ของจริง" หรือไม่? ด้วยเหตุนี้ฉันหมายถึงค่าผิดปกติที่เกิดจากการที่โมเดลไม่สามารถคาดการณ์เหตุการณ์หรือแรงกระแทกอย่างรุนแรงได้หรือไม่ หรือพวกเขา "ข้อผิดพลาด" เช่นปัญหาการป้อนข้อมูล?
ความน่าจะเป็นทางการ

คำตอบ:


9

ขณะนี้มีสิ่งอำนวยความสะดวกในแพ็คเกจการคาดการณ์สำหรับ R สำหรับการระบุและการจำลองค่าผิดปกติ (นอกจากนี้ยังจัดการกับค่าที่หายไป) ในขณะที่คุณใช้แพ็คเกจพยากรณ์อยู่แล้วนี่อาจเป็นวิธีที่สะดวกสำหรับคุณ ตัวอย่างเช่น:

fit <- nnetar(tsclean(x))

tsclean()ฟังก์ชั่นจะพอดีกับแนวโน้มที่แข็งแกร่งโดยใช้เหลือง (สำหรับชุดที่ไม่ใช่ฤดูกาล) หรือแนวโน้มที่แข็งแกร่งและส่วนประกอบตามฤดูกาลใช้ STL (สำหรับชุดตามฤดูกาล) มีการคำนวณยอดคงเหลือและคำนวณขอบเขตต่อไปนี้:

q0.1q0.9

U=q0.9+2(q0.9q0.1)L=q0.12(q0.9q0.1)
โดยที่และเป็นเปอร์เซ็นต์ที่ 10 และ 90 ของส่วนที่เหลือตามลำดับq0.1q0.9

ค่าผิดปกติถูกระบุว่าเป็นจุดที่มีขนาดใหญ่กว่าที่เหลือหรือเล็กกว่าLUL

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


1
รายละเอียดเพิ่มเติมของคุณที่นี่ก็มีประโยชน์เช่นกัน: stats.stackexchange.com/questions/1142/… (tsclean call tsoutliers)

4

เมื่อคุณระบุรุ่นของ ARIMA คุณควรระบุ Pulses / Level Shifts / Pulses ตามฤดูกาลและ / หรือแนวโน้มเวลาท้องถิ่นพร้อมกัน คุณสามารถรับเนื้อหาการอ่านเกี่ยวกับขั้นตอนการตรวจจับการแทรกแซงได้ที่ http://www.ebay.com/ctg/Time-Series-Analysis-Univariate-and-Multivariate-Methods-David-P-Reilly-and-William-Wei-1999 - / 85697และhttp://www.unc.edu/~jbhill/tsay.pdf คุณอาจต้องติดตามซอฟต์แวร์เชิงพาณิชย์เช่น SAS / SPSS / AUTOBOX เพื่อให้ได้ผลลัพธ์ที่เป็นประโยชน์เนื่องจากซอฟต์แวร์ฟรีที่ฉันต้องการเห็น ในการผ่านฉันได้มีส่วนร่วมในการปรับปรุงทางเทคนิคที่สำคัญในพื้นที่นี้เพื่อ AUTOBOX

แก้ไข:

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


1

ฉันเห็นด้วยกับ @Aksakal แทนที่จะเอาค่าผิดปกติวิธีที่ดีกว่าคือการใช้ขั้นตอนทางสถิติบางอย่างเพื่อจัดการกับค่าผิดปกติ ฉันขอแนะนำให้คุณชนะข้อมูลของคุณ หากดำเนินการอย่างถูกต้องการชนะการประกวดราคานั้นค่อนข้างแข็งแกร่งต่อผู้ผิด ในหน้านี้: http://www.r-bloggers.com/winsorization/คุณจะพบรหัส R เพื่อใช้งาน winsorisation หากคุณพิจารณาการรับรางวัลข้อมูลของคุณคุณจะต้องคิดอย่างรอบคอบเกี่ยวกับการกระจาย ค่าผิดปกติคาดว่าจะต่ำมากหรือคาดว่าจะสูงมากหรือทั้งสองอย่าง สิ่งนี้จะส่งผลกระทบไม่ว่าคุณจะเป็นผู้ชนะที่ระดับ 5% หรือ 10% และ / หรือ 95% หรือ 99%


1
Winsorization สำหรับการประเมินค่าเฉลี่ยโดยรวมอาจมีความหมายในกรณีที่ไม่มีแนวโน้มหรือส่วนประกอบตามฤดูกาลในข้อมูล แต่อย่างใดคุกคามที่จะทำลายข้อมูลสำคัญ
whuber

0

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

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

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

แถบความเชื่อมั่นนำเสนอข้อมูลที่สำคัญมาก หากคุณคาดการณ์ว่ายอดขายจะอยู่ที่ 1,000,000 เหรียญสหรัฐในเดือนนี้ แต่มีโอกาส 5% ที่พวกเขาจะได้ $ 10,000 ผลกระทบนี้จะมีผลต่อการตัดสินใจของคุณเกี่ยวกับการใช้จ่ายการจัดการเงินสด ฯลฯ


-1

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


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