始める無料で始める

Keras のプーリング層

Keras では、プーリング処理はレイヤーとして実装され、ほかのレイヤーの間にある CNN に追加できます。この演習では、これまでに作成したものと同様の畳み込みニューラルネットワークを構築します。

Convolution => Convolution => Flatten => Dense

ただし、ここではプーリング層も追加します。アーキテクチャは、畳み込み層と全結合層の間にプーリングサイズ 2x2 の最大プーリング層を 1 つ追加します。

Convolution => Max pooling => Convolution => Flatten => Dense

ワークスペースには、Sequential な modelDenseConv2DFlattenMaxPool2D オブジェクトが用意されています。

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

Keras で学ぶ画像モデリング

コースを見る

演習の手順

  • 入力の畳み込み層を追加します(ユニット数 15、カーネルサイズ 2、活性化関数は relu)。
  • 最大プーリングを追加します(2x2 のウィンドウでプーリング)。
  • もう一つ畳み込み層を追加します(ユニット数 5、カーネルサイズ 2、活性化関数は relu)。
  • 2 つ目の畳み込みの出力を Flatten し、出力用に Dense 層を追加します(クラス数 3、活性化関数は softmax)。

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

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

# Add a convolutional layer
____(____(15, kernel_size=2, activation='relu', 
                 input_shape=(img_rows, img_cols, 1)))

# Add a pooling operation
____

# Add another convolutional layer
____

# Flatten and feed to output layer
model.add(____)
model.add(____(3, activation='softmax'))
model.summary()
コードを編集して実行