เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

เลเยอร์ pooling ใน Keras

Keras นำการดำเนินการ pooling มาใช้ในรูปแบบเลเยอร์ที่เพิ่มเข้าไปใน CNN ระหว่างเลเยอร์อื่น ๆ ได้ ในแบบฝึกหัดนี้ จะสร้างโครงข่ายประสาทเทียมแบบ convolutional ที่คล้ายกับที่เคยสร้างไว้ก่อนหน้า:

Convolution => Convolution => Flatten => Dense

แต่จะเพิ่มเลเยอร์ pooling เข้าไปด้วย สถาปัตยกรรมนี้จะเพิ่ม max-pooling layer หนึ่งเลเยอร์ระหว่าง convolutional layer กับ dense layer โดยใช้ขนาด pooling 2x2:

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

model แบบ Sequential พร้อมด้วยออบเจกต์ Dense, Conv2D, Flatten และ MaxPool2D พร้อมใช้งานแล้วใน workspace ของคุณ

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การสร้างโมเดลภาพด้วย Keras

ดูคอร์ส

คำแนะนำการฝึกหัด

  • เพิ่ม convolutional layer แรกสำหรับรับข้อมูลเข้า (15 units, kernel size 2, activation แบบ relu)
  • เพิ่มการดำเนินการ maximum pooling (pooling บนหน้าต่างขนาด 2x2)
  • เพิ่ม convolution layer อีกหนึ่งเลเยอร์ (5 units, kernel size 2, activation แบบ relu)
  • Flatten ผลลัพธ์จาก convolution เลเยอร์ที่สอง แล้วเพิ่ม Dense layer สำหรับเอาต์พุต (3 หมวดหมู่, activation แบบ 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()
แก้ไขและรันโค้ด