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

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

У відео ви бачили, як готувати вхідні та вихідні тексти. У цій вправі ви попрактикуєте поширений підхід: використовувати максимальну довжину речень, щоб доповнити (pad) усі інші — так жодна інформація не губиться.

Оскільки моделям RNN потрібні вхідні дані однакового розміру, це спосіб доповнити всі речення: просто додати нулі до коротших, не обрізаючи довші.

Крім того, ви використовуватимете слова замість символів для подання токенів — це типовий підхід для моделей NMT.

Португальські тексти збережено у змінній pt_sentences, а налаштований tokenizer — у змінній input_tokenizer.

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

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

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

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

  • Застосуйте метод .split() до кожного речення, щоб розбити його за пробілами й отримати кількість слів у реченні.
  • Використайте метод .texts_to_sequences(), щоб перетворити текст на послідовність індексів.
  • Використайте отриману максимальну довжину речень для їх доповнення (padding).
  • Виведіть перше перетворене речення.

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

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

# Get maximum length of the sentences
pt_length = max([len(sentence.____) for sentence in pt_sentences])

# Transform text to sequence of numerical indexes
X = input_tokenizer.____(pt_sentences)

# Pad the sequences
X = pad_sequences(X, maxlen=____, padding='post')

# Print first sentence
print(pt_sentences[0])

# Print transformed sentence
print(____)
Редагувати та запускати код