Vì sao quan trọng. Cosine similarity đo hai vectơ cùng hướng tới đâu, bỏ qua độ dài. Đây là cách
máy so "độ giống nhau": tìm văn bản liên quan (RAG), gợi ý sản phẩm, so embedding trong LLM — tất cả là cosine.
cos θ = (a · b) / (‖a‖ ‖b‖) ∈ [−1, 1]
💡 Trực giác
Tưởng tượng hai mũi tên. Cosine = +1: chỉ cùng một hướng (rất giống). = 0: vuông góc (chẳng liên quan).
= −1: ngược hẳn. Nó chỉ quan tâm góc, không quan tâm mũi tên dài hay ngắn — nên "to nhỏ" không ảnh hưởng.
0
Hai vectơ cho sẵn
2D
a 1×2
3
4
b 1×2
4
3
Đã chọn để ‖a‖, ‖b‖ ra số nguyên — tính tay sạch. Ôn lại: tích vô hướng (Bài A3) + chuẩn L2 (Bài A2).
1
Tử số: a · b
tích vô hướng
a · b = 3·4 + 4·3
= + =
Vì sao: tích vô hướng đã mang sẵn cos θ bên trong (a·b = ‖a‖‖b‖cos θ); ta chỉ cần "lột" hai độ dài ra.
Vì sao: chia cho hai độ dài để "tẩy" ảnh hưởng kích thước — chỉ còn lại thông tin về hướng.
3
Chia → cos θ
và suy ra góc
cos θ = / =
→ θ ≈ °
Mẹo: cos càng gần 1 → hai vectơ càng "giống hướng". Dùng bảng/máy tính để đổi cos → góc.
✎ Tự kiểm tra
Nhân đôi vectơ a (thành 2a) thì cosine với b đổi không? →
cos θ = 0 nghĩa là hai vectơ thế nào? →
Làm toán AI ✍️ — Bài A4 · Cosine similarityTrang 1/2 · ĐỀ
Làm toán AI ✍️ · Toán × AI
ĐÁP ÁN
Bài A4
Cosine similarity — lời giải
1
Tử số a · b
a · b = 12 + 12 = 24
2
Mẫu số ‖a‖·‖b‖
‖a‖ = √25 = 5 ·
‖b‖ = √25 = 5 →
‖a‖·‖b‖ = 25
3
cos θ & góc
cos θ = 24/25 = 0.96
→ θ ≈ 16°
▦
Sơ đồ: góc giữa hai vectơ
cos θ
Mũi tên lam = a, cam = b;
cung là góc θ. Cosine chỉ đọc góc này — kéo dài mũi tên gấp đôi, góc (và cosine) không đổi.
✎ Tự kiểm tra — đáp án
Nhân đôi a → cosine với b? → không đổi (cosine bỏ qua độ dài)
cos θ = 0 → vuông góc (θ = 90°, "không liên quan")
Rút ra. Cosine = tích vô hướng đã chuẩn hóa theo độ dài → chỉ còn đo hướng, nằm gọn trong [−1, 1].
Đây là "thước giống nhau" mặc định cho embedding (Bài G1) và truy hồi RAG. Phần A tiếp theo bồi thêm các viên gạch
ma trận (chuyển vị A6, ma trận×vectơ A8) trước khi ráp thành lớp nơ-ron.
Làm toán AI ✍️ — Bài A4 · Cosine similarityTrang 2/2 · ĐÁP ÁN