tf.pad
| Просмотреть исходный код на GitHub |
Заполняет тензор.
tf.pad(
tensor, paddings, mode='CONSTANT', constant_values=0, name=None
)
Данная операция заполняет tensor в соответствии со paddings которое вы укажете. paddings это целочисленный тензор со формой [n, 2], где n - ранг tensor. Для каждого измерения D input, paddings[D, 0] указывает количество значений, которые нужно добавить перед содержимым tensor в этом измерении, а paddings[D, 1] указывает количество значений, которые нужно добавить после содержимого tensor в этом измерении. Если mode равно "REFLECT", то как paddings[D, 0], так и paddings[D, 1] должны быть не больше tensor.dim_size(D) - 1. Если mode равно "SYMMETRIC", то как paddings[D, 0], так и paddings[D, 1] должны быть не больше tensor.dim_size(D).
Размер заполненного каждого измерения D выходного тензора:
paddings[D, 0] + tensor.dim_size(D) + paddings[D, 1]
Например:
t = tf.constant([[1, 2, 3], [4, 5, 6]])
paddings = tf.constant([[1, 1,], [2, 2]])
# 'constant_values' is 0.
# rank of 't' is 2.
tf.pad(t, paddings, "CONSTANT") # [[0, 0, 0, 0, 0, 0, 0],
# [0, 0, 1, 2, 3, 0, 0],
# [0, 0, 4, 5, 6, 0, 0],
# [0, 0, 0, 0, 0, 0, 0]]
tf.pad(t, paddings, "REFLECT") # [[6, 5, 4, 5, 6, 5, 4],
# [3, 2, 1, 2, 3, 2, 1],
# [6, 5, 4, 5, 6, 5, 4],
# [3, 2, 1, 2, 3, 2, 1]]
tf.pad(t, paddings, "SYMMETRIC") # [[2, 1, 1, 2, 3, 3, 2],
# [2, 1, 1, 2, 3, 3, 2],
# [5, 4, 4, 5, 6, 6, 5],
# [5, 4, 4, 5, 6, 6, 5]]
| Аргументы | |
|---|---|
tensor | A Tensor. |
paddings | A Tensor типа int32. |
mode | Одно из "CONSTANT", "REFLECT" или "SYMMETRIC" (регистр не важен) |
constant_values | В режиме "CONSTANT" скалярное значение заполнения. Должно быть того же типа, что и tensor. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
A Tensor. Имеет тот же тип, что и tensor. |
| Исключения | |
|---|---|
ValueError | Когда режим не является одним из "CONSTANT", "REFLECT" или "SYMMETRIC". |
© 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/r2.3/api_docs/python/tf/pad