生成一个四层卷积两层池化的卷积神经网络
时间: 2024-01-21 13:04:07 浏览: 157
以下是一个四层卷积两层池化的卷积神经网络的示例代码:
```python
import tensorflow as tf
# 定义输入层
inputs = tf.keras.Input(shape=(28, 28, 1))
# 第一层卷积
x = tf.keras.layers.Conv2D(filters=32, kernel_size=(3, 3), activation='relu')(inputs)
# 第二层卷积
x = tf.keras.layers.Conv2D(filters=64, kernel_size=(3, 3), activation='relu')(x)
# 第一层池化
x = tf.keras.layers.MaxPooling2D(pool_size=(2, 2))(x)
# 第三层卷积
x = tf.keras.layers.Conv2D(filters=128, kernel_size=(3, 3), activation='relu')(x)
# 第四层卷积
x = tf.keras.layers.Conv2D(filters=256, kernel_size=(3, 3), activation='relu')(x)
# 第二层池化
x = tf.keras.layers.MaxPooling2D(pool_size=(2, 2))(x)
# 展平层
x = tf.keras.layers.Flatten()(x)
# 第一层全连接层
x = tf.keras.layers.Dense(units=512, activation='relu')(x)
# 第二层全连接层
x = tf.keras.layers.Dense(units=256, activation='relu')(x)
# 输出层
outputs = tf.keras.layers.Dense(units=10, activation='softmax')(x)
# 定义模型
model = tf.keras.Model(inputs=inputs, outputs=outputs)
# 打印模型结构
model.summary()
```
该模型包含四层卷积层和两层池化层,其中每个卷积层都使用ReLU激活函数,每个池化层都使用最大池化。模型的输出层是一个具有10个神经元的softmax层,用于分类任务。
阅读全文