1. 学ぶ
  2. /
  3. コース
  4. /
  5. Kerasで学ぶMachine Translation

Connected

演習

データの前処理

ここでは、2 つの入力と 1 つの出力を持つ新しいモデル用にデータを処理します。2 つの入力は、one-hot エンコードした英語の単語列と、末尾の単語を除いた one-hot エンコードのフランス語の単語列です。

出力は、先頭の単語を除いた one-hot エンコードのフランス語の単語列になります。つまり、デコーダでは各フランス語の入力語に対して、その「次の単語」が出力になります。ここではその実装方法を学びます。

sents2seqs() 関数、en_text、fr_text が用意されています。

指示

100 XP
  • sents2seqs() 関数を使って、エンコーダ入力のバッチ(i から i+bsize。one-hot エンコードかつ逆順)を取得します。
  • sents2seqs() 関数を使って、デコーダ入力と出力のバッチ(i から i+bsize。one-hot エンコード)を取得します。
  • 時間次元でスライスして、de_xy からデコーダ入力(フランス語の最後の単語以外すべて)を分離します。
  • de_xy からデコーダ出力(フランス語の最初の単語以外すべて)を分離します。