tf.compat.v1.sparse_placeholder  |  TensorFlow v2.16.1 (original) (raw)

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

View aliases

Compat aliases for migration

SeeMigration guide for more details.

tf.compat.v1.sparse.placeholder

tf.compat.v1.sparse_placeholder(
    dtype, shape=None, name=None
)

Migrate to TF2

This API is not compatible with eager execution and tf.function. To migrate to TF2, rewrite the code to be compatible with eager execution. Check themigration guideon replacing Session.run calls. In TF2, you can just pass tensors directly into ops and layers. If you want to explicitly set up your inputs, also seeKeras functional API on how to use tf.keras.Input to replace tf.compat.v1.sparse_placeholder.tf.function arguments also do the job of tf.compat.v1.sparse_placeholder. For more details please read Better performance with tf.function.

Description

Used in the notebooks

Used in the tutorials
Universal Sentence Encoder-Lite demo

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.
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