Word2Vec: Skip-gram ve CBOW
Word2Vec teorisi, gensim uygulaması, vektör aritmetiği (king - man + woman = queen).
Word2Vec: Skip-gram ve CBOW, CoddyKit'te ücretsiz bir Learn AI with Python dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn AI with Python öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn AI with Python kursu toplamda 4 dersten oluşur.
Kelimelerden Vektörlere
Makine öğrenmesi sayılara ihtiyaç duyar, ancak kelimeler sembollerdir. Kelime gömmeleri, her kelimeyi yoğun bir vektöre eşler; böylece benzer kelimeler vektör uzayında birbirine yakın durur.
Dağılımsal Hipotez
Word2Vec, benzer bağlamlarda görülen kelimelerin benzer anlamlara sahip olduğu fikrine dayanır. Model, bağlamı tahmin etmeyi öğrenerek anlamı vektörlerde yakalar.
İki Mimari
Word2Vec'in iki eğitim şeması vardır:
- CBOW, hedef kelimeyi çevresindeki bağlamdan tahmin eder
- atlamalı gram, çevresindeki bağlamı hedef kelimeden tahmin eder
CBOW ve Atlamalı Gram
CBOW daha hızlıdır ve sık kullanılan kelimelerde iyi çalışır. Atlamalı gram daha yavaştır; ancak nadir kelimeleri ve küçük veri kümelerini daha iyi ele alır. Kalite açısından atlamalı gram genellikle varsayılan tercihtir.
gensim ile Eğitim
gensim kitaplığı Word2Vec kullanımını kolaylaştırır. Belirteçlerine ayrılmış sentences değerlerini (kelime listelerinden oluşan listeleri) aktarır ve gömme yapılandırmasını ayarlarsınız.
from gensim.models import Word2Vec
sentences = [["the", "cat", "sat"], ["the", "dog", "ran"]]
model = Word2Vec(sentences=sentences, vector_size=100, window=5, min_count=1)Temel Parametreler
Temel ayarlar şunlardır:
vector_sizegömme boyutu (ör. 100-300)windowher kelimenin çevresindeki bağlam genişliğimin_countbundan daha seyrek görülen kelimeleri yok sayar
from gensim.models import Word2Vec
model = Word2Vec(
sentences,
vector_size=200,
window=5,
min_count=5,
)sg=1 ile Atlamalı Gramı Seçme
sg parametresi mimariyi seçer: sg=0 CBOW kullanır (varsayılan), sg=1 ise atlamalı gram kullanır.
from gensim.models import Word2Vec
model = Word2Vec(sentences, vector_size=100, window=5, min_count=1, sg=1)
# sg=1 -> skip-gramKelime Vektörlerine Erişme
Eğitilmiş vektörler model.wv içinde bulunur. Bir kelimeyi anahtar olarak vererek o kelimenin vektörünü alın.
vec = model.wv["cat"]
print(vec.shape) # (vector_size,)
print("dog" in model.wv)Benzer Kelimeleri Bulma
wv.most_similar, vektörleri en yakın olan kelimeleri döndürür; bu, gömmenin ne öğrendiğini incelemenin hızlı bir yoludur.
print(model.wv.most_similar("cat", topn=5))
# returns list of (word, similarity) pairsKelime Aritmetiği
Ünlü özellik şudur: vektör matematiği ilişkileri yakalar. kral - erkek + kadın işlemi kraliçe'ye yakın bir noktaya ulaşır; bu da gömmenin benzetimleri kodladığını gösterir.
result = model.wv.most_similar(
positive=["king", "woman"],
negative=["man"],
topn=1,
)
print(result) # often [("queen", 0.7...)]Gömme Vektörlerini Sonraki Aşamalarda Kullanma
Bir cümleyi temsil etmek için kelime vektörlerinin ortalamasını alın, ardından bunu herhangi bir sınıflandırıcıya verin. Önceden eğitilmiş Word2Vec gömmeleri, verileriniz az olduğunda da güçlü bir başlangıç noktası sağlar.
import numpy as np
def sentence_vector(words, model):
vecs = [model.wv[w] for w in words if w in model.wv]
return np.mean(vecs, axis=0) if vecs else np.zeros(model.vector_size)Hızlı Kontrol
Word2Vec bilginizi sınayın.
Özet
Özet: Word2Vec, bağlamdan yoğun kelime vektörleri öğrenir. CBOW, bir kelimeyi bağlamdan tahmin eder (hızlıdır); atlamalı gram (sg=1) ise bağlamı bir kelimeden tahmin eder (nadir kelimelerde daha iyidir). gensim'de vector_size, window ve min_count değerlerini ayarlayın; ardından wv.most_similar işlevini ve kral - erkek + kadın gibi benzetimleri kullanın.
Sıkça Sorulan Sorular
“Word2Vec: Skip-gram ve CBOW” dersi ücretsiz mi?
Evet — “Word2Vec: Skip-gram ve CBOW” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn AI with Python kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn AI with Python kursu toplamda 4 dersten oluşur.
“Word2Vec: Skip-gram ve CBOW” dersinde ne öğreneceğim?
Word2Vec teorisi, gensim uygulaması, vektör aritmetiği (king - man + woman = queen). Learn AI with Python ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Learn AI with Python öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Learn AI with Python, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.
“Word2Vec: Skip-gram ve CBOW” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Learn AI with Python dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Learn AI with Python dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Word2Vec: Skip-gram ve CBOW
- GloVe ve FastText Gömme Vektörleri
- BERT ile Metin Sınıflandırma
- Anlamsal Benzerlik ve Cümle Gömme Vektörleri