WHAT ek embedding kya hai: ek function f:text→Rd jo kisi bhi piece of text ko ek fixed-length vector mein map karta hai (jaise d=384,768,1536). Ise is tarah train kiya jaata hai ki similar meaning wale texts ke vectors similar directions mein point karein.
HOW yeh seekha jaata hai: models (jaise sentence-transformers, OpenAI text-embedding-3) huge corpora par train kiye jaate hain taaki related sentences paas aayein aur unrelated ones door jayein (contrastive learning). Hum numbers hand-design nahi karte — model khud inhe discover karta hai.
Hum chahte hain ek number jo bataaye "vectors a aur b kitne similar hain?"
Cosine similarity ka derivation. Hum chahte hain ek aisi measure jo length ko ignore kare aur sirf direction pe dhyan de (dogs ke baare mein ek lamba document aur ek chhota document phir bhi match hone chahiye). Upar wali dot product identity se shuru karo aur cosθ ke liye solve karo:
Normal database kyun nahi? SQL ka WHERE exact values match karta hai. Yahan hume high-dimensional vectors par approximate geometric proximity chahiye, jiske liye specialized indexes zaroori hain.
Exact k-NN saare N vectors scan karta hai: cost O(N⋅d). N=109 ke liye yeh har query par bahut slow hai.
ANN kaise kaam karta hai — HNSW (popular wala): ek Hierarchical Navigable Small World graph banao. Nodes = vectors; edges nearby ones ko multiple layers mein connect karte hain (skip-list ki tarah). Query sparse top layer se shuru hoti hai, greedily closer neighbours ki taraf hop karta hai, phir refine karne ke liye layer by layer neeche aata hai. Yeh logarithmic-ish search deta hai.
Recall Feynman: 12-saal ke bachche ko explain karo
Socho har sentence ek giant star-map par ek dot hai. Same meaning wale sentences neighbouring stars ki tarah paas-paas rakhе jaate hain. Tera question answer karne ke liye, computer teri query ko bhi ek dot bana deta hai, phir bas uske aas-paas ke nearest stars dhundh ke padh leta hai. "Vector database" woh telescope hai jo bina poore sky ke har star check kiye nearby stars super fast dhundh leta hai.
Ek learned function jo text ko Rd mein fixed-length vector mein map karta hai jahan semantic similarity geometric closeness se correspond karti hai.
Raw dot product ki jagah cosine similarity kyun use karein?
Yeh vector magnitude ko divide out karta hai taaki sirf direction (meaning) matter kare; document ki length topical match ko affect nahi karni chahiye.
Cosine similarity ka formula
∥a∥∥b∥a⋅b=cosθ, range [−1,1].
Vector database kya karta hai?
Embeddings ko index karta hai aur diye gaye query vector ke liye fast (approximate) k-nearest-neighbour queries ka jawab deta hai.