Embeddings
Gömülü gösterimlerin (embeddings) insan verileri ile makine mantığı arasındaki köprüyü nasıl kurduğunu keşfet. Ultralytics YOLO26 kullanarak yapay zeka görevleri için vektör temsilleri oluşturmayı öğren ve Ultralytics Platform'u keşfet.
Embeddings, insan verileri ile makine mantığı arasında temel bir çevirmen görevi gören yoğun, düşük boyutlu, sürekli vektör gösterimleridir. Artificial Intelligence (AI) alanında bilgisayarlar metin, görsel veya ses gibi karmaşık ve unstructured data türlerini sezgisel olarak anlayamaz. Embeddings, bu girdileri yüksek boyutlu matematiksel bir uzayda yer alan ve vektör olarak bilinen gerçek sayı listelerine dönüştürerek bu sorunu çözer. Bir nesneye sadece rastgele bir kimlik atayabilen geleneksel kodlamaların aksine, embeddings eğitim yoluyla öğrenilir; bu da "kral" ve "kraliçe" kelimeleri veya iki farklı kedinin görselleri gibi anlamsal olarak benzer öğelerin vector space içinde birbirine yakın konumlandırılmasını sağlar.
Embedding'ler Nasıl Çalışır?#
Bir embedding oluşturulması, ham verilerin feature extraction için tasarlanmış bir neural network içine beslenmesini içerir. Eğitim sırasında model, girdinin temel özelliklerini kompakt bir sayısal biçimde sıkıştırmayı öğrenir. Örneğin, bir fotoğrafı analiz eden bir Computer Vision (CV) modeli yalnızca pikselleri görmekle kalmaz; şekilleri, dokuları ve renkleri çok boyutlu bir grafikte belirli bir koordinata eşler. Benzerlik ölçülürken sistemler, cosine similarity veya Euclidean distance gibi metrikleri kullanarak bu koordinatlar arasındaki mesafeyi hesaplar. Bu matematiksel yakınlık, algoritmaların sınıflandırma ve kümeleme gibi karmaşık görevleri yüksek verimlilikle gerçekleştirmesini sağlar.
Gerçek Dünya Uygulamaları#
Embedding'ler, modern yazılım ürünlerinde kullanılan birçok akıllı özelliğin motoru görevi görür.
- Semantic Search: Geleneksel arama motorları genellikle tam keyword matching işlemine güvenir; bu da bir kullanıcı "oto" araması yaptığında ancak belge "araba" içerdiğinde başarısız olur. Embeddings, kelimelerin arkasındaki anlamı yakalar. Arama sorgusunu ve veritabanı belgelerini vektör olarak temsil eden sistem, belirli kelimeler farklı olsa bile kullanıcının niyetine uyan sonuçları getirebilir.
- Recommendation Systems: Akış hizmetleri ve e-ticaret siteleri, kullanıcı deneyimlerini kişiselleştirmek için embeddings kullanır. Bir kullanıcı bilimkurgu filmi izlediğinde, sistem o filmin embedding vektörünü belirler ve veritabanında yakınlarda vektörleri bulunan diğer filmleri arar. Bu, yalnızca manuel etiketler veya kategoriler yerine içerik benzerliğine dayalı doğru öneriler yapılmasını sağlar.
- Zero-Shot Learning: Gelişmiş modeller, metin ve görseller gibi farklı modaliteleri birbirine bağlamak için ortak embeddings kullanır. Bu, bir sistemin görsel embedding'ini nesnenin adının metin embedding'i ile ilişkilendirerek eğitim sırasında açıkça hiç görmediği nesneleri tanısın.
Python ile Embedding Oluşturma#
YOLO26 gibi son teknoloji modeller, güçlü görsel embedding'lerini verimli bir şekilde oluşturmak için kullanılabilir. Aşağıdaki örnek, ultralytics Python paketini kullanarak bir görselden nasıl özellik vektörü çıkarılacağını göstermektedir.
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Generate embeddings for an image
# The embed() method returns the feature vector representing the image content
embedding_vector = model.embed("https://ultralytics.com/images/bus.jpg")
# Print the shape of the embedding (e.g., a vector of length 1280)
print(f"Embedding shape: {embedding_vector[0].shape}")Embedding'ler vs. İlgili Kavramlar#
Yapay zeka çözümlerini etkili bir şekilde uygulamak için, embedding'leri yakından ilişkili teknik terimlerden ayırt etmek faydalıdır.
- Embeddings ve Vector Search: Embedding, verinin kendisinin temsilidir (sayı listesi). Vektör arama, bu embedding'e en yakın komşuları bulmak için bir veritabanını sorgulama sürecidir. Bu embeddings verilerini büyük ölçekte depolamak ve aramak için genellikle vector database olarak bilinen özel araçlar kullanılır.
- Embeddings ve Tokenization: Natural Language Processing (NLP) alanında tokenization, metni daha küçük parçalara (token'lara) ayırmanın ön hazırlık adımını oluşturur. Bu token'lar daha sonra embeddings ile eşleştirilir. Bu nedenle tokenization veriyi hazırlar, embeddings ise verinin anlamını temsil eder.
- Embeddings ve Deep Learning: Derin öğrenme, sinir ağlarına dayanan daha geniş makine öğrenimi alanıdır. Embeddings, ham girdiler ile modelin karar verme katmanları arasında köprü görevi gören, derin öğrenme mimarisindeki belirli bir çıktı veya katmandır.
Özel embeddings oluşturmaya yönelik açıklama ekleme ve model eğitimi de dahil olmak üzere veri setlerinin yaşam döngüsünü yönetmek isteyen geliştiriciler Ultralytics Platform kullanabilir. Bu kapsamlı araç, veri yönetimi iş akışını dağıtıma kadar basitleştirerek uygulamalarınıza güç veren embeddings öğelerinin yüksek kaliteli ve iyi derlenmiş verilerden türetilmesini sağlar. İster PyTorch ister TensorFlow gibi çerçeveler kullanılsın, embeddings konusunda uzmanlaşmak, gelişmiş pattern recognition sistemleri oluşturmada çok önemlidir.






