ПочатиПочніть безкоштовно

Підготовка вихідного тексту

У цій вправі ви підготуєте вихідні тексти для використання в моделі перекладу. Окрім перетворення тексту на послідовності індексів, потрібно також застосувати one-hot кодування до кожного індекса.

Англійські тексти завантажено у змінну en_sentences, навчений tokenizer — у змінну output_tokenizer, а розмір англійського словника — у en_vocab_size.

Крім того, уже створено функцію для перших кроків перетворення вихідної мови (перетворення текстів у послідовності індексів). Функцію завантажено в середовище як transform_text_to_sequences(); вона має два параметри: sentences, куди очікується список речень англійською, і tokenizer, куди очікується навчений об'єкт Tokenizer з модуля keras.preprocessing.text.

numpy завантажено як np.

Ця вправа є частиною курсу

Recurrent Neural Networks (RNNs) для моделювання мови з Keras

Переглянути курс

Інструкції до вправи

  • Передайте змінні en_sentences і output_tokenizer до функції transform_text_to_sequences(), щоб ініціалізувати змінну Y.
  • Використайте функцію to_categorical(), щоб застосувати one-hot кодування до речень. Використайте змінну en_vocab_size як кількість класів.
  • Перетворіть тимчасовий список на масив numpy і змініть форму так, щоб отримати (num_sentences, sentences_len, en_vocab_size).
  • Виведіть сирий текст і перетворений варіант.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Initialize the variable
Y = transform_text_to_sequences(____, ____)

# Temporary list
ylist = list()
for sequence in Y:
  	# One-hot encode sentence and append to list
    ylist.append(____(sequence, num_classes=____))

# Update the variable
Y = np.array(ylist).reshape(____, Y.shape[1], en_vocab_size)

# Print the raw sentence and its transformed version
print("Raw sentence: {0}\nTransformed: {1}".format(____, Y[0]))
Редагувати та запускати код