广告
返回顶部
首页 > 资讯 > 精选 >keras.layers.Conv2D()函数参数怎么使用
  • 744
分享到

keras.layers.Conv2D()函数参数怎么使用

2023-07-05 05:07:32 744人浏览 独家记忆
摘要

今天小编给大家分享一下keras.layers.Conv2D()函数参数怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧

今天小编给大家分享一下keras.layers.Conv2D()函数参数怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

    tf.keras.layers.Conv2D() 函数

    Conv2D (二维卷积层)

    这一层创建了一个卷积核,它与这一层的输入卷积以产生一个输出张量

    当使用此层作为模型的第一层时,提供关键字参数 input_shape (整数元组,不包括样本轴,不需要写batch_size)

    def __init__(self, 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):

    参数

    • filters

    int 类型,表示卷积核个数,filters 影响的是最后输入结果的的第四个维度的变化

    import Tensorflow as tffrom tensorflow.keras.layers import Conv2Dinput_shape = (4, 600, 600, 3)input = tf.random.normal(input_shape)x = keras.layers.Conv2D(64, (1, 1), strides=(1, 1), name='conv1')(input)print(x.shape)OUTPUT:(4, 600, 600, 64)
    • kernel_size

    表示卷积核的大小,如果是方阵可以直接写成一个数,影响的是输出结果中间两个数据的维度

    x = Conv2D(64, (2, 2), strides=(1, 1), name='conv1')(input)#or Conv2D(64, 2, strides=(1, 1), name='conv1')(input)print(x.shape)OUTPUT:(4, 599, 599, 64)
    • strides

    tuple (int, int) 步长,同样会影响输出的中间两个维度,值得注意的是,括号里的数据可以不一致,分别控制横坐标和纵坐标

    x = Conv2D(64, 1, strides=(2, 2), name='conv1')(input)print(x.shape)OUTPUT:(4, 300, 300, 64)
    • padding

    是否对周围进行填充,same 即使通过 kernel_size 缩小了维度,但是四周会填充 0,保持原先的维度;valid 表示存储不为 0 的有效信息

    a = Conv2D(64, 1, strides=(2, 2), padding="same" , name='conv1')(input)b = Conv2D(64, 3, strides=(2, 2), padding="same" , name='conv1')(input)c = Conv2D(64, 3, strides=(1, 1), padding="same" , name='conv1')(input)d = Conv2D(64, 3, strides=(1, 1), padding="valid", name='conv1')(input)print(a.shape, b.shape, c.shape, d.shape)OUTPUT:(4, 300, 300, 64)(4, 300, 300, 64)(4, 600, 600, 64)(4, 598, 598, 64)
    • activation

    激活函数,如果 activation 不是 None,则它会应用于输出

    • use_bias

    boolean,表示是否使用偏置量,如果 use_bias 为真,则创建一个偏置项并添加到输出中

    • data_format

    用于规定 input_shape 的格式

    如果不填写,默认是 channels_last,否则可以填写 channels_first。前者的会把 input_shape 这个三元组给识别成 (batch_size, height, width, channels),后者则会识别成 (batch_size, channels, height, width) 不过样本轴 (batch_size) 不需要自己填写

    • dilation_rate

    int, tuple(int, int), list[int, int],指定用于扩展卷积的扩展率。可以是单个整数,为所有空间维度指定相同的值。该参数定义了卷积核处理数据时各值的间距。

    在相同的计算条件下,该参数提供了更大的感受野。该参数经常用在实时图像分割中。当网络层需要较大的感受野,但计算资源有限而无法提高卷积核数量或大小时,可以考虑使用。

    • 返回值

    返回一个四维的张量

    第一个数是 batch 的大小,也就是有几组数据;后三个数表示一个张量的大小

    tf.keras.layers.conv2D学习

    参数描述
    inputs把上一层的输出作为输入(直接将上一层作为参数输入即可)
    input_shape当作为模型的第一层时,需要指出输入的形状(samples,rows,cols,channels) ,只指出后三维即可,第一维度按batch_size自动指定
    filters卷积过滤器的数量,对应输出的维数--卷积核的数目(即输出的维度)
    kernel_size整数,过滤器的大小,如果为一个整数则宽和高相同.单个整数或由两个整数构成的list/tuple,卷积核的宽度和长度。如为单个整数,则表示在各个空间维度的相同长度
    strides横向和纵向的步长,如果为一个整数则横向和纵向相同.单个整数或由两个整数构成的list/tuple,为卷积的步长。如为单个整数,则表示在各个空间维度的相同步长。任何不为1的strides均与任何不为1的dilation_rata均不兼容
    padding补0策略,为“valid”, “same”。“valid”代表只进行有效的卷积,即对边界数据不处理。“same”代表保留边界处的卷积结果,通常会导致输出shape与输入shape相同。
    data_formatchannels_last为(batch,height,width,channels),channels_first为(batch,channels,height,width).以128x128的RGB图像为例,“channels_first”应将数据组织为(3,128,128),而“channels_last”应将数据组织为(128,128,3)。该参数的默认值是~/.keras/keras.JSON中设置的值,若从未设置过,则为“channels_last”。
    dilation_rate 
    activation激活函数,如果不指定该参数,将不会使用任何激活函数(即使用线性激活函数:a(x)=x)
    use_bias是否使用偏差量,布尔值
    kernel_initializer卷积核的初始化。
    bias_initializer偏差向量的初始化。如果是None,则使用默认的初始值。
    kernel_regularizer卷积核的正则项
    bias_regularizer偏差向量的正则项
    activity_regularizer输出的正则函数
    bias_constraint映射函数,当偏差向量被Optimizer更新后应用到偏差向量上。
    trainableBoolean类型。
    name字符串,层的名字。
    reuseBoolean类型,表示是否可以重复使用具有相同名字的前一层的权重。
    keras.layers.convolutional.Conv2D(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)
    # 设置训练模型  # input_shape 指出输入的形状(samples,rows,cols,channels) ,只指出后三维即可,第一维度按batch_size自动指定    # x_train (60000,28,28,1)  >> input_shape=(60000,28,28,1)  第一维可以省略,自动根据batch_size指定    tf.keras.layers.Conv2D(filters=16,kernel_size=(5,5),activation="relu",input_shape=(28,28,1),padding="valid"),

    以上就是“keras.layers.Conv2D()函数参数怎么使用”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

    --结束END--

    本文标题: keras.layers.Conv2D()函数参数怎么使用

    本文链接: https://www.lsjlt.com/news/349550.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • keras.layers.Conv2D()函数参数怎么使用
      今天小编给大家分享一下keras.layers.Conv2D()函数参数怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧...
      99+
      2023-07-05
    • keras.layers.Conv2D()函数参数用法及说明
      目录tf.keras.layers.Conv2D() 函数Conv2D (二维卷积层)参数tf.keras.layers.conv2D学习总结tf.keras.layers.Conv...
      99+
      2023-02-21
      keras.layers.Conv2D() keras.layers.Conv2D()函数参数 keras.layers.Conv2D参数
    • python的函数参数怎么使用
      本篇内容主要讲解“python的函数参数怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python的函数参数怎么使用”吧!位置参数这是一个求等差数列和的函数,使用必需要传入一个参数n,这...
      99+
      2023-06-22
    • python函数参数怎么用
      这篇文章主要讲解了“python函数参数怎么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python函数参数怎么用”吧!前言python参数类型和参数传递形式多样,相对于其他语言pyth...
      99+
      2023-06-29
    • python sorted()函数的参数怎么使用
      这篇文章主要介绍“python sorted()函数的参数怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python sorted()函数的参数怎么使用”文章能帮助大家解决问题。概念对可迭代...
      99+
      2023-06-30
    • C语言函数参数怎么使用
      本篇内容主要讲解“C语言函数参数怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C语言函数参数怎么使用”吧!一、函数参数函数参数在本质上与局部变量相同在栈上分配空间函数参数的初始值是函数调...
      99+
      2023-06-30
    • pytorch中BatchNorm2d函数的参数怎么使用
      本篇内容主要讲解“pytorch中BatchNorm2d函数的参数怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“pytorch中BatchNorm2d函数的参数怎么使用”吧!BN原理、作...
      99+
      2023-07-04
    • golang不定参函数怎么使用
      这篇文章主要介绍了golang不定参函数怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇golang不定参函数怎么使用文章都会有所收获,下面我们一起来看看吧。Golang中的不定参函数是指函数可以接受不同...
      99+
      2023-07-06
    • CNN卷积函数Conv2D()各参数怎么使用
      本篇内容主要讲解“CNN卷积函数Conv2D()各参数怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CNN卷积函数Conv2D()各参数怎么使用”吧!首先我们放出tf2.0关于tf.ke...
      99+
      2023-07-05
    • Go语言怎么使用变长参数函数
      目录01 介绍02 变长参数03 变长参数函数04 使用场景05 总结本文我们主要介绍在 Go 语言中怎么使用变长参数函数,先是介绍变长参数和变长参数函数的相关知识,然后列举了一个简...
      99+
      2022-11-13
    • python中print()函数的end参数和sep参数怎么用
      小编给大家分享一下python中print()函数的end参数和sep参数怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!python 2.6中,print输出内容需要使用引号。python 3.0中的print 函数...
      99+
      2023-06-15
    • JavaScript箭头函数与剩余参数怎么使用
      本篇内容主要讲解“JavaScript箭头函数与剩余参数怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript...
      99+
      2022-10-19
    • C++缺省参数与函数重载怎么使用
      这篇文章主要介绍了C++缺省参数与函数重载怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C++缺省参数与函数重载怎么使用文章都会有所收获,下面我们一起来看看吧。一、缺省参数缺省参数形象来说就是"...
      99+
      2023-07-02
    • JavaScript函数中的参数怎么应用
      这篇文章主要介绍了JavaScript函数中的参数怎么应用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JavaScript函数中的参数怎么应用文章都会有所收获,下面我们一起来...
      99+
      2022-10-19
    • numpy的sum函数的axis和keepdim参数怎么使用
      这篇文章主要介绍“numpy的sum函数的axis和keepdim参数怎么使用”,在日常操作中,相信很多人在numpy的sum函数的axis和keepdim参数怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家...
      99+
      2023-06-09
    • controller函数中参数列表怎么使用多个@RequestBody
      这篇文章主要介绍“controller函数中参数列表怎么使用多个@RequestBody”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“controller函数中参数列表怎么使用多个@RequestB...
      99+
      2023-07-06
    • R语言中title()函数参数怎么用
      这篇文章将为大家详细讲解有关R语言中title()函数参数怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。如下所示:title(main = NULL, sub ...
      99+
      2023-06-14
    • Python中怎么传递函数参数
      今天就跟大家聊聊有关Python中怎么传递函数参数,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。函数参数的使用又有俩个方面值得注意:>>> def&nbs...
      99+
      2023-06-17
    • python回调函数怎么传参数
      在 Python 中,可以使用 functools.partial() 函数来传递参数给回调函数。functools.partial...
      99+
      2023-10-19
      python
    • python怎么遍历函数的参数
      在python中使用inspect模块对函数的参数进行遍历,具体方法如下:import inspect #导入inspect模块def f(a,b,c):argspec=inspect.getargvalues(inspect.curren...
      99+
      2022-10-04
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作