Data analytic exercise

Matrix profile

การทำ Matrix profile นั้นเป็นการนำข้อมูลไปหาความคล้ายกันของข้อมูลเพื่อนำมาระบุว่าข้อมูลนั้นมีความคล้ายกัน ณ จุดใด หรือใช้ในทางกลับกันว่ามีจุดใดบ้างที่ไม่คล้ายกับจุดอื่นๆเลย ข้อดี เราสามารถหาความซ้ำกันของข้อมูลที่มีขนาดใหญ่ได้ ข้อเสีย ถ้าข้อมูลมาในลักษณะที่ไม่มี pattern หรือมีชุดข้อมูลขนาดเล็กมากๆ จะทำให้ Matrix profile นั้นไม่สามารถแสดงประสิทธิภาพได้อย่างเต็มที่

หลักการของ Matrix profile คือการนำข้อมูลมา convolution เพื่อหา euclidian distance แล้วนำค่าที่น้อยที่สุดที่ได้จากการทำ convolution ครั้งนั้นไปใส่ไว้ใน profile distance

เมื่อเรานำค่า Matrix profile distance ไปทำการ visualize เราจะได้กราฟหน้าตาลักษณะดังนี้

กราฟนี้บอกอะไรกับเราบ้าง การอ่านกราฟนี้ ข้อมูลในแกนตั้งคือค่าความเหมือนกันของ data point ยิ่งค่าเข้าใกล้ศูนย์มากเท่าไหร่จุดๆนั้นก็จะมีความเหมือนกันมากเท่านั้น ส่วนข้อมูลในแกนนอนนั้นคือจุด data point ที่มีความเหมือนกัน ในรูปตัวอย่างด้านบนจะเห็นได้ว่ามีความเหมือนกันตรงที่มีเส้นประ เมื่อเรานำ data point ที่ได้ไปดูกับค่าข้อมูลจะเห็นได้ว่า ณ จุดๆนั้นมีความคล้ายคลึงกัน

Exercise

แบบฝึกหัดเบื้องต้นนี้จะใช้ google colab และไลบรารี่ stumpy ในการทำ data analytic

การทำ analytic นี้จะเป็นตัวอย่างการนำเข้าข้อมูลแบบ time series ไปทำ matrix profile เพื่อหาจุดที่เกิดการซ้ำกันของข้อมูล

เอกสารด้านล่างจะพาไปยัง Google colab

เมื่อเข้าไปแล้วสามารถกด File > copy in drive เพื่อนำไปแก้ไขหรือต่อยอดได้

แหล่งอ้างอิง

Last updated

Assoc. Prof. Wiroon Sriborrirux, Founder of Advance Innovation Center (AIC) and Bangsaen Design House (BDH), Electrical Engineering Department, Faculty of Engineering, Burapha University