Ölçü değişince birinci aday değişebilir

Bir arama denemesinde A kaydı birinci geliyor. Ekip benzerlik hesabını değiştirdiğinde B kaydı öne çıkıyor; metinler ve vektörler aynı kalmış. Bu sonuç mutlaka bir yazılım hatası değildir. İç çarpım, vektörlerin büyüklüğünden etkilenir. Kosinüs benzerliği ise iç çarpımı iki vektörün normlarıyla böler. Hangi özelliğin karşılaştırıldığı değiştiği için sıralama da değişebilir.Kaynak: scikit-learn — cosine_similarity

Bu yazıda gerçek bir metin modeli çalıştırmadan iki boyutlu sentetik vektörlerle farkı görünür hale getireceğiz. Amaç bir benzerlik ölçüsünü her durumda üstün ilan etmek değildir. Çıktı, mevcut sistemde hangi ölçünün kullanıldığını ve büyüklük bilgisinin korunmasının istenip istenmediğini tartışabileceğiniz küçük bir karşılaştırma tablosudur.

Model kartı veya indeks ayarı iç çarpım diyorsa bunu kendiliğinden kosinüs diye yorumlamayın. Vektörler önceden birim uzunluğa getirilmiş olabilir; o durumda iki hesap aynı değeri verir. Ancak bu özellik veri akışından doğrulanmalıdır. Ekranda “benzerlik” yazması, kullanılan fonksiyon ve normalleştirme adımlarını açıklamaz.

İki adayı aynı sorguyla karşılaştırın

Özgün küçük veri
KayıtVektörÖklid normu
Sorgu q(1, 0)1
A(2, 2)√8 ≈ 2,828427
B(1, 0)1

İç çarpım, aynı konumlardaki değerlerin çarpımlarının toplamıdır. q ile A için 1×2 + 0×2 = 2 bulunur. q ile B için sonuç 1’dir. Büyük iç çarpımı daha iyi sayan bu örnek kuralında A birinci gelir. Bu kararda A’nın uzunluğu da rol oynar; yalnız yön karşılaştırması yapılmış olmaz.

Kosinüs hesabında A’nın iç çarpımı √8 ile bölünür: 2/√8 yaklaşık 0,707107 olur. B için 1/1=1 bulunur. B sorguyla aynı yöndedir ve kosinüs sıralamasında birincidir. Her iki sonuç da kendi tanımı altında doğrudur. Sorun, birinin sonucunu diğerinin anlamıyla anlatmak veya eşikleri iki ölçü arasında aynen taşımaktır.

İlk karşılaştırma
Adayİç çarpımKosinüsSıra farkı
A2≈ 0,707107İç çarpımda 1, kosinüste 2
B11İç çarpımda 2, kosinüste 1

Bu sayılardan A’nın metninin yüzde 70,7 doğru olduğu çıkarılamaz. Buradaki kosinüs bir geometrik benzerlik değeridir; cevap doğruluğunun kalibre edilmiş olasılığı değildir. Metinlerin gerçekten soruya yanıt verip vermediğini ayrıca değerlendirmek gerekir. Sentetik vektörlerde ise metin anlamına dair hiçbir gözlem bulunmuyor.

A’nın yönünü değiştirmeden büyüklüğünü azaltın

A’yı pozitif 0,1 katsayısıyla çarpıp A′=(0,2;0,2) elde edin. Noktalı virgül, ondalık virgülle bileşen ayrımını karıştırmamak içindir. Yeni norm √0,08, yaklaşık 0,282843 olur. İç çarpım 0,2’ye iner; kosinüs 0,2/√0,08 ile yine yaklaşık 0,707107 çıkar. Böylece aynı yön için iç çarpım sırası değişirken kosinüs sırası korunur.

Elle hazırlanmış deney sonucu
Başlangıç: iç çarpım A > B; kosinüs B > A.
A pozitif 0,1 ile ölçeklenince: iç çarpım B > A′; kosinüs B > A′.
A ile A′ aynı yönde olduğundan kosinüsleri eşittir. Sıralamanın ilk ölçüde değişmesi hesap hatası değildir.

Pozitif katsayı koşulu önemlidir. Vektörü negatif bir sayıyla çarpmak yönü tersine çevirir; kosinüsün işareti değişebilir. Sıfırla çarpmak ise sıfır vektörü üretir ve yön tanımı kaybolur. “Kosinüs ölçekten etkilenmez” cümlesini bu koşulları atlayarak kullanmak, yeni sınır hataları oluşturur.

