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


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

深度可分离的二维卷积。

继承自:SeparableConv2DLayerLayerModule

用法

tf.compat.v1.layers.SeparableConv2D(
    filters, kernel_size, strides=(1, 1), padding='valid',
    data_format='channels_last', dilation_rate=(1, 1), depth_multiplier=1,
    activation=None, use_bias=True, depthwise_initializer=None,
    pointwise_initializer=None, bias_initializer=tf.compat.v1.zeros_initializer(),
    depthwise_regularizer=None, pointwise_regularizer=None, bias_regularizer=None,
    activity_regularizer=None, depthwise_constraint=None, pointwise_constraint=None,
    bias_constraint=None, trainable=True, name=None, **kwargs
)

参数

  • filters 整数,输出空间的维度(即卷积中的过滤器数量)。
  • kernel_size 指定过滤器空间维度的 2 个整数的元组或列表。可以是单个整数,为所有空间维度指定相同的值。
  • strides 指定卷积步长的 2 个正整数的元组或列表。可以是单个整数,为所有空间维度指定相同的值。指定任何 stride 值 != 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 不兼容。
  • depth_multiplier 每个输入通道的深度卷积输出通道数。深度卷积输出通道的总数将等于 num_filters_in * depth_multiplier
  • activation 激活函数。将其设置为 None 以保持线性激活。
  • use_bias 布尔值,图层是否使用偏差。
  • depthwise_initializer 深度卷积核的初始化器。
  • pointwise_initializer 逐点卷积核的初始化器。
  • bias_initializer 偏置向量的初始化器。如果没有,将使用默认初始化程序。
  • depthwise_regularizer 深度卷积核的可选正则化器。
  • pointwise_regularizer 用于逐点卷积核的可选正则化器。
  • bias_regularizer 偏置向量的可选正则化器。
  • activity_regularizer 输出的可选正则化函数。
  • depthwise_constraint Optimizer 更新后应用于深度内核的可选投影函数(例如,用于层权重的范数约束或值约束)。该函数必须将未投影变量作为输入,并且必须返回投影变量(必须具有相同的形状)。在进行异步分布式训练时使用约束是不安全的。
  • pointwise_constraint Optimizer 更新后应用于逐点内核的可选投影函数。
  • bias_constraint Optimizer 更新后应用于偏差的可选投影函数。
  • trainable 布尔值,如果 True 还将变量添加到图形集合 GraphKeys.TRAINABLE_VARIABLES(请参见 tf.Variable )。
  • name 一个字符串,图层的名称。

属性

  • graph
  • scope_name

迁移到 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.SeparableConv2D

到原生 TF2 的结构映射

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

前:

conv = tf.compat.v1.layers.SeparableConv2D(filters=3, kernel_size=3)

后:

conv = tf.keras.layers.SeparableConv2D(filters=3, kernels_size=3)

该层执行一个单独作用于通道的深度卷积,然后是一个混合通道的点卷积。如果 use_bias 为 True 并且提供了偏置初始化器,则它将偏置向量添加到输出中。然后它可以选择应用激活函数来产生最终输出。

相关用法


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