Bölüm 1: Metin tersine çevirme modeli - Encoder
Basit bir metin tersine çevirme modeli kurmak, encoder-decoder modellerinin çalışma mantığını ve nasıl bağlandıklarını anlamak için harika bir yöntemdir. Şimdi bir metin tersine çevirme modelinin encoder kısmını uygulayacaksın.
Encoder uygulaması iki egzersize bölündü. Bu egzersizde words2onehot() yardımcı fonksiyonunu tanımlayacaksın. words2onehot() fonksiyonu bir kelime listesi ve bir word2index sözlüğü almalı ve kelime listesini one-hot vektörlerden oluşan bir diziye dönüştürmelidir. word2index sözlüğü çalışma alanında mevcut.
Bu egzersiz
Keras ile Machine Translation
kursunun bir parçasıdırEgzersiz talimatları
words2onehot()fonksiyonundaword2indexsözlüğünü kullanarak kelimeleri kimliklere (ID) dönüştür.- Kelime kimliklerini uzunluğu
3olan one-hot vektörlere dönüştür (bununum_classesargümanıyla yap) ve oluşan diziyi döndür. words2onehot()fonksiyonunuI,likevecatskelimeleriyle çağır ve sonucuonehotdeğişkenine ata.print()vezip()fonksiyonlarını kullanarak kelimeleri ve karşılık gelen one-hot vektörlerini yazdır.zip()fonksiyonu aynı anda birden fazla liste üzerinde yineleme yapmana olanak tanır.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
import numpy as np
def words2onehot(word_list, word2index):
# Convert words to word IDs
word_ids = [____[w] for w in ____]
# Convert word IDs to onehot vectors and return the onehot array
onehot = ____(____, num_classes=3)
return ____
words = ["I", "like", "cats"]
# Convert words to onehot vectors using words2onehot
onehot = ____(____, ____)
# Print the result as (, ) tuples
print([(w,ohe.tolist()) for ____,____ in zip(words, ____)])