tf.contrib.layers.convolution
Добавляет N-мерное свёртку, за которой необязательно следует слой batch_norm.
tf.contrib.layers.convolution(
inputs, num_outputs, kernel_size, stride=1, padding='SAME', data_format=None,
rate=1, activation_fn=tf.nn.relu, normalizer_fn=None, normalizer_params=None,
weights_initializer=initializers.xavier_initializer(), weights_regularizer=None,
biases_initializer=tf.zeros_initializer(), biases_regularizer=None, reuse=None,
variables_collections=None, outputs_collections=None, trainable=True,
scope=None, conv_dims=None
)
Требуется, чтобы 1 ≤ N ≤ 3.
convolution создаёт переменную под названием weights, представляющую свёрточное ядро, которое свёртывается (фактически кросс-коррелируется) с inputs, чтобы получить Tensor активаций. Если указан normalizer_fn (например, batch_norm), то он применяется. В противном случае, если normalizer_fn равно None и указан biases_initializer, тогда создаётся переменная biases и добавляется к активациям. Наконец, если activation_fn не равно None, оно также применяется к активациям.
Выполняет атроусную свёртку со скоростью шага/разбавлением входного сигнала, равной rate, если для любого измерения rate задано значение > 1. В этом случае stride значения ≠ 1 не поддерживаются.
| Args | |
|---|---|
inputs | Tensor ранга N+2 формы [batch_size] + input_spatial_shape + [in_channels] если data_format не начинается с "NC" (по умолчанию), или [batch_size, in_channels] + input_spatial_shape если data_format начинается с "NC". |
num_outputs | Целое число, количество выходных фильтров. |
kernel_size | Последовательность N положительных целых чисел, определяющих пространственные измерения фильтров. Может быть одним целым числом для задания одного и того же значения для всех пространственных измерений. |
stride | Последовательность N положительных целых чисел, определяющих шаг, с которым вычисляется выход. Может быть одним целым числом для задания одного и того же значения для всех пространственных измерений. Задание любого значения stride ≠ 1 несовместимо с заданием любого значения rate ≠ 1. |
padding | Один из "VALID" или "SAME". |
data_format | Строка или None. Указывает, является ли размерность канала input и выхода последним измерением (по умолчанию, или если data_format не начинается с "NC"), или вторым измерением (если data_format начинается с "NC"). Для N=1 допустимые значения — "NWC" (по умолчанию) и "NCW". Для N=2 допустимые значения — "NHWC" (по умолчанию) и "NCHW". Для N=3 допустимые значения — "NDHWC" (по умолчанию) и "NCDHW". |
rate | Последовательность N положительных целых чисел, определяющая скорость разбавления для атросной свёртки. Может быть одним целым числом для задания одного и того же значения для всех пространственных измерений. Задание любого значения rate ≠ 1 несовместимо с заданием любого значения stride ≠ 1. |
activation_fn | Функция активации. Значение по умолчанию — функция ReLU. Явно установите её в None, чтобы пропустить её и сохранить линейную активацию. |
normalizer_fn | Функция нормализации для использования вместо biases. Если normalizer_fn указано, то biases_initializer и biases_regularizer игнорируются, и biases не создаются и не добавляются. Значение по умолчанию None для отсутствия функции нормализации. |
normalizer_params | Параметры функции нормализации. |
weights_initializer | Инициализатор для весов. |
weights_regularizer | Необязательный регуляризатор для весов. |
biases_initializer | Инициализатор для смещений. Если None, пропускаются смещения. |
biases_regularizer | Необязательный регуляризатор для смещений. |
reuse | Нужно ли повторно использовать слой и его переменные. Для повторного использования должен быть указан scope слоя. |
variables_collections | Необязательный список коллекций для всех переменных или словарь, содержащий различные списки коллекций для каждой переменной. |
outputs_collections | Коллекция для добавления выходов. |
trainable | Если True также добавлять переменные в коллекцию графа GraphKeys.TRAINABLE_VARIABLES (см. tf.Variable). |
scope | Необязательный scope для variable_scope. |
conv_dims | Необязательная размерность свёртки. Если задано, используется соответствующая свёртка (например, 2 для Conv 2D, 3 для Conv 3D, ...). Если оставлено None, размерность свёртки будет выбрана на основе ранга входных данных (т. е. Conv ND, с N = input_rank - 2). |
| Returns | |
|---|---|
| Tensor, представляющий выход операции. |
| Raises | |
|---|---|
ValueError | Если data_format некорректен. |
ValueError | И 'rate', и stride не равны равномерно 1. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/contrib/layers/convolution