Spec-Zone.ru › TensorFlow

tf.sparse.add

Складывает два тензора, по крайней мере один из которых является SparseTensor.

tf.sparse.add(
    a, b, threshold=0
)

Используется в блокнотах

Используется в руководстве Используется в учебных материалах
  • Работа с разреженными тензорами
  • Федеративное обучение с большими моделями и эффективным использованием ресурсов клиентов с помощью `federated_select` и разреженной агрегации

Если переданы один SparseTensor и один Tensor, возвращается Tensor. Если оба аргумента — SparseTensors, возвращается SparseTensor. Порядок аргументов не имеет значения. Для сложения двух плотных Tensors используйте обычную функцию tf.add().

Формы обоих операндов должны совпадать: трансляция не поддерживается.

Предполагается, что индексы любых входных SparseTensor упорядочены в стандартном лексикографическом порядке. Если это не так, перед выполнением этого шага запустите SparseReorder, чтобы восстановить порядок индексов.

Если оба аргумента являются разреженными, выполняется «отсечение» следующим образом. По умолчанию, если в некотором индексе сумма двух значений равна нулю, выходной SparseTensor всё равно будет содержать эту позицию в своём индексе, а в соответствующем слоте значения будет храниться ноль. Это поведение можно изменить, указав threshold: тогда соответствующее значение и индекс не будут включены, если модуль суммы строго меньше threshold. В частности, threshold == 0.0 (значение по умолчанию) означает, что сохраняются все значения, а фактическое применение порогового значения происходит только при положительном значении.

Например, пусть логическая сумма двух разреженных операндов имеет следующий вид (в плотном представлении):

[       2]
[.1     0]
[ 6   -.2]

Тогда:

  • threshold == 0 (значение по умолчанию): будут возвращены все 5 пар индексов и значений.
  • threshold == 0.11: исчезнут только .1 и 0, а остальные три пары индексов и значений будут возвращены.
  • threshold == 0.21: исчезнут .1, 0 и -.2.
Аргументы
a Первый операнд; SparseTensor или Tensor.
b Второй операнд; SparseTensor или Tensor. По крайней мере один операнд должен быть разреженным.
threshold Скалярный Tensor. Пороговое значение модуля, определяющее, будет ли пара выходного значения и индекса занимать место. Его тип данных должен совпадать с типом данных значений, если они вещественные; если значения имеют тип complex64/complex128, тип данных порогового значения должен быть соответственно float32/float64.
Возвращает
SparseTensor или Tensor, представляющий сумму.
Вызывает исключение
TypeError Если оба a и b являются Tensors. Вместо этого используйте tf.add().

© 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/add

Spec-Zone.ru

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