CH 5Phase 1 · Linear Algebra for AI

Vector Operations

Dot, Cross, Magnitude

১৫–২৫ মিনিট বাংলা · Math · Python
📖 একটি ছোট গল্প

Google-এ "king − man + woman" search করলে কেন "queen" আসে? কারণ word2vec প্রতিটি শব্দকে একটি vector বানিয়েছে, এবং সেই vector-গুলোর মধ্যে যোগ-বিয়োগ অর্থপূর্ণ। এটাই vector operation-এর জাদু।

Attention mechanism, similarity search, recommendation system — সব এই অধ্যায়ের ৪-৫টি operation-এর উপর দাঁড়ানো।

Vector Addition & Subtraction

Component-wise কাজ:

[1, 2, 3] + [4, 5, 6] = [5, 7, 9]
[4, 5, 6] − [1, 2, 3] = [3, 3, 3]
💡 ইনসাইট
Subtraction a − b = b থেকে a-তে যাওয়ার "direction"। Embedding space-এ এটাই "king − man" = "royalty direction"।

Scalar Multiplication

3 · [1, 2, 3] = [3, 6, 9]

Vector-এর দিক একই, দৈর্ঘ্য পরিবর্তিত। Gradient descent-এ θ − lr · grad ঠিক এই operation।

Magnitude (Norm)

Vector-এর "দৈর্ঘ্য" — Pythagoras-এর n-D সাধারণীকরণ।

‖v‖₂ = √(v₁² + v₂² + … + vn²)
  • L2 norm: উপরেরটা — most common
  • L1 norm: Σ|vi| — sparsity-র জন্য (Lasso)
  • L∞ norm: max|vi| — adversarial robustness
✨ টিপ
L2 norm Regularization (weight decay)-এর ভিত্তি — L = loss + λ‖w‖²

Dot Product — AI-এর সবচেয়ে গুরুত্বপূর্ণ operation

a · b = a₁b₁ + a₂b₂ + … + anbn

Geometric meaning:

a · b = ‖a‖ · ‖b‖ · cos(θ)
  • a · b > 0 → একই দিক
  • a · b = 0 → perpendicular (orthogonal)
  • a · b < 0 → বিপরীত দিক
💡 কেন এত গুরুত্বপূর্ণ?
একটি neuron-এর পুরো হিসাব = dot product + bias + activation। Transformer attention-এর core = query ও key vector-এর dot product।

Cosine Similarity

cos(θ) = (a · b) / (‖a‖ · ‖b‖)

−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।

a × b = ‖a‖‖b‖sin(θ) n̂

AI-তে কম, কিন্তু computer graphics, 3D vision, robotics-এ অপরিহার্য।

Python (NumPy) Implementation

pythonPython · NumPy
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

  1. a = [2, 0], b = [0, 3] — dot product ও cosine similarity বের করুন।
  2. একটি 100-মাত্রার random vector বানিয়ে L1, L2, L∞ norm print করুন।
  3. ৩টি 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

  1. Dot product-এর geometric অর্থ কী?
  2. Cosine similarity vs Euclidean distance — কখন কোনটা?
  3. L1 ও L2 regularization-এর পার্থক্য কী?
  4. 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-এর ভিত্তি।
✨ পরবর্তী পদক্ষেপ
Chapter 6-এ আমরা Matrix ও তার operation দেখব — যেখানে hundreds of vector একসাথে handle হয়।