tf.sparse.reshape
| Просмотреть исходный код на GitHub |
Преобразует SparseTensor для представления значений в новой плотной форме.
tf.sparse.reshape(
sp_input, shape, name=None
)
Эта операция имеет те же семантические значения, что и reshape над представленным плотным тензором. Индексы ненулевых значений в sp_input пересчитываются на основе новой плотной формы, и возвращается новый SparseTensor, содержащий новые индексы и новую форму. Порядок ненулевых значений в sp_input не изменяется.
Если один компонент shape представляет собой специальное значение -1, размер этого измерения вычисляется таким образом, чтобы общий размер плотного тензора оставался постоянным. В максимальном одном компоненте shape может быть значение -1. Количество плотных элементов, подразумеваемых shape, должно совпадать с количеством плотных элементов, изначально представленных sp_input.
Например, если sp_input имеет форму [2, 3, 6] и indices / values:
[0, 0, 0]: a [0, 0, 1]: b [0, 1, 0]: c [1, 0, 0]: d [1, 2, 3]: e
и shape равно [9, -1], то выходом будет SparseTensor с формой [9, 4] и indices / values:
[0, 0]: a [0, 1]: b [1, 2]: c [4, 2]: d [8, 1]: e
| Аргументы | |
|---|---|
sp_input | Входной SparseTensor. |
shape | 1-мерный (векторный) целочисленный массив int64 Tensor, определяющий новую плотную форму представленного SparseTensor. |
name | Префикс имени для возвращаемых тензоров (необязательно) |
| Возвращаемое значение | |
|---|---|
SparseTensor с теми же ненулевыми значениями, но с индексами, рассчитанными по новой плотной форме. |
| Исключения | |
|---|---|
TypeError | Если sp_input не является SparseTensor. |
ValueError | Если аргумент shape запрашивает SparseTensor с другим количеством элементов, чем у sp_input. |
ValueError | Если у shape более одного выводимого (== -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/r2.3/api_docs/python/tf/sparse/reshape