Bölüm 2: Define avı
Şimdi define avında küçük bir sürpriz var. Dizüstü bilgisayarını yanında getirmeyi unutmuşsun ve sadece sınırlı belleğe sahip bir cihazın var. Yazacağın kod yorumlar hariç 4 satırdan az olmalı. Kodu olabildiğince kompakt yazman gerektiğinden list comprehension kullanacaksın.
List comprehension, veriler üzerinde tek satırda döngü kurmanın harika bir yoludur. Örneğin, bir sayı listesinden tüm çift sayıları almak istersen [n for n in range(100) if n%2==0] yazabilirsin. Gördüğün gibi, list comprehension for döngülerini ve if ifadelerini tek bir satırda birleştirmeni sağlar.
Bu egzersiz, kursun bir parçasıdır
Keras ile Machine Translation
Egzersiz talimatları
treasure_mapiçindeki onehot kodlanmış vektörler için kelime ID'lerini al.- Define haritasının batch boyutunu (en baştaki boyut) al ve bunu bir for döngüsü oluşturmak için kullan.
word_ids'in i'nci satırını yinelerken sıfıra eşit olan kelime ID'lerini yoksayarak i'nci cümlenin kelimelerini al.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Get the word IDs from the treasure map
word_ids = np.argmax(____, axis=-1)
# Get the batch size from the treasure map
for i in range(treasure_map.shape[____]):
# Get all the words of the i-th sentence using list comprehension
words = [index2word[____] for wid in word_ids[____] if wid != ____]
print("Instruction ", i+1, ": ", ' '.join(words))