Spec-Zone.ru › TensorFlow

tf.keras.layers.SeparableConv2D

Слой двумерной разделимой свёртки.

Наследует от: Layer, Operation

Просмотреть псевдонимы

Основные псевдонимы

tf.keras.layers.SeparableConvolution2D

tf.keras.layers.SeparableConv2D(
    filters,
    kernel_size,
    strides=(1, 1),
    padding='valid',
    data_format=None,
    dilation_rate=(1, 1),
    depth_multiplier=1,
    activation=None,
    use_bias=True,
    depthwise_initializer='glorot_uniform',
    pointwise_initializer='glorot_uniform',
    bias_initializer='zeros',
    depthwise_regularizer=None,
    pointwise_regularizer=None,
    bias_regularizer=None,
    activity_regularizer=None,
    depthwise_constraint=None,
    pointwise_constraint=None,
    bias_constraint=None,
    **kwargs
)

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

Аргументы
filters int, размерность выходного пространства (то есть количество фильтров в точечной свёртке).
kernel_size int или кортеж/список из 2 целых чисел, задающих размер окна поканочной свёртки.
strides int или кортеж/список из 2 целых чисел, задающих длину шага поканочной свёртки. Если указано только одно целое число, одинаковое значение шага будет использоваться для всех измерений. strides > 1 несовместим с dilation_rate > 1.
padding string: "valid" или "same" (без учёта регистра). "valid" означает отсутствие дополнения. При "same" входные данные дополняются равномерно слева и справа либо сверху и снизу. Если padding="same" и strides=1, выходные данные имеют тот же размер, что и входные.
data_format string: "channels_last" или "channels_first". Порядок измерений во входных данных. "channels_last" соответствует входным данным с формой (batch, height, width, channels), а "channels_first" — входным данным с формой (batch, channels, height, width). По умолчанию используется значение image_data_format из файла конфигурации Keras по адресу ~/.keras/keras.json. Если значение не задано, используется "channels_last".
dilation_rate int или кортеж/список из 2 целых чисел, задающих коэффициент дилатации для дилатированной свёртки. Если указано только одно целое число, одинаковый коэффициент дилатации будет использоваться для всех измерений.
depth_multiplier Количество выходных каналов поканочной свёртки для каждого входного канала. Общее количество выходных каналов поканочной свёртки будет равно input_channel * depth_multiplier.
activation Функция активации. Если указано None, функция активации не применяется.
use_bias bool; если значение True, к выходным данным добавляется смещение.
depthwise_initializer Инициализатор ядра поканочной свёртки. Если значение равно None, используется инициализатор по умолчанию ("glorot_uniform").
pointwise_initializer Инициализатор ядра точечной свёртки. Если значение равно None, используется инициализатор по умолчанию ("glorot_uniform").
bias_initializer Инициализатор вектора смещения. Если значение равно None, используется инициализатор по умолчанию ('"zeros"').
depthwise_regularizer Необязательный регуляризатор ядра поканочной свёртки.
pointwise_regularizer Необязательный регуляризатор ядра точечной свёртки.
bias_regularizer Необязательный регуляризатор вектора смещения.
activity_regularizer Необязательная функция регуляризации выходных данных.
depthwise_constraint Необязательная функция проекции, применяемая к поканочному ядру после его обновления с помощью Optimizer (например, для задания ограничений на норму или значения весов слоя). Функция должна принимать на вход непроецированную переменную и возвращать проецированную переменную (которая должна иметь ту же форму).
pointwise_constraint Необязательная функция проекции, применяемая к точечному ядру после его обновления с помощью Optimizer.
bias_constraint Необязательная функция проекции, применяемая к смещению после его обновления с помощью Optimizer.

Форма входных данных:

  • Если data_format="channels_last": тензор 4D с формой: (batch_size, height, width, channels)
  • Если data_format="channels_first": тензор 4D с формой: (batch_size, channels, height, width)

Форма выходных данных:

  • Если data_format="channels_last": тензор 4D с формой: (batch_size, new_height, new_width, filters)
  • Если data_format="channels_first": тензор 4D с формой: (batch_size, filters, new_height, new_width)
Возвращает
Тензор 4D, представляющий activation(separable_conv2d(inputs, kernel) + bias).

Пример:

x = np.random.rand(4, 10, 10, 12)
y = keras.layers.SeparableConv2D(3, 4, 3, 2, activation='relu')(x)
print(y.shape)
(4, 4, 4, 4)
Атрибуты
input Получает входной тензор (тензоры) символьной операции.

Возвращает только тензор (тензоры), соответствующий первому вызову операции.

output Получает выходной тензор (тензоры) слоя.

Возвращает только тензор (тензоры), соответствующий первому вызову операции.

Методы

from_config

Просмотреть исходный код

@classmethod
from_config(
    config
)

Создаёт слой на основе его конфигурации.

Этот метод является обратным к get_config и позволяет создать такой же слой из словаря конфигурации. Он не обрабатывает связи слоёв (это делает Network) и веса (это делает set_weights).

Аргументы
config Словарь Python, обычно являющийся результатом вызова get_config.
Возвращает
Экземпляр слоя.

symbolic_call

Просмотреть исходный код

symbolic_call(
    *args, **kwargs
)

© 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/api_docs/python/tf/keras/layers/SeparableConv2D

Spec-Zone.ru

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