Cosine similarity: ชี้ไปทางเดียวกันแค่ไหน
มีพิกัดแล้ว เราต้องการตัวเลขตัวเดียวที่บอกว่าสองคำ "คล้ายกัน" แค่ไหน เครื่องมือมาตรฐานคือ ความคล้ายโคไซน์ (cosine similarity)วัดว่าลูกศรสองอันชี้ไปทางเดียวกันแค่ไหน ได้ค่าระหว่าง −1 ถึง 1 โดยไม่สนความยาวดูคำศัพท์ทั้งหมด ซึ่งดูว่าลูกศรสองอัน ชี้ไปทางเดียวกัน แค่ไหน
ส่วนบนคือ ผลคูณจุด (dot product)เอาตัวเลขตำแหน่งเดียวกันของสองเวกเตอร์มาคูณกัน แล้วบวกรวม ยิ่งชี้ไปทางเดียวกันยิ่งได้ค่ามากดูคำศัพท์ทั้งหมด: คูณตัวเลขตำแหน่งเดียวกันเป็นคู่ แล้วบวก
ส่วนล่างคือความยาวของลูกศรทั้งสองคูณกัน (จากหน้าก่อน)
ลองคิดตาม: แมว (0.9, 0.8) กับ หมา (0.8, 0.9)
- dot:
- ความยาว: ‖แมว‖ = ‖หมา‖ = ดังนั้นส่วนล่าง
- หาร: 0.9931
เกือบ 1 แปลว่าแมวกับหมาชี้ไปทางเกือบเดียวกัน
ค่าพิเศษที่ควรจำ
| คู่เวกเตอร์ | ลักษณะ | cosine |
|---|---|---|
| (1, 2) กับ (2, 4) | ทิศเดียวกัน (ยาวไม่เท่ากัน) | 1 |
| (1, 0) กับ (0, 1) | ตั้งฉาก | 0 |
| (1, 0) กับ (−1, 0) | ตรงข้ามกัน | −1 |
cosine similarity ใกล้ 1 = ความหมายไปทางเดียวกัน ใกล้ 0 = ไม่เกี่ยวกัน ไม่สนว่าลูกศรยาวแค่ไหน

มังคุด
ทำไมไม่วัดระยะห่างระหว่างจุดตรงๆ ล่ะ?