Keras ön işleme
Keras’ın en önemli ikinci modülü keras.preprocessing’dir. Ham veriyi doğru giriş şekline hazırlamak için en önemli modül ve fonksiyonları nasıl kullanacağını göreceksin. Keras, daha önce öğrendiğin sözlük yaklaşımının yerini alabilecek işlevler sağlar.
keras.preprocessing.text.Tokenizer modülünü kullanarak .fit_on_texts() yöntemi ile kelimelerden bir sözlük oluşturacak ve .texts_to_sequences() yöntemi ile metinleri, sözlükteki her kelimenin indeksini temsil eden sayısal kimliklere dönüştüreceksin.
Ardından, keras.preprocessing.sequence içindeki .pad_sequences() fonksiyonunu kullanarak tüm dizilerin aynı boyutta olmasını sağlayacaksın (model için gerekli). Bunu, kısa metinlere sıfır ekleyip uzun metinleri keserek yapacağız.
Bu egzersiz
Keras ile Dil Modellemesi için Yinelenen Sinir Ağları (RNN)
kursunun bir parçasıdırEgzersiz talimatları
- İlgili modüllerden
Tokenizervepad_sequencesöğelerini içe aktar. textsiçinde saklanan örnek verileretokenizernesnesini fit et.- Metinleri
.texts_to_sequences()yöntemiyle sayısal indeks dizilerine dönüştür. - Metinlerin boyutunu padding uygulayarak sabitle.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Import relevant classes/functions
from tensorflow.keras.preprocessing.text import ____
from tensorflow.keras.preprocessing.sequence import ____
# Build the dictionary of indexes
tokenizer = Tokenizer()
tokenizer.fit_on_texts(____)
# Change texts into sequence of indexes
texts_numeric = tokenizer.____(texts)
print("Number of words in the sample texts: ({0}, {1})".format(len(texts_numeric[0]), len(texts_numeric[1])))
# Pad the sequences
texts_pad = ____(texts_numeric, 60)
print("Now the texts have fixed length: 60. Let's see the first one: \n{0}".format(texts_pad[0]))