|TensorFlow 1 version||View source on GitHub|
Generates fingerprint values.
tf.fingerprint( data, method='farmhash64', name=None )
Generates fingerprint values of
Fingerprint op considers the first dimension of
data as the batch dimension,
output[i] contains the fingerprint value generated from contents in
data[i, ...] for all
Fingerprint op writes fingerprint values as byte arrays. For example, the
farmhash64 generates a 64-bit fingerprint value at a time.
This 8-byte value is written out as an
tf.uint8 array of size 8, in
For example, suppose that
data has data type
tf.int32 and shape (2, 3, 4),
and that the fingerprint method is
farmhash64. In this case, the output
shape is (2, 8), where 2 is the batch dimension size of
data, and 8 is the
size of each fingerprint value in bytes.
output[0, :] is generated from
12 integers in
data[0, :, :] and similarly
output[1, :] is generated from
other 12 integers in
data[1, :, :].
Note that this op fingerprints the raw underlying buffer, and it does not fingerprint Tensor's metadata such as data type and/or shape. For example, the fingerprint values are invariant under reshapes and bitcasts as long as the batch dimension remain the same:
tf.fingerprint(data) == tf.fingerprint(tf.reshape(data, ...)) tf.fingerprint(data) == tf.fingerprint(tf.bitcast(data, ...))
For string data, one should expect
tf.fingerprint(tf.string.reduce_join(data)) in general.
Tensor. Must have rank 1 or higher.
tf.string. Fingerprint method used by this op. Currently available method is
name: A name for the operation (optional).
Tensor of type
tf.uint8. The first dimension equals to
data's first dimension, and the second dimension size depends on the