Bu işlem, veri tablosundaki farklı özellik sütunlarını ayrı katsayılarla ölçeklemekle aynı değildir. Bütün vektörü tek pozitif katsayıyla çarpmak yönü korur. Bir bileşeni değiştirip diğerini sabit bırakmak genellikle yönü değiştirir. Örneğin A=(2,2) yerine (2,20) kullanırsanız sorguyla açı da değişir.

Formül ve sıralamayı birlikte isteyin

Kopyalanabilir karşılaştırma istemi
q=(1,0), A=(2,2), B=(1,0) sentetik vektörleri veriliyor. İç çarpım ve kosinüs benzerliğini ayrı hesapla; normları göster. İki sıralamanın neden farklı olduğunu açıkla. A vektörünü pozitif 0.1 ile çarparak deneyi tekrarla. Önceden normalleştirilmiş olduklarını varsayma. Sıfır vektörü için kendi hesap sözleşmende açık bir ret durumu tanımla. Benzerlik değerini yanıt doğruluğu yüzdesi olarak yorumlama.

Yanıtta yalnız A ve B sırası bulunuyorsa denetim eksiktir. Normlar, ham iç çarpımlar ve bölme sonuçları gösterildiğinde yanlış payda veya yanlış vektör kullanımı yakalanabilir. Sonuçları altı ondalıkla gösterebilirsiniz; fakat yakın skorların sırasını belirlerken yalnız ekrandaki yuvarlanmış sayılara dayanmayın. Bu örnekte fark belirgindir; başka veride eşitlik politikası gerekir.

Kontrol listesinin bir başka maddesi, sorgu vektörünün her adayda aynı kalmasıdır. Adaylardan birini başka sorguyla karşılaştırmak ölçü farkını veri farkıyla karıştırır. Tek bir değişkeni değiştirerek yaptığınız deney, sıralama farkının nedenini daha açık biçimde gösterir.

Sıfır vektörü için sonucu uydurmayın

Z=(0,0) için norm sıfırdır. Matematiksel kosinüs formülünde payda sıfır olduğundan yön benzerliği tanımlı değildir. Bu eğitim sözleşmesinde Z için sayısal skor üretmek yerine zero_vector durumu döndürülür. Bir yazılım kütüphanesi sıfır vektörüne belirli bir sayısal davranış atayabilir; bu, uygulamanın seçtiği politikadır ve matematiksel yön bilgisiyle karıştırılmamalıdır.

Üretim akışında sıfır vektörü boş metinden, bir dönüştürme hatasından veya özel bir temsil kararından kaynaklanabilir. Neden, yalnız vektöre bakılarak kesinleştirilemez. Kaydın kimliğini koruyup veri hazırlama adımına dönmek daha izlenebilir bir karardır. Reddedilen vektörü görünmez biçimde listeden çıkarmak, kaç adayın değerlendirildiğini de belirsizleştirir.

Büyüklüğü artan aynı yön

Yeni aday C=(3,0) olsun. q ile iç çarpımını ve kosinüsünü hesaplayın. Sonra C’yi B ile karşılaştırın. Kosinüs eşitliği, iki adayın aynı kayıt olduğu anlamına gelir mi? Son olarak A’nın yalnız ikinci bileşenini on kat artırmanın neden önceki pozitif ölçek deneyinden farklı olduğunu açıklayın.

Alıştırmanın açıklamalı yanıtı
C için norm 3, iç çarpım 3, kosinüs 1. İç çarpım C’yi B’nin önüne koyar; kosinüs ikisini eşit sayar. Bu eşitlik kayıt kimliğini veya içerik eşitliğini kanıtlamaz. (2,20) vektörünün kosinüsü 2/√404 ≈ 0,099504 olur; yalnız bir bileşen değiştiği için yön korunmaz.

Kendi arama denemenizde aday kimliği, kullanılan ölçü, normalleştirme durumu ve eşitlik kuralını aynı kayıtta tutun. Böylece “birinci sonuç değişti” gözlemini hangi veri ve hesap değişikliğinin açıkladığını bulabilir, ardından gerçek sorularda yanıt kalitesini ayrıca sınayabilirsiniz.

Kaynaklar ve doğrulama

İlgili okumalar

Üretimde Yapay Zekâ

Üretimde Yapay Zekâ programı, benzerlik hesabını gerçek görevde beklediğiniz sonuçla birlikte değerlendirmenize yardımcı olacak uygulamalar içerir.

  • Kuruma özel planlanır