Spec-Zone.ru › TensorFlow 2.9

tf.compat.v1.layers.separable_conv2d

Функциональный интерфейс для слоя двумерной свертки с разделением по глубине.

tf.compat.v1.layers.separable_conv2d(
    inputs,
    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,
    reuse=None
)

Перейти к TF2

Внимание: Этот API был разработан для TensorFlow v1. Продолжайте чтение, чтобы узнать, как перейти от этого API к эквиваленту в родном TensorFlow v2. Обратитесь к руководству по миграции TensorFlow v1 в TensorFlow v2, чтобы узнать, как перенести остальную часть вашего кода.

Этот API является устаревшим API, совместимым только с выполнением в режиме жадного исполнения и tf.function, если вы используете его вместе с tf.compat.v1.keras.utils.track_tf1_style_variables

Обратитесь к разделу сопоставления моделей tf.layers в руководстве по миграции, чтобы узнать, как использовать вашу модель TensorFlow v1 в TF2 с Keras.

Соответствующий слой TensorFlow v2 — tf.keras.layers.SeparableConv2D.

Структурное сопоставление с родным TF2

Ни одно из поддерживаемых аргументов не изменило свое имя.

До:

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

После:

Для миграции кода, использующего функциональные слои TF1, используйте функциональный API Keras:

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

Описание

Этот слой выполняет свертку по глубине, которая действует раздельно на каналы, за которой следует точечная свертка, которая смешивает каналы. Если use_bias равно True и задан инициализатор смещения, он добавляет вектор смещения к выходу. Затем он необязательно применяет функцию активации для получения конечного результата.

Args
inputs Входной тензор.
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 Инициализатор вектора смещения. Если None, будет использован инициализатор по умолчанию.
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 Строка, имя слоя.
reuse Булево значение, использовать ли повторно веса предыдущего слоя с тем же именем.
Returns
Выходной тензор.
Raises
ValueError если включено жадное выполнение.

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/compat/v1/layers/separable_conv2d

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API