開始使用免費開始

Keras 池化層

Keras 將池化運算實作為一個可插入 CNN 的層,放在其他層之間。這題你會建立一個與之前相似的卷積神經網路:

Convolution => Convolution => Flatten => Dense

不過,這次你也要加入池化層。網路架構會在卷積層與全連接層之間加入一個 2x2 的最大池化層:

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

工作環境中已提供 Sequential model,以及 DenseConv2DFlattenMaxPool2D 物件。

本練習屬於課程

使用 Keras 進行影像建模

檢視課程

練習說明

  • 加入一個輸入卷積層(15 個單元,kernel size 為 2,relu 啟動函式)。
  • 加入一個最大池化運算(以 2x2 視窗進行池化)。
  • 再加入一個卷積層(5 個單元,kernel size 為 2,relu 啟動函式)。
  • 將第二個卷積層的輸出展平,並加入輸出用的 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()
編輯並執行程式碼