Spec-Zone.ru › TensorFlow

tf.keras.layers.Conv2D

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

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

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

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

tf.keras.layers.Convolution2D

tf.keras.layers.Conv2D(
    filters,
    kernel_size,
    strides=(1, 1),
    padding='valid',
    data_format=None,
    dilation_rate=(1, 1),
    groups=1,
    activation=None,
    use_bias=True,
    kernel_initializer='glorot_uniform',
    bias_initializer='zeros',
    kernel_regularizer=None,
    bias_regularizer=None,
    activity_regularizer=None,
    kernel_constraint=None,
    bias_constraint=None,
    **kwargs
)

Используется в блокнотах

Используется в руководстве Используется в учебных материалах
  • Использование моделей TF1.x в рабочих процессах TF2
  • Эффективное использование TensorFlow 2
  • Использование TPU
  • Повышение производительности с помощью tf.function
  • Обрезка для инференса на устройстве с XNNPACK
  • Пользовательские слои
  • Классификация изображений
  • Аугментация данных
  • Введение в автокодировщики
  • pix2pix: преобразование изображений с помощью условной GAN

Этот слой создаёт ядро свёртки, которое свёртывается с входными данными слоя вдоль одного пространственного (или временного) измерения, формируя выходной тензор. Если use_bias равно True, создаётся вектор смещения и добавляется к выходным данным. Наконец, если activation не равно None, оно также применяется к выходным данным.

Аргументы
filters Целое число, размерность выходного пространства (количество фильтров в свёртке).
kernel_size Целое число или кортеж/список из 2 целых чисел, задающих размер окна свёртки.
strides Целое число или кортеж/список из 2 целых чисел, задающих длину шага свёртки. strides > 1 несовместим с dilation_rate > 1.
padding Строка: "valid" или "same" (без учёта регистра). "valid" означает отсутствие дополнения. При "same" дополнение равномерно добавляется слева и справа либо сверху и снизу от входных данных. Если padding="same" и strides=1, выходные данные имеют тот же размер, что и входные.
data_format Строка: "channels_last" или "channels_first". Порядок измерений во входных данных. "channels_last" соответствует входным данным формы (batch_size, height, width, channels), а "channels_first" — входным данным формы (batch_size, channels, height, width). По умолчанию используется значение image_data_format из файла конфигурации Keras по адресу ~/.keras/keras.json. Если значение не задано, используется "channels_last".
dilation_rate Целое число или кортеж/список из 2 целых чисел, задающих коэффициент дилатации для дилатированной свёртки.
groups Положительное целое число, задающее количество групп, на которые разбиваются входные данные вдоль оси каналов. К каждой группе отдельно применяется свёртка с filters // groups фильтрами. Выходные данные представляют собой конкатенацию всех результатов groups вдоль оси каналов. Количество входных каналов и filters должно делиться на groups без остатка.
activation Функция активации. Если задано None, активация не применяется.
use_bias Логическое значение; если равно True, к выходным данным добавляется смещение.
kernel_initializer Инициализатор ядра свёртки. Если задано None, используется инициализатор по умолчанию ("glorot_uniform").
bias_initializer Инициализатор вектора смещения. Если задано None, используется инициализатор по умолчанию ("zeros").
kernel_regularizer Необязательный регуляризатор ядра свёртки.
bias_regularizer Необязательный регуляризатор вектора смещения.
activity_regularizer Необязательная функция регуляризации выходных данных.
kernel_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(conv2d(inputs, kernel) + bias).
Вызывает исключение
ValueError если одновременно заданы strides > 1 и dilation_rate > 1.

Пример:

x = np.random.rand(4, 10, 10, 128)
y = keras.layers.Conv2D(32, 3, activation='relu')(x)
print(y.shape)
(4, 8, 8, 32)
Атрибуты
input Возвращает входной(ые) тензор(ы) символьной операции.

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

kernel
output Возвращает выходной(ые) тензор(ы) слоя.

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

Методы

convolution_op

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

convolution_op(
    inputs, kernel
)

enable_lora

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

enable_lora(
    rank, a_initializer='he_uniform', b_initializer='zeros'
)

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/Conv2D

Spec-Zone.ru

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