NMT の例
この演習では、コース冒頭で少しだけ触れた NMT をさらに発展させます。引き続き、ポルトガル語の短いフレーズを英語に翻訳します。
いくつかのサンプル文は sentences 変数に用意されており、コンソールに表示されています。
また、事前学習済みモデルが model 変数として利用可能で、以下の2つのカスタム関数を使って一部の手順を簡略化します。
encode_sequences():テキストを数値インデックスの系列に変換し、パディングします。translate_many():事前学習済みモデルを使って、ポルトガル語の文リストを英語へ翻訳します。後ほどこの関数はご自身で実装します。
関数の詳細は help() をご利用ください。pandas パッケージは pd として読み込まれています。
この演習はコースの一部です
Kerasで学ぶ言語モデリングのためのRecurrent Neural Networks (RNNs)
演習の手順
encode_sequences()関数でテキストを前処理し、結果を変数Xに保存します。translate_many()関数にXを渡して、sentencesを翻訳します。- 元のリストと翻訳後のリストを列に持つ
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(____)