Keras のプーリング層
Keras では、プーリング処理はレイヤーとして実装され、ほかのレイヤーの間にある CNN に追加できます。この演習では、これまでに作成したものと同様の畳み込みニューラルネットワークを構築します。
Convolution => Convolution => Flatten => Dense
ただし、ここではプーリング層も追加します。アーキテクチャは、畳み込み層と全結合層の間にプーリングサイズ 2x2 の最大プーリング層を 1 つ追加します。
Convolution => Max pooling => Convolution => Flatten => Dense
ワークスペースには、Sequential な model と Dense、Conv2D、Flatten、MaxPool2D オブジェクトが用意されています。
この演習はコースの一部です
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()