การกำหนดเกณฑ์อัตโนมัติสำหรับการตรวจจับความผิดปกติ
ฉันกำลังทำงานกับอนุกรมเวลาของคะแนนความผิดปกติ (พื้นหลังคือการตรวจจับความผิดปกติในเครือข่ายคอมพิวเตอร์) ทุกนาทีฉันได้รับคะแนนความผิดปกติซึ่งบอกฉันว่า "ไม่คาดฝัน" หรือผิดปกติสถานะปัจจุบันของเครือข่ายคืออะไร ยิ่งคะแนนสูงเท่าไรสถานะปัจจุบันก็ยิ่งผิดปกติมากเท่านั้น คะแนนที่ใกล้เคียงกับ 5 เป็นไปได้ในทางทฤษฎี แต่เกิดขึ้นแทบจะไม่เคยเกิดขึ้นเลยxเสื้อ∈ [ 0 , 5 ]xเสื้อ∈[0,5]x_t \in [0, 5] ตอนนี้ฉันต้องการอัลกอริธึมหรือสูตรที่กำหนดเกณฑ์โดยอัตโนมัติสำหรับอนุกรมเวลาผิดปกตินี้ ทันทีที่คะแนนผิดปกติเกินเกณฑ์นี้สัญญาณเตือนจะเริ่มทำงาน การแจกแจงความถี่ด้านล่างเป็นตัวอย่างสำหรับอนุกรมเวลาที่ผิดปกติมากกว่า 1 วัน อย่างไรก็ตามมันไม่ปลอดภัยที่จะสมมติว่าซีรีย์ความผิดปกติทุกครั้งจะมีลักษณะเช่นนั้น ในตัวอย่างพิเศษนี้เกณฑ์ความผิดปกติเช่น. 99-quantile จะเข้าท่าเนื่องจากคะแนนไม่กี่อันทางขวามากถือได้ว่าเป็นความผิดปกติ และการแจกแจงความถี่เดียวกันกับอนุกรมเวลา (ช่วงนั้นมีค่าตั้งแต่ 0 ถึง 1 เนื่องจากไม่มีคะแนนความผิดปกติสูงกว่าในอนุกรมเวลา): แต่น่าเสียดายที่การแจกแจงความถี่อาจมีรูปร่างที่ .99-quantile คือไม่ได้มีประโยชน์ ตัวอย่างด้านล่าง หางขวาอยู่ในระดับต่ำมากดังนั้นหากใช้. 99-quantile เป็นจุดเริ่มต้นสิ่งนี้อาจส่งผลให้เกิดผลบวกปลอมหลายอย่าง การแจกแจงความถี่นี้ดูเหมือนจะไม่มีความผิดปกติดังนั้นเกณฑ์ควรอยู่นอกการกระจายที่ประมาณ 0.25 สรุปแล้วความแตกต่างระหว่างสองตัวอย่างนี้คือตัวอย่างแรกดูเหมือนว่าจะมีความผิดปกติในขณะที่อีกอันหนึ่งไม่มี จากมุมมองที่ไร้เดียงสาของฉันอัลกอริทึมควรพิจารณาสองกรณีนี้: หากการแจกแจงความถี่มีหางขวาขนาดใหญ่ (เช่นคะแนนผิดปกติสองเท่า) ดังนั้น. 99-quantile อาจเป็นเกณฑ์ที่ดี หากการแจกแจงความถี่มีหางขวาสั้นมาก …