始める無料で始める

学習済みモデルと推論モデルのつながり

ここでは、学習済みモデルから推論モデルへ重みを転送します。エンコーダ・デコーダモデルにはパラメータを持つレイヤーが3つあります。

  • エンコーダの GRU レイヤー
  • デコーダの GRU レイヤー
  • デコーダの Dense レイヤー

TimeDistributed のような他のレイヤーにはパラメータがないため、重みのコピーは不要です。

この演習では、学習済みのエンコーダ GRU レイヤー(tr_en_gru)、学習済みのデコーダ GRUtr_de_gru)、学習済みの Dense レイヤー(tr_de_dense)が提供されています。さらに、推論モデル(エンコーダを含む)のすべてのレイヤー、すなわちエンコーダの GRU レイヤー(en_gru)、デコーダの GRUde_gru)、Dense レイヤー(de_dense)にもアクセスできます。

この演習はコースの一部です

Kerasで学ぶMachine Translation

コースを見る

演習の手順

  • 学習済みエンコーダ GRU レイヤーの重みを読み込みます。
  • 推論モデル側のエンコーダ GRU レイヤーに重みを設定します。
  • 学習済みのデコーダ GRU レイヤーの重みを読み込み、推論モデルに設定します。
  • 学習済みのデコーダ Dense レイヤーの重みを読み込み、推論モデルに設定します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Load the weights to the encoder GRU from the trained model
en_gru_w = ____.get_weights()
# Set the weights of the encoder GRU of the inference model
en_gru.____(____)
# Load and set the weights to the decoder GRU
de_gru.____(tr_de_gru.____)
# Load and set the weights to the decoder Dense
____.set_weights(____.____)
コードを編集して実行