はじめての RNN モデル
この演習では、Keras のモジュールを使って最初の RNN モデルを構築し、映画レビューの感情を分類します。
最初のモデルは、標準的な RNN セルである SimpleRNN を用いた再帰層が1つと、出力層は2値をとります。0 はネガティブ、1 はポジティブな感情を表します。
keras.datasets に含まれる IMDB データセットを使用します。すでに学習済みのモデルがあり、その重みは model_weights.h5 に保存されています。これからモデルのアーキテクチャを組み立て、事前に読み込まれている x_test と y_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))