class CNN(tf.keras.Model):
def __init__(self):
super().__init__()
self.conv1 = tf.keras.layers.Conv2D(
filters=32, # 卷积层神经元(卷积核)数目
kernel_size=[5, 5], # 感知域大小(滤波器大小) padding=2
strides=(2,2),
padding='same', # padding策略(vaild 或 same)same保证卷出来的图大小与原输入相同
kernel_initializer=tf.random_normal_initializer,
activation=tf.nn.relu # 激活函数
)
self.pool1 = tf.keras.layers.MaxPool2D(pool_size=[2, 2],strides=2)
self.conv2 = tf.keras.layers.Conv2D(
filters=64,
kernel_size=[5, 5],
strides=(1,1),
padding='same',
kernel_initializer=tf.random_normal_initializer,
activation=tf.nn.relu
)
self.pool2 = tf.keras.layers.MaxPool2D(pool_size=[2, 2],strides=2)
self.flatten = tf.keras.layers.Flatten()
self.dense1 = tf.keras.layers.Dense(un
定义CNN网络结构
最新推荐文章于 2025-07-08 16:16:53 发布
该博客详细介绍了如何构建一个深度学习中的卷积神经网络(CNN)。网络从150x150的单通道黑白图像开始,经过一系列卷积和最大池化层,包括5x5卷积核和2x2最大池化操作,最后通过全连接层、dropout层,以及softmax层进行分类。整个结构旨在提取特征并进行有效的图像识别。

最低0.47元/天 解锁文章
11万+

被折叠的 条评论
为什么被折叠?



