当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.sparse.add用法及代码示例


添加两个张量,每个张量中至少有一个是 SparseTensor

用法

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

参数

  • a 第一个操作数; SparseTensorTensor
  • b 第二个操作数; SparseTensorTensor 。至少一个操作数必须是稀疏的。
  • threshold 一个 0-D Tensor 。确定输出值/索引对是否占用空间的幅度阈值。如果它们是真实的,它的 dtype 应该与值匹配;如果后者是 complex64/complex128,那么 dtype 应该相应地是 float32/float64。

返回

  • A SparseTensorTensor ,表示总和。

抛出

  • TypeError 如果 ab 都是 Tensor s。请改用tf.add()

如果传入了一个 SparseTensor 和一个 Tensor,则返回一个 Tensor 。如果两个参数都是 SparseTensor ,则返回 SparseTensor 。参数的顺序无关紧要。使用 vanilla tf.add() 添加两个密集的 Tensor s。

两个操作数的形状必须匹配:不支持广播。

假设任何输入SparseTensor 的索引都按标准字典顺序排序。如果不是这种情况,请在此步骤之前运行SparseReorder 以恢复索引顺序。

如果两个参数都是稀疏的,我们执行 "clipping" 如下。默认情况下,如果两个值在某个索引处总和为零,则输出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 将消失。

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.sparse.add。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。