TensorFlow tf.keras.layers.conv2D

参数描述

参数描述
inputs把上一层的输出作为输入(直接将上一层作为参数输入即可)
input_shape当作为模型的第一层时,需要指出输入的形状(samples,rows,cols,channels) ,只指出后三维即可,第一维度按batch_size自动指定
filters卷积过滤器的数量,对应输出的维数
kernel_size整数,过滤器的大小,如果为一个整数则宽和高相同
strides横向和纵向的步长,如果为一个整数则横向和纵向相同
paddingvalid:表示不够卷积核大小的块,则丢弃;same表示不够卷积核大小的块就补0,所以输出和输入形状相同
data_formatchannels_last为(batch,height,width,channels),channels_first为(batch,channels,height,width)
dilation_rate
activation激活函数,None是线性函数
use_bias是否使用偏差量
kernel_initializer卷积核的初始化。
bias_initializer偏差向量的初始化。如果是None,则使用默认的初始值。
kernel_regularizer卷积核的正则项
bias_regularizer偏差向量的正则项
activity_regularizer输出的正则函数
bias_constraint映射函数,当偏差向量被Optimizer更新后应用到偏差向量上。
trainableBoolean类型。
name字符串,层的名字。
reuseBoolean类型,表示是否可以重复使用具有相同名字的前一层的权重。

例子

import numpy as np
import tensorflow as tf
img = np.array([[1,1,1],
                [1,1,1],
                [1,1,1,]]).astype(np.float32)

img = tf.constant(img)  # 将numpy转换为tensorflow
img = tf.expand_dims(img,2)  # 在最后一维度,添加chanel通道,默认值为1.0
img = tf.expand_dims(img,0)  # 在最前一维度,添加图片,用来表示图片
img.shape  # 现在的形状是(1,3,3,1)既(图片,高度,宽度,通道),第一维可以索引到某个具体图片,二三维度可以索引到具体像素点,第四维度可以索引到某个通道的值
conv = tf.keras.layers.Conv2D(filters=1,kernel_size=2,strides=(1,1),padding='same')
conv(img)

输入

4维的张量:
channel_last:(samples,rows,cols,channels) 默认选项
channel_first:(samples,channels,rows,cols)

输出

4维的张量:
channel_last:(samples, new_rows, new_cols, filters) 默认
channel_first:(samples, filters, new_rows, new_cols)

init

__init__(
    filters,
    kernel_size,
    strides=(1, 1),
    padding='valid',
    data_format=None,
    dilation_rate=(1, 1),
    activation=None,
    use_bias=True,
    kernel_initializer='glorot_uniform',
    bias_initializer='zeros',
    kernel_regularizer=None,
    bias_regularizer=None,
    activity_regularizer=None,
    kernel_constraint=None,
    bias_constraint=None,
    **kwargs
)

参考文献:
官网
https://www.w3cschool.cn/tensorflow_python/tf_nn_conv2d.html
https://blog.csdn.net/HappyRocking/article/details/80243790
https://www.itcodemonkey.com/article/8794.html
expand_dim
tf.nn tf.keras

  • 19
    点赞
  • 89
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值