ความคล้ายคลึงกันทางสถิติของอนุกรมเวลา


15

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

ความคิดแรกที่ง่ายที่สุดของฉันคือการกำหนดค่าให้กับทิศทางการเคลื่อนที่ของคลื่นไซน์เช่น +1 +1 +1 +1 -1 -1 -1 -1 -1 -1 -1 -1 +1 +1 +1 +1 ทำแบบเดียวกันกับข้อมูลจริงจากนั้นก็หาค่าปริมาณของความคล้ายคลึงกันของทิศทางการเคลื่อนไหว

แก้ไข: ให้ความคิดกับสิ่งที่ฉันต้องการทำกับข้อมูลของฉันมากขึ้นและจากการตอบคำถามเดิมของฉันสิ่งที่ฉันต้องการก็คืออัลกอริทึมการตัดสินใจเลือกระหว่างสมมติฐานที่แข่งขันกัน: นั่นคือข้อมูลของฉันเป็นเส้นตรง (หรือ แนวโน้ม) ด้วยเสียงที่อาจมีองค์ประกอบที่เป็นวงจร ข้อมูลของฉันนั้นเป็นวัฏจักรที่ไม่มีแนวโน้มที่จะพูดถึง ข้อมูลนั้นเป็นเพียงแค่เสียงรบกวน หรือเป็นการเปลี่ยนแปลงระหว่างสถานะใด ๆ เหล่านี้

ความคิดของฉันตอนนี้อาจรวมรูปแบบของการวิเคราะห์แบบเบย์กับ Euclidean / LMS ขั้นตอนในวิธีการนี้จะเป็น

สร้างคลื่นไซน์ที่สันนิษฐานจากการวัดข้อมูล

ติดตั้ง LMS ให้ตรงกับข้อมูล

สืบทอด Euclidean หรือ LMS metric สำหรับการออกจากข้อมูลต้นฉบับสำหรับแต่ละข้อด้านบน

สร้าง Bayesian ก่อนสำหรับแต่ละตัวโดยยึดตามตัวชี้วัดนี้นั่นคือ 60% ของขาออกที่รวมกันยึดติดกับหนึ่ง, 40% ไปที่อีกอันหนึ่งดังนั้นนิยม 40%

เลื่อนหน้าต่างหนึ่งจุดข้อมูลไปตามข้อมูลและทำซ้ำข้างต้นเพื่อรับตัวชี้วัด% ใหม่สำหรับชุดข้อมูลที่เปลี่ยนแปลงเล็กน้อย - นี่คือหลักฐานใหม่ - ทำการวิเคราะห์แบบเบส์เพื่อสร้างภาพหลังและเปลี่ยนความน่าจะเป็นที่ยอมรับสมมติฐานแต่ละข้อ

ทำซ้ำตามชุดข้อมูลทั้งหมด (3000 จุดข้อมูล) ด้วยหน้าต่างเลื่อนนี้ (ความยาวหน้าต่าง 10-50 จุดข้อมูล) ความหวัง / ความตั้งใจคือการระบุข้อสันนิษฐานเด่น / เป็นที่โปรดปราน ณ จุดใด ๆ ในชุดข้อมูลและการเปลี่ยนแปลงนี้ตามเวลา

ความคิดเห็นใด ๆ เกี่ยวกับวิธีการที่เป็นไปได้นี้จะได้รับการต้อนรับโดยเฉพาะอย่างยิ่งเกี่ยวกับวิธีที่ฉันสามารถใช้ส่วนการวิเคราะห์แบบเบย์

คำตอบ:


7

ระยะทางแบบยุคลิดนั้นเป็นตัวชี้วัดทั่วไปในการเรียนรู้ของเครื่อง สไลด์ต่อไปนี้ให้ภาพรวมที่ดีของพื้นที่นี้พร้อมกับการอ้างอิง:

ดูการอ้างอิงในหน้าเกณฑ์มาตรฐานของ Keogh สำหรับการจำแนกอนุกรมเวลา:


5

หากคุณมีรูปแบบเฉพาะที่คุณต้องการเปรียบเทียบ: ฉันขอแนะนำ Least-squares เป็นตัวชี้วัดเพื่อย่อและทำคะแนนค่าพารามิเตอร์ที่เป็นไปได้กับชุดข้อมูลที่เฉพาะเจาะจง สิ่งที่คุณต้องทำคือเสียบค่าประมาณพารามิเตอร์ของคุณใช้ค่าเหล่านั้นเพื่อสร้างค่าที่คาดการณ์และคำนวณค่าเบี่ยงเบนกำลังสองเฉลี่ยจากค่าจริง

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


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

ฉันไม่แน่ใจ. ข้อเสนอแนะของฉันคือใช้ตัวชี้วัดกำลังสองน้อยที่สุด แต่ฉันไม่ได้บอกว่าจะใช้การถดถอยเชิงเส้น คุณอาจตรวจสอบธาตุถดถอย
M. Tibbits

สำหรับคำถามอื่น ๆ ของคุณคุณสามารถลดข้อมูลลงครึ่งหนึ่งได้หรือไม่ฉันจะต้องระมัดระวังในการทำเช่นนี้เพราะนั่นจะเพิ่มความถี่ขั้นต่ำสองเท่าที่คุณสามารถพิจารณาได้ ฉันคิดว่าคุณอาจจำเป็นต้องดูค่าสัมประสิทธิ์ฟูริเยร์ (ใช้FFTหรือDCTแล้วถอยกลับไป?!? - ไม่แน่ใจ ) หรืออาจถดถอยเป็นระยะ ๆ ตามที่ได้กล่าวไว้ข้างต้น
M. Tibbits

3

"ความคิดที่เรียบง่ายครั้งแรก" ของคุณซึ่งแสดงถึงการเคลื่อนไหวในทิศทางเดียวนั้นคล้ายคลึงกันในจิตวิญญาณกับอัลกอริทึม SAX ของ Keogh สำหรับการเปรียบเทียบอนุกรมเวลา ผมอยากแนะนำให้คุณลองดูที่มัน: เอมอนค็อฟและเจสสิก้าหลิน: แซ็กโซโฟน

จากการแก้ไขของคุณดูเหมือนว่าคุณกำลังคิดที่จะแก้ปัญหาต่างกัน แต่คุณอาจพบว่า SAX ให้ชิ้นส่วนของปริศนา


0

ในขณะที่ฉันมาช้าไปงานปาร์ตี้ถ้าคุณกำลังคิดเกี่ยวกับอะไรก็ตามที่เป็นไซนัส ในทางทฤษฎีคุณสามารถใช้การแปลงเวฟเล็ตเพื่อแยกลำดับออกเป็น "ส่วน" ต่างๆ (เช่นคลื่นของรูปร่าง / ความถี่ที่แตกต่างกันส่วนประกอบที่ไม่ใช่คลื่นเช่นแนวโน้ม ฯลฯ ) รูปแบบเฉพาะของการแปลงคลื่นที่ใช้ตันเป็นการแปลงฟูริเยร์ แต่มีงานจำนวนมากในพื้นที่นี้ ฉันชอบที่จะสามารถแนะนำแพ็คเกจปัจจุบัน แต่ฉันยังไม่ได้ทำการวิเคราะห์สัญญาณในช่วงระยะเวลาหนึ่ง ฉันจำบางแพคเกจ Matlab ที่รองรับฟังก์ชั่นการทำงานของหลอดเลือดดำนี้ได้อย่างไร

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

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