Spec-Zone.ru › TensorFlow 1.15

tf.sparse.concat

Просмотреть исходный код на GitHub

Конкатенирует список SparseTensor вдоль указанного измерения. (устаревшие аргументы)

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

Основные псевдонимы

`tf.sparse_concat`

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

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

tf.compat.v1.sparse.concat, tf.compat.v1.sparse_concat

tf.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/r1.15/api_docs/python/tf/sparse/concat

Spec-Zone.ru

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