Google-এ "king − man + woman" search করলে কেন "queen" আসে? কারণ word2vec প্রতিটি শব্দকে একটি vector বানিয়েছে, এবং সেই vector-গুলোর মধ্যে যোগ-বিয়োগ অর্থপূর্ণ। এটাই vector operation-এর জাদু।
Attention mechanism, similarity search, recommendation system — সব এই অধ্যায়ের ৪-৫টি operation-এর উপর দাঁড়ানো।
Vector Addition & Subtraction
Component-wise কাজ:
Scalar Multiplication
Vector-এর দিক একই, দৈর্ঘ্য পরিবর্তিত। Gradient descent-এ θ − lr · grad ঠিক এই operation।
Magnitude (Norm)
Vector-এর "দৈর্ঘ্য" — Pythagoras-এর n-D সাধারণীকরণ।
- L2 norm: উপরেরটা — most common
- L1 norm: Σ|vi| — sparsity-র জন্য (Lasso)
- L∞ norm: max|vi| — adversarial robustness
Dot Product — AI-এর সবচেয়ে গুরুত্বপূর্ণ operation
Geometric meaning:
- a · b > 0 → একই দিক
- a · b = 0 → perpendicular (orthogonal)
- a · b < 0 → বিপরীত দিক
Cosine Similarity
−1 থেকে 1 পর্যন্ত। দুই vector কতটা "একই দিকে" তা মাপে — magnitude-নিরপেক্ষ।
- Document similarity (TF-IDF)
- Face recognition embedding compare
- Semantic search (ChatGPT-এর RAG)
Cross Product (3-D)
শুধু 3-D vector-এর জন্য, output আরেকটি vector যা দুটোর সাথে perpendicular।
AI-তে কম, কিন্তু computer graphics, 3D vision, robotics-এ অপরিহার্য।
Python (NumPy) Implementation
import numpy as np
a = np.array([1.0, 2.0, 3.0])
b = np.array([4.0, 5.0, 6.0])
# Addition / subtraction / scalar mul
print(a + b) # [5 7 9]
print(b - a) # [3 3 3]
print(3 * a) # [3 6 9]
# Magnitude (L2 norm)
print(np.linalg.norm(a)) # sqrt(14) ≈ 3.74
print(np.linalg.norm(a, ord=1)) # L1 = 6
print(np.linalg.norm(a, ord=np.inf)) # L-inf = 3
# Dot product
print(np.dot(a, b)) # 1*4 + 2*5 + 3*6 = 32
print(a @ b) # same
# Cosine similarity
def cosine(u, v):
return np.dot(u, v) / (np.linalg.norm(u) * np.linalg.norm(v))
print(cosine(a, b)) # ~0.974 (very similar)
print(cosine(a, -a)) # -1 (opposite)
print(cosine([1, 0], [0, 1])) # 0 (perpendicular)
# Cross product
print(np.cross([1, 0, 0], [0, 1, 0])) # [0 0 1]AI/ML সংযোগ
- Neuron output: y = σ(w · x + b) — dot product।
- Attention score: QKT / √d — dot product matrix।
- Embedding similarity: cosine similarity (semantic search, RAG)।
- Weight decay: L2 norm penalty।
- Gradient step: scalar × gradient vector।
Common Mistakes
- Cosine similarity vs Euclidean distance গুলিয়ে ফেলা — দু'টো different metric।
- Normalization ভুলে যাওয়া — magnitude বড় থাকলে dot product বিভ্রান্তিকর হয়।
- Cross product শুধু 3-D — n-D-তে generalization আলাদা।
Practice Tasks
- a = [2, 0], b = [0, 3] — dot product ও cosine similarity বের করুন।
- একটি 100-মাত্রার random vector বানিয়ে L1, L2, L∞ norm print করুন।
- ৩টি random vector নিয়ে pairwise cosine similarity matrix বানান।
Assignment
৫টি dummy "word vector" (ধরা যাক ১০-মাত্রার random) বানান: king, queen, man, woman, apple। Cosine similarity দিয়ে দেখান কোন pair সবচেয়ে কাছাকাছি। তারপর king − man + woman বের করে সেটি queen-এর সাথে কতটা মিল — measure করুন।
Interview Questions
- Dot product-এর geometric অর্থ কী?
- Cosine similarity vs Euclidean distance — কখন কোনটা?
- L1 ও L2 regularization-এর পার্থক্য কী?
- Attention mechanism-এ dot product কেন?
Mini Project
"Mini Semantic Search" — ১০টি Bengali বাক্যের জন্য random embedding তৈরি করুন (১২৮-মাত্রা)। User input বাক্যের embedding-ও বানান (এখানে random)। Cosine similarity দিয়ে top-3 মিল খুঁজে বের করুন। (পরবর্তীতে real embedding model দিয়ে এটাকে production-ready করা যাবে।)
Summary · সারসংক্ষেপ
- Vector-এর ৫টি core operation: add, sub, scalar mul, norm, dot product।
- Dot product = AI-এর সবচেয়ে frequent operation (neuron, attention, similarity)।
- Cosine similarity = direction-only comparison, magnitude-নিরপেক্ষ।
- L1/L2/L∞ norm — regularization ও robustness-এর ভিত্তি।