始める無料で始める

Keras のシーケンシャルモデル

第3章では、tensorflow の中の keras API を使ってニューラルネットワークを定義しましたが、モデル定義と学習をより効率化するための機能を十分には活用しませんでした。この演習では、keras のシーケンシャルモデル API を使って、手話のアルファベット画像を分類できるニューラルネットワークを定義します。また、各レイヤーの形状やパラメータ数など、モデルのアーキテクチャを出力するために .summary() メソッドも使用します。

なお、画像は (28, 28) から (784,) にリシェイプされており、Dense レイヤーの入力として使えるようになっています。さらに、kerastensorflow からすでにインポート済みです。

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

Introduction to TensorFlow in Python

コースを見る

演習の手順

  • model という名前の keras シーケンシャルモデルを定義します。
  • 最初のレイヤーは Dense() とし、ノード数を16、活性化関数を relu に設定します。
  • 2つ目のレイヤーも Dense() とし、ノード数を8、活性化関数を relu に設定します。
  • 出力レイヤーはノード数を4にし、活性化関数として softmax を使います。

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

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

# Define a Keras sequential model
____

# Define the first dense layer
model.add(keras.layers.____(____, activation='____', input_shape=(784,)))

# Define the second dense layer
____

# Define the output layer
model.add(keras.layers.Dense(____))

# Print the model architecture
print(model.summary())
コードを編集して実行