Embedding (Gömme / Vektörleştirme)

Embedding, metin, görsel veya diğer verilerin anlamsal yakınlığı koruyan çok boyutlu sayısal vektörlere dönüştürülmesi işlemidir.

Embedding (Türkçede gömme ya da vektörleştirme), kelimelerin, cümlelerin, görsellerin veya herhangi bir veri tipinin, yapay zekânın işleyebileceği sayısal dizilere — yani vektörlere — dönüştürülmesi işlemidir. Bu dönüşüm rastgele sayılarla gerçekleştirilmez; verinin anlamsal (semantik) değerini koruyacak şekilde, çok boyutlu matematiksel bir uzayda koordinatlara yerleştirilmesiyle yapılır. Benzer anlam taşıyan içerikler bu uzayda birbirine yakın, alakasız içerikler ise uzak konumlanır. "Kedi" ile "köpek" vektörleri yan yana dururken "kedi" ile "traktör" arasındaki mesafe çok daha büyüktür. Embedding'in önemi, bilgisayarların metni doğrudan anlayamamasından gelir: makineler yalnızca sayılarla çalışır. Anlamı sayılara çevirmenin güvenilir bir yolu olmadan ne semantik arama ne öneri sistemleri ne de büyük dil modelleri çalışabilirdi. ChatGPT gibi modeller girdiyi önce token'lara ayırır, ardından her token'ı bir embedding vektörüne çevirir; modelin "anlama" dediğimiz tüm işlemleri bu vektörler üzerinde yürür. Tarihsel gelişim açısından Word2Vec (Google, 2013), ilk pratik ve geniş çaplı benimsenen kelime gömme yöntemini sundu. CBOW ve Skip-gram mimarileriyle her kelimeye bağlamından bağımsız sabit bir vektör atayan bu yaklaşımın sınırlılığını BERT aştı: BERT her kelimeyi cümle bağlamına göre farklı vektörle temsil eder, böylece çok anlamlı kelimelerdeki anlam belirsizliği çözüme kavuşur. Günümüzde OpenAI'nin text-embedding-3 serisi, Cohere'in embed modelleri ve açık kaynaklı E5, BGE gibi çok dilli modeller bu alanın standartlarını belirlemektedir. Pratikte embedding'ler üç temel kullanım senaryosunda öne çıkar. Semantik arama ve RAG (Retrieval-Augmented Generation) sistemlerinde kullanıcının sorusu ile belgeler aynı vektör uzayına yerleştirilir, kosinüs benzerliğiyle en alakalı içerik bulunur. Öneri sistemlerinde Spotify veya Netflix, kullanıcı ve içerik vektörlerini karşılaştırarak kişiselleştirilmiş öneriler oluşturur. CLIP gibi çok modlu modeller ise metin ve görseli aynı uzayda temsil ederek metinle görsel arama yapılmasına imkân tanır. Üretilen vektörler genellikle Pinecone, Weaviate, Qdrant veya PostgreSQL'in pgvector eklentisi gibi vektör veritabanlarında saklanır; HNSW gibi yaklaşık en yakın komşu algoritmaları milyonlarca kayıt arasından milisaniyeler içinde sonuç döndürür. Embedding kalitesi downstream görevleri doğrudan etkiler ve model seçiminde MTEB (Massive Text Embedding Benchmark) gibi standart karşılaştırma çerçeveleri rehber niteliğindedir.

Embedding Neden Kritiktir?

Bilgisayarlar harfleri veya kelimeleri anlamazlar, sadece sayıları anlarlar. Embedding'den önce metin, sözlükteki her kelimeye tek bir '1' düşen dev ve anlamsız sıfır dizileriyle (one-hot encoding) temsil ediliyordu; bu gösterimde 'kedi' ile 'köpek' arasında hiçbir yakınlık kurulamıyordu. Embedding bu sorunu çözer: anlam, uzaydaki matematiksel mesafeye dönüşür. 'Kral', 'Kraliçe', 'Erkek', 'Kadın' kelimelerini vektör uzayına yerleştirirseniz şu ilişki ortaya çıkar: vec(Kral) - vec(Erkek) + vec(Kadın) ≈ vec(Kraliçe). Büyük dil modellerinin ilk katmanı bir embedding katmanıdır ve modelin dil hakkında bildiği her şey bu vektör temsilleri üzerine kurulur.

Kullanım Alanları

  • check_circle Semantik Arama ve RAG: Anahtar kelime eşleşmesi yerine anlam eşleşmesiyle arama yapılır. Kullanıcının sorusu ve belgeler aynı uzaya gömülür, en yakın vektörler getirilir. RAG sistemlerinin temel bileşenidir.
  • check_circle Tavsiye Sistemleri: Spotify'ın beğendiğiniz bir şarkıya en yakın vektörleri önerebilmesi embedding'e dayanır. Netflix ve e-ticaret siteleri de kullanıcı ve içerik vektörlerini eşleştirerek kişiselleştirme yapar.
  • check_circle Çok Modlu Eşleşme: CLIP ve DALL-E gibi sistemlerde metin ve görsel embedding'i aynı uzayda eşleştirilir; 'sahilde gün batımı' metniyle fotoğraf arşivinde arama yapılabilir.
  • check_circle Sınıflandırma ve Kümeleme: Metinler vektöre çevrildikten sonra spam tespiti, duygu analizi, konu sınıflandırma ve benzer belgeleri gruplama gibi görevler basit matematiksel işlemlere indirgenir.

