Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Tạo mô hình Sequential TensorFlow/Keras với Python

Sử dụng Keras Sequential API để xây dựng mô hình CNN phân loại hình ảnh dạng stack các layer tuần tự.

Mã ví dụ

print("Đang tạo Sequential model...")
num_classes = 5
model = Sequential([
    layers.experimental.preprocessing.Rescaling(1./255, input_shape=(img_height, img_width, 3)),
    layers.Conv2D(16, 3, padding='same', activation='relu'),
    layers.MaxPooling2D(),
    layers.Conv2D(32, 3, padding='same', activation='relu'),
    layers.MaxPooling2D(),
    layers.Conv2D(64, 3, padding='same', activation='relu'),
    layers.MaxPooling2D(),
    layers.Flatten(),
    layers.Dense(128, activation='relu'),
    layers.Dense(num_classes)
])

Kết quả

Đang tạo Sequential model

Giải thích

  • Rescaling(1./255): Chuẩn hóa pixel từ [0,255] về [0,1]. Đặt ở layer đầu tiên đơn giản hóa deployment.
  • 3 Conv2D blocks: Mỗi block có Conv2D (filters: 16→32→64, kernel 3x3, padding same, relu) + MaxPooling2D.
  • Flatten: Chuyển tensor 3D (H,W,C) thành vector 1D.
  • Dense(128, relu): Fully connected layer ẩn.
  • Dense(5): Output layer 5 classes (không activation, logits).
  • input_shape=(180,180,3): Hình ảnh 180x180 RGB.
  • Tổng params: ~4 triệu (chủ yếu từ Dense 30976*128).

Mô hình này cơ bản, chưa tối ưu độ chính xác cao (cần data augmentation, dropout, transfer learning).