ความท้าทายของการตรวจจับค่าผิดปกติในข้อมูลมิติสูง
มีความท้าทายหลายประการ ดังนี้:
1. การตีความค่าผิดปกติ (Interpretation of Outliers)
ต้องไม่เพียงระบุค่าผิดปกติ แต่ต้องให้การตีความด้วย เนื่องจากมีคุณลักษณะ (หรือมิติ) หลายอย่างในชุดข้อมูลมิติสูง การระบุค่าผิดปกติโดยไม่ให้เหตุผลว่าทำไมจึงเป็นค่าผิดปกติ จะไม่ค่อยมีประโยชน์ การตีความอาจมาจากช่วงย่อยเฉพาะที่แสดงค่าผิดปกติ หรือการประเมินเกี่ยวกับ "ระดับค่าผิดปกติ" (Outlierness) ของวัตถุ การตีความดังกล่าวช่วยให้ผู้ใช้เข้าใจความหมายและความสำคัญที่เป็นไปได้ของค่าผิดปกติ
2. ความกระจายของข้อมูล (Data Sparsity)
วิธีการต้องสามารถจัดการความกระจายในพื้นที่มิติสูง ระยะห่างระหว่างวัตถุกลายเป็นถูกครอบงำโดย雜訊 (Noise) เมื่อมิติเพิ่มขึ้น ดังนั้น ข้อมูลในพื้นที่มิติสูงจึงกระจายกระจาย
3. ช่วงย่อยของข้อมูล (Data Subspaces)
ควรสร้างแบบจำลองค่าผิดปกติอย่างเหมาะสม เช่น ปรับตัวตามช่วงย่อยที่ระบุค่าผิดปกติ และจับพฤติกรรมท้องถิ่นของข้อมูล การใช้เกณฑ์ระยะห่างคงที่ (Fixed-distance Threshold) ต่อบางช่วงย่อยเพื่อระบุค่าผิดปกติ ไม่ใช่ความคิดที่ดี เพราะระยะห่างระหว่างสองวัตถุเพิ่มขึ้นอย่างเด็ดขาด (Monotonically Increases) เมื่อมิติเพิ่มขึ้น
4. ความสามารถในการขยายตัวตามมิติ (Scalability with Respect to Dimensionality)
เมื่อมิติเพิ่มขึ้น จำนวนช่วงย่อยเพิ่มขึ้นแบบเอ็กซ์โพเนนเชียล (Exponentially) การวิเคราะห์เชิงจัดหมู่แบบครบถ้วน (Exhaustive Combinatorial Analysis) ของพื้นที่ค้นหา ซึ่งรวมช่วงย่อยที่เป็นไปได้ทั้งหมด ไม่ใช่วิธีที่ขยายตัวได้ (Scalable)
วิธีการหลักสามประการสำหรับข้อมูลมิติสูง
1. การขยายการตรวจจับค่าผิดปกติแบบดั้งเดิม (Extending Conventional Outlier Detection)
วิธีหนึ่งปรับปรุงวิธีตรวจจับค่าผิดปกติแบบดั้งเดิม ใช้โมเดลความใกล้เคียงแบบดั้งเดิม (Proximity-based Models) ของค่าผิดปกติ เพื่อเอาชนะการเสื่อมสภาพของเมตริกความใกล้เคียงในพื้นที่มิติสูง ต้องการเมตริกทางเลือกหรือสร้างช่วงย่อยและตรวจจับค่าผิดปกติที่นั่น
อัลกอริทึม HilOut เป็นตัวอย่างของวิธีนี้ HilOut ค้นพบค่าผิดปกติแบบระยะห่าง (Distance-based Outliers) แต่ใช้ลำดับของระยะห่าง (Ranks of Distance) แทนระยะห่างสัมบูรณ์ ในการตรวจจับค่าผิดปกติ โดยเฉพาะ สำหรับวัตถุแต่ละชิ้น o HilOut หา k-เพื่อนบ้านใกล้สุด (k-Nearest Neighbors) ของ o แทนด้วย nn₁(o),...,nnₖ(o) โดย k เป็นพารามิเตอร์ขึ้นอยู่กับซอฟต์แวร์ น้ำหนักของวัตถุ o แสดงเป็น: w(o) = Σᵢ₌₁ᵏ dist(o, nnᵢ(o))
2. การค้นหาค่าผิดปกติในช่วงย่อย (Finding Outliers in Subspaces)
อีกวิธีหนึ่งคือค้นหาค่าผิดปกติในช่วงย่อยต่างๆ ข้อดีเฉพาะคือ หากวัตถุพบว่าเป็นค่าผิดปกติในช่วงย่อยที่มีมิติต่ำกว่ามาก ช่วงย่อยนั้นให้ข้อมูลสำคัญสำหรับอธิบายว่าทำไมและในระดับใดวัตถุเป็นค่าผิดปกติ นี่มีค่ามากในแอปพลิเคชันข้อมูลมิติสูง เนื่องจากจำนวนมิติที่มหึมา
3. การสร้างแบบจำลองค่าผิดปกติมิติสูง (Modeling High-Dimensional Outliers)
วิธีทางเลือกสำหรับวิธีตรวจจับค่าผิดปกติในข้อมูลมิติสูง พยายามสร้างโมเดลใหม่สำหรับค่าผิดปกติมิติสูงโดยเฉพาะ