Embedding Modelleri ve Türleri

  • check_circle Word2Vec ve GloVe: Statik Kelime Gömüleri: Word2Vec (Google, 2013): CBOW ve Skip-gram mimarileriyle her kelimeye sabit bir vektör atar. GloVe global eş-görülme istatistiklerini kullanan alternatif yöntemdir. Ortak zayıflık: çok anlamlı kelimeler bağlamdan bağımsız hep aynı vektörü alır.
  • check_circle BERT ve Bağlamsal Embedding'ler: BERT her kelimeyi cümle bağlamına göre farklı vektörle temsil eder. Sentence-BERT (SBERT) cümle düzeyinde semantik embedding üretir. E5, BGE ve paraphrase-multilingual-mpnet gibi modeller çok dilli desteğe sahiptir.
  • check_circle OpenAI text-embedding Modelleri: text-embedding-3-small (1536 boyut) ve text-embedding-3-large (3072 boyut) RAG, anlamsal arama ve belge sınıflandırma için API üzerinden kullanılır. Türkçe dahil çok dilli metinleri başarıyla temsil eder.
  • check_circle Multimodal Embedding: CLIP: OpenAI'nin CLIP modeli metin ve görüntüyü aynı vektör uzayında temsil eder. Zero-shot görüntü sınıflandırma ve metin-görüntü araması için temel altyapı olarak kullanılır.

Vektör Uzayında Anlam: Embedding Aritmetiği

İyi bir embedding modelinin en çarpıcı özelliği, anlamsal ilişkilerin vektör matematikle ifade edilebilmesidir. Word2Vec'in ünlü örneği: vec('King') - vec('Man') + vec('Woman') ≈ vec('Queen'). Benzer şekilde 'Paris - Fransa + Almanya ≈ Berlin' ilişkisi başkent kavramının vektör uzayında kodlandığını gösterir. Semantik arama bu özelliği kullanır: sorgu vektörü ile belge vektörleri arasındaki kosinüs benzerliği hesaplanarak en alakalı belgeler bulunur. Milyonlarca vektör arasında bu karşılaştırmayı hızlandırmak için HNSW gibi yaklaşık en yakın komşu (ANN) algoritmaları ve vektör veritabanları kullanılır. Model seçiminde MTEB gibi standart karşılaştırma çerçevelerine bakmak önerilir.

Öne Çıkan Embedding Modelleri

text-embedding-3-large (OpenAI)

3072 boyut; MTEB kıyaslamasında lider İngilizce ve çok dilli metin embeddingleri — RAG ve semantik arama için en güçlü kapalı kaynak seçenek.

E5-Mistral-7B-Instruct

Microsoft'un instruction-tuned 7B modeli; MTEB'de text-embedding-3-large ile rekabetçi — açık ağırlıklı ve yerel çalışır.

BGE-M3 (BAAI)

Monolingual, bilingual ve çok dilli embeddingleri tek modelde birleştirir; 100+ dilde güçlü gösterim, Türkçe için önerilen açık kaynak seçenek.

Nomic Embed

8192 token bağlam penceresi; uzun belge embeddinglerinde kısa-bağlamlı modellere göre belirgin avantaj, Apache 2.0 lisansı.

Sıkça Sorulan Sorular (FAQ)

  • check_circle Embedding nedir? Embedding, kelimeler, cümleler, görüntüler veya diğer verilerin yüksek boyutlu sayısal vektörlere dönüştürülmesidir. Benzer anlamlı içerikler vektör uzayında birbirine yakın konumlanır. Doğal dil işleme, öneri sistemleri ve RAG'ın temel yapı taşıdır.
  • check_circle Embedding ne demek, Türkçesi nedir? Embedding İngilizce'de 'gömme, yerleştirme' anlamına gelir. Türkçe kaynaklarda 'gömme' veya 'vektörleştirme' olarak geçer. Veri, çok boyutlu bir matematiksel uzaya gömülerek o uzayda bir koordinata yerleştirilir.
  • check_circle Word2Vec ile BERT embedding'leri arasındaki fark nedir? Word2Vec her kelimeye bağlamdan bağımsız sabit bir vektör verir. BERT ise kelimeyi cümle bağlamıyla birlikte kodlar ve bağlama göre farklı vektörler üretir. Bağlamsal embedding'ler anlam belirsizliğini çözmede çok daha başarılıdır.
  • check_circle Embedding'ler nerede saklanır? Üretilen vektörler Pinecone, Weaviate, Qdrant, Milvus veya PostgreSQL'in pgvector eklentisi gibi vektör veritabanlarında saklanır. Bu sistemler HNSW gibi indeksleme algoritmalarıyla milyonlarca vektör arasından en yakın komşuları milisaniyeler içinde bulur.
  • check_circle Embedding boyutu nasıl seçilir? Büyük boyut daha fazla bilgi kodlar ama bellek ve hesaplama maliyetini artırır. Küçük ölçekli projeler için 384-768 boyutlu hafif modeller çoğu zaman yeterlidir. Seçimde model kalitesi (MTEB skoru), boyut, maliyet ve Türkçe desteği birlikte değerlendirilmelidir.