tf.sparse.map_values

Applies op to the .values tensor of one or more SparseTensors.

Replaces any SparseTensor in args or kwargs with its values tensor (which contains the non-default values for the SparseTensor), and then calls op. Returns a SparseTensor that is constructed from the input SparseTensors' indices, dense_shape, and the value returned by the op.

If the input arguments contain multiple SparseTensors, then they must have equal indices and dense shapes.

Examples:

s = tf.sparse.from_dense([[1, 2, 0],
                          [0, 4, 0],
                          [1, 0, 0]])
tf.sparse.to_dense(tf.sparse.map_values(tf.ones_like, s)).numpy()
array([[1, 1, 0],
       [0, 1, 0],
       [1, 0, 0]], dtype=int32)
tf.sparse.to_dense(tf.sparse.map_values(tf.multiply, s, s)).numpy()
array([[ 1,  4,  0],
       [ 0, 16,  0],
       [ 1,  0,  0]], dtype=int32)
tf.sparse.to_dense(tf.sparse.map_values(tf.add, s, 5)).numpy()
array([[6, 7, 0],
       [0, 9, 0],
       [6, 0, 0]], dtype=int32)

op The operation that should be applied to the SparseTensor values. op is typically an element-wise operation (such as math_ops.add), but any operation that preserves the shape can be used.
*args Arguments for op.
**kwargs Keyword arguments for op.

A SparseTensor whose indices and dense_shape matches the indices and dense_shape of all input SparseTensors.

ValueError If args contains no SparseTensor, or if the indices or dense_shapes of the input SparseTensors are not equal.