Bu derste
Embedding Nedir? Metinleri Anlamına Göre Karşılaştırmak, Yapay Zeka Üzerine Eğitimler alanında sıkça karşılaşılan ve doğru uygulandığında fark yaratan konulardan biri. Bu ders konuyu 5 temel noktada ele alıyor, çalışan bir Python örneği üzerinden ilerliyor, sonunda da uygulamada nelere dikkat edilmesi gerektiğini özetliyor.
Seviye: Orta · Temel yapay zeka üzerine eğitimler bilgisine sahip olduğunuz varsayılır.
Konuya genel bakış
Embedding, bir metnin anlamını temsil eden sayı dizisidir. Anlamca birbirine yakın cümlelerin vektörleri de birbirine yakın olur; "kargo ne zaman gelir" ile "siparişim kaç günde ulaşır" farklı kelimeler kullansa da yakın vektörler üretir. Bu sayede anahtar kelime eşleşmesi aramadan, anlama dayalı arama, öneri ve kümeleme yapılabilir.
5 adımda Embedding Nedir? Metinleri Anlamına Göre Karşılaştırmak
1. Vektör temsili
Her metin sabit uzunlukta bir sayı dizisine dönüşür; boyutlar anlamın farklı yönlerini taşır.
2. Benzerlik ölçümü
Kosinüs benzerliği 1'e yaklaştıkça iki metin anlamca birbirine yaklaşır.
3. Kullanım alanları
Anlamsal arama, benzer ürün önerisi, yinelenen soru tespiti ve metin kümeleme.
4. Aynı model şartı
Karşılaştırılan tüm vektörler aynı embedding modeliyle üretilmelidir.
5. Saklama
Vektörler bir vektör veritabanında ya da benzerlik aramasını destekleyen bir tabloda tutulur.
Örnek kod
Teoriyi somutlaştırmak için kısa bir Python örneğine bakalım:
import math
def kosinus(a, b):
carpim = sum(x * y for x, y in zip(a, b))
return carpim / (math.sqrt(sum(x * x for x in a)) * math.sqrt(sum(y * y for y in b)))
# Gerçek uygulamada bu vektörleri bir embedding modeli üretir (yüzlerce boyut)
cumleler = {
"Kargo ne zaman gelir?": [0.82, 0.10, 0.05],
"Siparişim kaç günde ulaşır?": [0.78, 0.15, 0.07],
"Şifremi nasıl değiştiririm?": [0.05, 0.12, 0.91],
}
anahtar = "Kargo ne zaman gelir?"
for metin, vektor in cumleler.items():
print(f"{kosinus(cumleler[anahtar], vektor):.2f} {metin}")Örnek bilinçli olarak kısa tutuldu; gerçek projede hata yönetimi ve günlükleme gibi katmanlar eklenmelidir.
Dosyaları with open(...) bloğu ile açmak, hata olsa bile dosyanın kapanmasını garanti eder.
Neden önemli? Kazanımlar
Kısaca özetlemek gerekirse:
- Farklı kelimelerle sorulan aynı soru bulunur
- Arama sonuçları anlama göre sıralanır
- RAG gibi gelişmiş yapay zekâ sistemlerinin temelini oluşturur
Kontrol listesi
Dersi bitirmeden önce aşağıdaki maddeleri kendi projenizde denediğinizden emin olun:
- Vektör temsili
- Benzerlik ölçümü
- Kullanım alanları
- Aynı model şartı
- Saklama
Sonuç
Embedding Nedir? Metinleri Anlamına Göre Karşılaştırmak konusunda ele aldığımız 5 nokta, günlük çalışmada en sık ihtiyaç duyulan kısmı kapsıyor. Özellikle Vektör temsili ve Saklama başlıklarını uygulamaya geçirmek iyi bir başlangıç olur.
İlgili içerikler:
- RAG Nedir? Kendi Belgelerinizle Çalışan Yapay Zekâ Asistanı Mimarisi
- Büyük Dil Modelleri Nasıl Çalışır? Token, Bağlam Penceresi ve Sıcaklık
Bir sonraki adım için Akademi sayfasındaki diğer derslere geçebilirsiniz.
Yükleniyor…
Dersi bitirdin mi?
Tamamlandı olarak işaretle, yol ilerlemen güncellensin ve sıradaki derse geç.