Cosine Similarity (Kosinüs Benzerliği)

Kosinüs benzerliği (Cosine Similarity), iki vektör arasındaki açının kosinüsünü ölçen ve vektörlerin yönleri arasındaki benzerliği sayısal olarak ifade eden bir metriktir.

Kosinüs benzerliği (Cosine Similarity), iki vektör arasındaki açının kosinüsünü ölçen ve vektörlerin yönleri arasındaki benzerliği sayısal olarak ifade eden bir metriktir. Değeri [-1, 1] aralığında değişir: 1 tam benzer (aynı yön), 0 ortogonal (ilgisiz) ve -1 zıt anlamlıdır. Formülü: cos(θ) = (A·B)/(‖A‖×‖B‖). Metin ve embedding alanlarında kosinüs benzerliği çok boyutlu vektörler arasındaki anlamsal yakınlığı ölçmek için tercih edilir. Vektörlerin büyüklüğünden bağımsız olarak yönü dikkate alması, belge uzunluğuna duyarsız bir ölçüm sağlar; bu nedenle tf-idf ve embedding vektörlerinde öklid mesafesine göre daha güvenilir sonuçlar verir. Vektör veritabanlarında (Pinecone, Weaviate, Qdrant, ChromaDB) ve semantik arama motorlarında sorgular embedding'e dönüştürülür ve veritabanındaki vektörlerle kosinüs benzerliği hesaplanarak en yakın komşular (k-NN) döndürülür. RAG sistemlerinde sorgu embedding'i ile belge parçası embedding'leri arasındaki kosinüs benzerliği, bağlam seçiminin temel ölçütüdür. Modern vektör veritabanları bu hesaplamayı HNSW veya IVF gibi yaklaşık en yakın komşu (ANN) algoritmaları ile milyonlarca vektör için milisaniyeler içinde gerçekleştirir.

Kosinüs Benzerliği — Temel Kavramlar

functions Formül

cos(θ) = (A·B) / (|A| × |B|) — İç çarpımı vektör büyüklüklerinin çarpımına böler; yönler arasındaki açının kosinüsünü verir.

navigation Yön Odaklı

Büyüklükten bağımsız sadece yönü ölçer. 100 kelimelik ve 1000 kelimelik aynı konuyu anlatan belgeler benzer kosinüs puanı alır.

compare Öklid Mesafesi ile Farkı

Öklid, noktaların konumunu; kosinüs, vektörlerin yönünü karşılaştırır. Metin semantiği için kosinüs genellikle daha anlamlı sonuçlar verir.

linear_scale [-1, 1] Skalası

Normalize edilmiş embedding'ler için 1: özdeş yön, 0: ilgisiz, -1: zıt anlam. Birçok RAG sisteminde 0.7+ eşiği yüksek benzerlik olarak değerlendirilir.

search Kosinüs Benzerliğinin RAG'daki Rolü

RAG akışında: 1) Kullanıcı sorgusu bir embedding modeli ile vektöre dönüştürülür. 2) Vektör veritabanında bu sorgu vektörüne en yüksek kosinüs benzerliğine sahip k belge parçası (chunk) bulunur. 3) Bu parçalar bağlam olarak LLM'e iletilir. 4) Model bağlamı kullanarak yanıt üretir. Benzerlik eşiği, bağlama alınacak parça sayısını ve kalitesini doğrudan etkiler.

quiz Sık Sorulan Sorular

  • check_circle Normalizasyon neden önemlidir?: Embedding vektörleri L2 normalize edilirse kosinüs benzerliği = nokta çarpımı (dot product). Bu HNSW ve FAISS gibi kütüphanelerde önemli hız kazancı sağlar.
  • check_circle Negatif kosinüs benzerliği ne anlama gelir?: Vektörler zıt yönlerdeyse teorik olarak negatif değer alabilir. Ancak çoğu embedding modeli pozitif alanda çalışır (ReLU etkisi) ve pratikte negatif değerler nadirdir.