tf.squeeze
| Просмотреть исходный код на GitHub |
Удаляет измерения размера 1 из формы тензора.
tf.squeeze(
input, axis=None, name=None
)
Для данного тензора input, эта операция возвращает тензор того же типа, из которого удалены все измерения размера 1. Если вы не хотите удалять все измерения размера 1, можно удалить конкретные измерения размера 1, указав axis.
Например:
# 't' is a tensor of shape [1, 2, 1, 3, 1, 1] tf.shape(tf.squeeze(t)) # [2, 3]
Или, чтобы удалить конкретные измерения размера 1:
# 't' is a tensor of shape [1, 2, 1, 3, 1, 1] tf.shape(tf.squeeze(t, [2, 4])) # [1, 2, 3, 1]
В отличие от более старой операции tf.compat.v1.squeeze, эта операция не принимает устаревшего аргумента squeeze_dims.
Примечание: еслиinput— этоtf.RaggedTensor, то эта операция занимаетO(N)времени, гдеN— количество элементов в сжимаемых измерениях.
| Аргументы | |
|---|---|
input | Tensor. Тензор, который нужно сжать. |
axis | Необязательный список ints. По умолчанию []. Если указан, сжимаются только перечисленные измерения. Индекс измерения начинается с 0. Ошибка, если сжимать измерение, которое не равно 1. Должен находиться в диапазоне [-rank(input), rank(input)). Должен быть указан, если input — RaggedTensor . |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
Tensor. Имеет тот же тип, что и input. Содержит те же данные, что и input, но с удаленными одним или несколькими измерениями размера 1. |
| Исключения | |
|---|---|
ValueError | Вход не может быть преобразован в тензор, или указанное измерение не может быть сжато. |
© 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.4/api_docs/python/tf/squeeze