tf.compat.v1.layers.SeparableConv2D
Двумерная свёртка с разделением каналов.
Наследуется от: SeparableConv2D, Layer, Layer, Module
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
)
Переход к TF2
Этот API является устаревшим API, совместимым только с выполнением в режиме Eager и tf.function, если вы объединяете его с tf.compat.v1.keras.utils.track_tf1_style_variables
Обратитесь к разделу сопоставления моделей tf.layers в руководстве по миграции https://www.tensorflow.org/guide/migrate/model_mapping, чтобы узнать, как использовать вашу модель TensorFlow v1 в TF2 с 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 и задан инициализатор смещения, он добавляет вектор смещения к выходным данным. Затем необязательно применяется функция активации для получения окончательного результата.
| Аргументы | |
|---|---|
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 | Строка, имя слоя. |
| Атрибуты | |
|---|---|
graph | |
scope_name | |
Методы
apply
apply(
*args, **kwargs
)
convolution_op
convolution_op(
inputs, kernel
)
get_losses_for
get_losses_for(
inputs
)
Возвращает потери, относящиеся к определённому набору входных данных.
| Аргументы | |
|---|---|
inputs | Входной тензор или список/кортеж входных тензоров. |
| Возвращает | |
|---|---|
Список тензоров потерь слоя, зависящих от inputs. |
get_updates_for
get_updates_for(
inputs
)
Возвращает обновления, относящиеся к определённому набору входных данных.
| Аргументы | |
|---|---|
inputs | Входной тензор или список/кортеж входных тензоров. |
| Возвращает | |
|---|---|
Список операций обновления слоя, зависящих от inputs. |
© 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/SeparableConv2D