tf.compat.v1.sparse_placeholder

Inserts a placeholder for a sparse tensor that will be always fed.

For example:

x = tf.compat.v1.sparse.placeholder(tf.float32)
y = tf.sparse.reduce_sum(x)

with tf.compat.v1.Session() as sess:
  print(sess.run(y))  # ERROR: will fail because x was not fed.

  indices = np.array([[3, 2, 0], [4, 5, 1]], dtype=np.int64)
  values = np.array([1.0, 2.0], dtype=np.float32)
  shape = np.array([7, 9, 2], dtype=np.int64)
  print(sess.run(y, feed_dict={
    x: tf.compat.v1.SparseTensorValue(indices, values, shape)}))  # Will
    succeed.
  print(sess.run(y, feed_dict={
    x: (indices, values, shape)}))  # Will succeed.

  sp = tf.sparse.SparseTensor(indices=indices, values=values,
                              dense_shape=shape)
  sp_value = sp.eval(session=sess)
  print(sess.run(y, feed_dict={x: sp_value}))  # Will succeed.

@compatibility{eager} Placeholders are not compatible with eager execution.

Args
dtype The type of values elements in the tensor to be fed.
shape The shape of the tensor to be fed (optional). If the shape is not specified, you can feed a sparse tensor of any shape.
name A name for prefixing the operations (optional).
Returns
A SparseTensor that may be used as a handle for feeding a value, but not evaluated directly.
Raises
RuntimeError if eager execution is enabled

© 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.4/api_docs/python/tf/compat/v1/sparse_placeholder