Spec-Zone.ru › TensorFlow 2.3

tf.compat.v1.sparse_concat

Объединяет список SparseTensor по указанному измерению. (устаревшие аргументы)

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

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

Дополнительные сведения см. в руководстве по миграции.

tf.compat.v1.sparse.concat

tf.compat.v1.sparse_concat(
    axis, sp_inputs, name=None, expand_nonconcat_dim=False, concat_dim=None,
    expand_nonconcat_dims=None
)
Предупреждение: НЕКОТОРЫЕ АРГУМЕНТЫ УСТАРЕЛИ: (concat_dim). Они будут удалены в будущей версии. Инструкции по обновлению: concat_dim устарел, используйте axis вместо него

Объединение выполняется относительно плотных версий каждого разреженного входа. Предполагается, что каждый вход является SparseTensor, элементы которого упорядочены по возрастанию номера измерения.

Если expand_nonconcat_dim равен False, формы всех входов должны совпадать, за исключением измерения объединения. Если expand_nonconcat_dim равен True, формы входов могут различаться между всеми входами.

Списки indices, values, и shapes должны иметь одинаковую длину.

Если expand_nonconcat_dim равен False, форма выходных данных будет идентична формам входов, за исключением измерения объединения, где она будет равна сумме размеров входов по этому измерению.

Если expand_nonconcat_dim равен True, форма выходных данных по измерениям, не участвующим в объединении, будет расширена до максимального значения среди всех входов, а по измерению объединения — будет равна сумме размеров входов по этому измерению.

Элементы выходных данных будут отсортированы для сохранения порядка сортировки по возрастанию номера измерения.

Эта операция выполняется за время O(M log M), где M — общее количество ненулевых значений во всех входах. Это связано с необходимостью внутренней сортировки для эффективного объединения по произвольному измерению.

Например, если axis = 1 и входами являются

sp_inputs[0]: shape = [2, 3]
[0, 2]: "a"
[1, 0]: "b"
[1, 1]: "c"

sp_inputs[1]: shape = [2, 4]
[0, 1]: "d"
[0, 2]: "e"

то выходными данными будут

shape = [2, 7]
[0, 2]: "a"
[0, 4]: "d"
[0, 5]: "e"
[1, 0]: "b"
[1, 1]: "c"

Графически это эквивалентно

[    a] concat [  d e  ] = [    a   d e  ]
[b c  ]        [       ]   [b c          ]

Еще один пример, если 'axis = 1' и входами являются

sp_inputs[0]: shape = [3, 3]
[0, 2]: "a"
[1, 0]: "b"
[2, 1]: "c"

sp_inputs[1]: shape = [2, 4]
[0, 1]: "d"
[0, 2]: "e"

Если expand_nonconcat_dim = False, это приведёт к ошибке. Но если expand_nonconcat_dim = True, это приведёт к:

shape = [3, 7]
[0, 2]: "a"
[0, 4]: "d"
[0, 5]: "e"
[1, 0]: "b"
[2, 1]: "c"

Графически это эквивалентно

[    a] concat [  d e  ] = [    a   d e  ]
[b    ]        [       ]   [b            ]
[  c  ]                    [  c          ]
Аргументы
axis Измерение для объединения. Должно находиться в диапазоне [-ранг, ранг), где ранг — количество измерений в каждом входном SparseTensor.
sp_inputs Список SparseTensor для объединения.
name Префикс имени для возвращаемых тензоров (необязательно).
expand_nonconcat_dim Разрешить расширение по измерениям, не участвующим в объединении. По умолчанию False.
concat_dim Старое (устаревшее) имя для axis.
expand_nonconcat_dims Псевдоним для expand_nonconcat_dim
Возвращаемые значения
SparseTensor с объединёнными выходными данными.
Исключения
TypeError Если sp_inputs не является списком SparseTensor.

© 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/compat/v1/sparse_concat

Spec-Zone.ru

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