用python代码写一个简单的cnn模型
时间: 2023-06-13 08:03:32 浏览: 89
一个简单的CNN
好的,以下是一个简单的CNN模型的Python代码示例:
```python
import numpy as np
from keras.models import Sequential
from keras.layers import Conv2D, MaxPooling2D, Flatten, Dense
# 构建CNN模型
model = Sequential()
# 添加卷积层和最大池化层
model.add(Conv2D(filters=32, kernel_size=(3, 3), activation='relu', input_shape=(28, 28, 1)))
model.add(MaxPooling2D(pool_size=(2, 2)))
# 添加卷积层和最大池化层
model.add(Conv2D(filters=64, kernel_size=(3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
# 添加卷积层和最大池化层
model.add(Conv2D(filters=128, kernel_size=(3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
# 将卷积层的输出展开成一维数组
model.add(Flatten())
# 添加全连接层
model.add(Dense(units=256, activation='relu'))
# 添加输出层
model.add(Dense(units=10, activation='softmax'))
# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
# 打印模型结构
model.summary()
```
这个模型包含三个卷积层和三个最大池化层,最后是一个全连接层和一个输出层。它用于处理28x28的灰度图像,并将其分类为10个类别。
阅读全文