TensorFlow tf.keras.layers.conv2D

参数描述

参数 描述
inputs 把上一层的输出作为输入(直接将上一层作为参数输入即可)
input_shape 当作为模型的第一层时,需要指出输入的形状(samples,rows,cols,channels) ,只指出后三维即可,第一维度按batch_size自动指定
filters 卷积过滤器的数量,对应输出的维数
kernel_size 整数,过滤器的大小,如果为一个整数则宽和高相同
strides 横向和纵向的步长,如果为一个整数则横向和纵向相同
padding valid:表示不够卷积核大小的块,则丢弃;same表示不够卷积核大小的块就补0,所以输出和输入形状相同
data_format channels_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更新后应用到偏差向量上。
trainable Boolean类型。
name 字符串,层的名字。
reuse Boolean类型,表示是否可以重复使用具有相同名字的前一层的权重。

例子

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

你可能感兴趣的:(tensorflow,TensorFlow)