Tensorflow⑥——基本卷积操作CBAPD

博客介绍了卷积神经网络,借助卷积核提取特征后送入全连接网络。阐述了卷积是特征提取器,遵循CBAPD流程,即卷积、批标准化、激活层、池化层、全连接。还介绍了tf.keras中的相关层,如Conv2D、BatchNormalization、MaxPool2D等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

卷积神经网络:借助卷积核提取特征后,送入全连接网络。
卷积是什么,卷积是特征提取器,就是CBAPD
卷积——披标准化——激活层——池化层——全连接
(Convolutional——BN——Activation——Pooling——Dropout),之后送入全连接层(FC)

tf.keras.layers.Conv2D

tf.keras.layers.Conv2D (
    filters = 卷积核个数,
    kernel_size = 卷积核尺寸, #正方形写核长整数,或(核高h,核宽w)
    strides = 滑动步长, #横纵向相同写步长整数,或(纵向步长h,横向步长w),默认1
    padding = “same” or “valid”, #使用全零填充是“same”,不使用是“valid”(默认)
    activation = “ relu ” or “ sigmoid ” or “ tanh ” or “ softmax”等 , #如有BN此处不写
    input_shape = (,, 通道数) #输入特征图维度,可省略
    )

在这里插入图片描述

tf.keras.layers.BatchNormalization()

tf.keras.layers.BatchNormalization()——批标准化,BN层通常位于卷积层之后,激活层之前。

model = tf.keras.models.Sequential([
	Conv2D(filters=6, kernel_size=(5, 5), padding='same'), # 卷积层
	BatchNormalization(), # BN层
	Activation('relu'), # 激活层
	MaxPool2D(pool_size=(2, 2), strides=2, padding='same'), # 池化层
	Dropout(0.2), # dropout层
])

tf.keras.layers.MaxPool2D、tf.keras.layers.AveragePooling2D

池化层。

tf.keras.layers.MaxPool2D(
	pool_size=池化核尺寸,#正方形写核长整数,或(核高h,核宽w)
	strides=池化步长,#步长整数, 或(纵向步长h,横向步长w),默认为pool_size
	padding=‘valid’or‘same’ #使用全零填充是“same”,不使用是“valid”(默认)
)

tf.keras.layers.AveragePooling2D(
	pool_size=池化核尺寸,#正方形写核长整数,或(核高h,核宽w)
	strides=池化步长,#步长整数, 或(纵向步长h,横向步长w),默认为pool_size
	padding=‘valid’or‘same’ #使用全零填充是“same”,不使用是“valid”(默认)
)

# 举例如下
model = tf.keras.models.Sequential([
	Conv2D(filters=6, kernel_size=(5, 5), padding='same'), # 卷积层
	BatchNormalization(), # BN层
	Activation('relu'), # 激活层
	MaxPool2D(pool_size=(2, 2), strides=2, padding='same'), # 池化层
	Dropout(0.2), # dropout层
])

tf.keras.layers.Dropout

tf.keras.layers.Dropout(舍弃的概率)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值