Пример нейронного машинного перевода
Это упражнение позволит закрепить знакомство с нейронным машинным переводом (NMT), которое состоялось в начале курса. Вы продолжите переводить небольшие фразы с португальского на английский.
Несколько примеров предложений доступны в переменной sentences и выводятся в консоль.
Также доступна предварительно обученная модель в переменной model. Для упрощения некоторых шагов вы будете использовать две пользовательские функции:
encode_sequences(): преобразует тексты в последовательности числовых индексов и дополняет их до нужной длины.translate_many(): использует предварительно обученную модель для перевода списка предложений с португальского на английский. Позже вы напишете эту функцию самостоятельно.
Чтобы узнать подробности о функциях, воспользуйтесь help(). Пакет pandas загружен как pd.
Это упражнение является частью курса
Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras
Инструкции к упражнению
- Используйте функцию
encode_sequences(), чтобы предобработать тексты, и сохраните результаты в переменнуюX. - Переведите предложения из
sentencesс помощью функцииtranslate_many(), передавXв качестве параметра. - Создайте
pd.DataFrame()с исходным и переведённым списками в виде столбцов. - Выведите полученный датафрейм.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Transform text into sequence of indexes and pad
X = ____(sentences)
# Print the sequences of indexes
print(X)
# Translate the sentences
translated = translate_many(model, ____)
# Create pandas DataFrame with original and translated
df = pd.DataFrame({'Original': ____, 'Translated': ____})
# Print the DataFrame
print(____)