Spec-Zone.ru › TensorFlow

tf.sparse.expand_dims

Возвращает тензор с осью длиной 1, добавленной в индексе axis.

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

Псевдонимы для миграции

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.sparse.expand_dims

tf.sparse.expand_dims(
    sp_input, axis=None, name=None
)

Учитывая тензор input, эта операция вставляет измерение длиной 1 в индекс измерения axis формы input. Индекс измерения следует правилам индексирования Python: он нулевой, а отрицательный индекс подсчитывается от конца.

Эта операция полезна для:

  • Добавления внешнего «пакета» измерения к одному элементу.
  • Выравнивания осей для трансляции.
  • Добавления внутреннего измерения длины вектора к тензору скаляров.

Например:

Если у вас есть разреженный тензор с формой [height, width, depth]:

sp = tf.sparse.SparseTensor(indices=[[3,4,1]], values=[7,],
                            dense_shape=[10,10,3])

Вы можете добавить внешнюю batch ось, передав axis=0:

tf.sparse.expand_dims(sp, axis=0).shape.as_list()
[1, 10, 10, 3]

Новое расположение осей соответствует правилам индексирования Python list.insert(axis, 1):

tf.sparse.expand_dims(sp, axis=1).shape.as_list()
[10, 1, 10, 3]

Согласно стандартным правилам индексирования Python, отрицательное axis подсчитывается с конца, поэтому axis=-1 добавляет внутреннее измерение:

tf.sparse.expand_dims(sp, axis=-1).shape.as_list()
[10, 10, 3, 1]
Примечание: В отличие от tf.expand_dims эта функция включает значение по умолчанию для axis: -1. Таким образом, если `axis` не указан, добавляется внутреннее измерение.
sp.shape.as_list()
[10, 10, 3]
tf.sparse.expand_dims(sp).shape.as_list()
[10, 10, 3, 1]

Эта операция требует, чтобы axis был допустимым индексом для input.shape, следуя правилам индексирования Python:

-1-tf.rank(input) <= axis <= tf.rank(input)

Эта операция связана с:

  • tf.expand_dims, которая предоставляет эту функциональность для плотных тензоров.
  • tf.squeeze, которая удаляет измерения размера 1 из плотных тензоров.
  • tf.sparse.reshape, которая предоставляет более гибкие возможности изменения формы.
Аргументы
sp_input Разреженный тензор.
axis 0-D (скаляр). Указывает индекс измерения, в котором нужно расширить форму input. Должен быть в диапазоне [-rank(sp_input) - 1, rank(sp_input)]. По умолчанию -1.
name Имя выходного тензора SparseTensor.
Возвращаемое значение
Разреженный тензор с теми же данными, что и у sp_input, но его форма имеет дополнительное измерение размером 1.

© 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/sparse/expand_dims

Spec-Zone.ru

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