当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.compat.v1.layers.conv2d用法及代码示例


二维卷积层的函数接口。

用法

tf.compat.v1.layers.conv2d(
    inputs, filters, kernel_size, strides=(1, 1), padding='valid',
    data_format='channels_last', dilation_rate=(1, 1), activation=None,
    use_bias=True, kernel_initializer=None,
    bias_initializer=tf.compat.v1.zeros_initializer(), kernel_regularizer=None,
    bias_regularizer=None, activity_regularizer=None, kernel_constraint=None,
    bias_constraint=None, trainable=True, name=None, reuse=None
)

参数

  • inputs 张量输入。
  • filters 整数,输出空间的维度(即卷积中的过滤器数量)。
  • kernel_size 一个整数或 2 个整数的元组/列表,指定 2D 卷积窗口的高度和宽度。可以是单个整数,为所有空间维度指定相同的值。
  • strides 一个整数或 2 个整数的元组/列表,指定卷积沿高度和宽度的步幅。可以是单个整数,为所有空间维度指定相同的值。指定任何步幅值 != 1 与指定任何 dilation_rate 值 != 1 不兼容。
  • padding "valid""same" 之一(不区分大小写)。 "valid" 表示没有填充。 "same" 导致在输入的左/右或上/下均匀填充,以使输出具有与输入相同的高度/宽度尺寸。
  • data_format 一个字符串,是 channels_last (默认)或 channels_first 之一。输入中维度的排序。 channels_last 对应于形状为 (batch, height, width, channels) 的输入,而 channels_first 对应于形状为 (batch, channels, height, width) 的输入。
  • dilation_rate 一个整数或 2 个整数的元组/列表,指定用于扩张卷积的扩张率。可以是单个整数,为所有空间维度指定相同的值。目前,指定任何 dilation_rate 值 != 1 与指定任何步幅值 != 1 不兼容。
  • activation 激活函数。将其设置为 None 以保持线性激活。
  • use_bias 布尔值,图层是否使用偏差。
  • kernel_initializer 卷积核的初始化器。
  • bias_initializer 偏置向量的初始化器。如果没有,将使用默认初始化程序。
  • kernel_regularizer 卷积核的可选正则化器。
  • bias_regularizer 偏置向量的可选正则化器。
  • activity_regularizer 输出的可选正则化函数。
  • kernel_constraint Optimizer 更新后应用于内核的可选投影函数(例如,用于实现层权重的范数约束或值约束)。该函数必须将未投影变量作为输入,并且必须返回投影变量(必须具有相同的形状)。在进行异步分布式训练时使用约束是不安全的。
  • bias_constraint Optimizer 更新后应用于偏差的可选投影函数。
  • trainable 布尔值,如果 True 还将变量添加到图形集合 GraphKeys.TRAINABLE_VARIABLES(请参见 tf.Variable )。
  • name 一个字符串,图层的名称。
  • reuse 布尔值,是否重用前一层同名的权重。

返回

  • 输出张量。

抛出

  • ValueError 如果启用了即刻执行。

迁移到 TF2

警告:这个 API 是为 TensorFlow v1 设计的。继续阅读有关如何从该 API 迁移到本机 TensorFlow v2 等效项的详细信息。见TensorFlow v1 到 TensorFlow v2 迁移指南有关如何迁移其余代码的说明。

此 API 是一个遗留 api,仅与 Eager Execution 和 tf.function 兼容,如果您将其与 tf.compat.v1.keras.utils.track_tf1_style_variables 结合使用

请参阅迁移指南的 tf.layers 模型映射部分,了解如何在 TF2 中将 TensorFlow v1 模型与 Keras 一起使用。

对应的 TensorFlow v2 层是 tf.keras.layers.Conv2D

到原生 TF2 的结构映射

支持的参数均未更改名称。

前:

y = tf.compat.v1.layers.conv2d(x, filters=3, kernel_size=3)

后:

要使用 TF1 函数层迁移代码,请使用 Keras 函数 API:

x = tf.keras.Input((28, 28, 1))
 y = tf.keras.layers.Conv2D(filters=3, kernels_size=3)(x)
 model = tf.keras.Model(x, y)

该层创建了一个卷积核,该卷积核与层输入进行卷积(实际上是cross-correlated)以产生输出张量。如果 use_bias 为 True(并且提供了 bias_initializer),则会创建一个偏置向量并将其添加到输出中。最后,如果 activation 不是 None ,它也会应用于输出。

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.compat.v1.layers.conv2d。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。