การวัดความเหมือนกันของข้อมูล
algorithm ที่ใช้การวัดความเหมือนของข้อมูลที่พบบ่อยแก่
- Euclidean
- Manhattan
- Minkowski
- Cosine Similarity
- Jaccard
Euclidean [1] เป็น algorithm ที่ใช้บ่อยมากที่สุด หากไม่มีการกำหนดชื่อ algorithm ไว้ มักจะอนุมานว่าใช้ตัวนี้ไว้ก่อน
Manhattan [2] อาจจะพบได้ในชื่ออื่น เช่น L1 distance, Taxicap
Minkowski [3] มองว่าเป็น general term ของทั้ง Euclidean และ Manhattan
Cosine similarity [4]
เมื่อ vector u, v เป็น non-zero vector และทั้งสองทำมุมต่อกัน
แสดงว่า
Jaccard similarity (Jaccard Index) [5]
ใช้หลักการของ Set มาช่วยพิจารณา บางครั้งจึงเรียกว่า Intersection over Union (IOU)
ข้อดีของการใช้ Set คือ ข้อมูลไม่จำเป็นต้องมี dimension เท่ากันก็สามารถนำมาวัดความเหมือนได้ ยกตัวอย่าง
จะได้ว่า
ตัวอย่าง
ถ้าในระบบฐานข้อมูลดอก Iris มีดังตารางข้างล่างนี้
sepal length | sepal width | petal length | petal width | class |
6.3 | 3.3 | 6.0 | 2.5 | Iris-virginica |
4.9 | 3.0 | 1.4 | 0.2 | Iris-setosa |
6.9 | 3.1 | 4.9 | 1.5 | Iris-versicolor |
ในการเก็บข้อมูลภาคสนามครั้งหนึ่งได้ข้อมูลมาดังนี้ X = [4.6,3.1,1.5,0.2] มาใช้การวัดความเหมือนด้วย Euclidean เพื่อดูว่าดอกไม้ X ที่เก็บมาจะอยู่ใน class ใด
Row | Distance |
1 | |
2 | |
3 |
จากตารางจะเห็นว่าเมื่อเทียบกับ Iris-setosa (row 2) แล้ว จะได้ค่าระยะห่าง (distance) ต่ำที่สุด (ความเหมือนมีมาก) ดังนั้นดอก X ควรจัดอยู่ใน class Iris-setosa
--------------------------
เอกสารอ้างอิง
[1] https://en.wikipedia.org/wiki/Euclidean_distance
[2] https://en.wiktionary.org/wiki/Manhattan_distance
[3] https://en.wikipedia.org/wiki/Minkowski_distance
[4] https://en.wikipedia.org/wiki/Cosine_similarity
[5] https://en.wikipedia.org/wiki/Jaccard_index
ความคิดเห็น
แสดงความคิดเห็น