始める無料で始める

はじめての RNN モデル

この演習では、Keras のモジュールを使って最初の RNN モデルを構築し、映画レビューの感情を分類します。

最初のモデルは、標準的な RNN セルである SimpleRNN を用いた再帰層が1つと、出力層は2値をとります。0 はネガティブ、1 はポジティブな感情を表します。

keras.datasets に含まれる IMDB データセットを使用します。すでに学習済みのモデルがあり、その重みは model_weights.h5 に保存されています。これからモデルのアーキテクチャを組み立て、事前に読み込まれている x_testy_test を使って性能を確認します。

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

Kerasで学ぶ言語モデリングのためのRecurrent Neural Networks (RNNs)

コースを見る

演習の手順

  • 128 ユニットの SimpleRNN セルを追加します。
  • 感情分類用にユニット数 1 の Dense 層を追加します。
  • 二値分類に適した損失関数を使用します。
  • 事前学習済みの検証セット (x_test, y_test) でモデルを評価します。

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

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

# Build model
model = Sequential()
model.add(____(units=____, input_shape=(None, 1)))
model.add(Dense(____, activation='sigmoid'))
model.compile(loss='____', 
              optimizer='adam',
              metrics=['accuracy'])

# Load pre-trained weights
model.load_weights('model_weights.h5')

# Method '.evaluate()' shows the loss and accuracy
loss, acc = model.evaluate(____, ____, verbose=0)
print("Loss: {0} \nAccuracy: {1}".format(loss, acc))
コードを編集して実行