Stay organized with collections
Save and categorize content based on your preferences.
tensorflow::ops::Fingerprint
#include <array_ops.h>
Generates fingerprint values.
Summary
Generates fingerprint values of data
.
Fingerprint op considers the first dimension of data
as the batch dimension, and output[i]
contains the fingerprint value generated from contents in data[i, ...]
for all i
.
Fingerprint op writes fingerprint values as byte arrays. For example, the default method farmhash64
generates a 64-bit fingerprint value at a time. This 8-byte value is written out as an uint8
array of size 8, in little-endian order.
For example, suppose that data
has data type DT_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:
Fingerprint(data) == Fingerprint(Reshape(data, ...))
Fingerprint(data) == Fingerprint(Bitcast(data, ...))
For string data, one should expect Fingerprint(data) != Fingerprint(ReduceJoin(data))
in general.
Arguments:
- scope: A Scope object
- data: Must have rank 1 or higher.
- method: Fingerprint method used by this op. Currently available method is
farmhash::fingerprint64
.
Returns:
Output
: A two-dimensional Tensor
of type tf.uint8
. The first dimension equals to data
's first dimension, and the second dimension size depends on the fingerprint algorithm.
Public attributes
Public functions
node
::tensorflow::Node * node() const
operator::tensorflow::Input() const
operator::tensorflow::Output
operator::tensorflow::Output() const
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2020-04-20 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2020-04-20 UTC."],[],[],null,["# tensorflow::ops::Fingerprint Class Reference\n\ntensorflow::ops::Fingerprint\n============================\n\n`#include \u003carray_ops.h\u003e`\n\nGenerates fingerprint values.\n\nSummary\n-------\n\nGenerates fingerprint values of `data`.\n\n[Fingerprint](/versions/r2.0/api_docs/cc/class/tensorflow/ops/fingerprint#classtensorflow_1_1ops_1_1_fingerprint) op considers the first dimension of `data` as the batch dimension, and `output[i]` contains the fingerprint value generated from contents in `data[i, ...]` for all `i`.\n\n[Fingerprint](/versions/r2.0/api_docs/cc/class/tensorflow/ops/fingerprint#classtensorflow_1_1ops_1_1_fingerprint) op writes fingerprint values as byte arrays. For example, the default method `farmhash64` generates a 64-bit fingerprint value at a time. This 8-byte value is written out as an `uint8` array of size 8, in little-endian order.\n\nFor example, suppose that `data` has data type `DT_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, :, :]`.\n\nNote that this op fingerprints the raw underlying buffer, and it does not fingerprint [Tensor](/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_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:\n\n\n```text\nFingerprint(data) == Fingerprint(Reshape(data, ...))\nFingerprint(data) == Fingerprint(Bitcast(data, ...))\n```\n\n\u003cbr /\u003e\n\nFor string data, one should expect `Fingerprint(data) != Fingerprint(ReduceJoin(data))` in general.\n\nArguments:\n\n- scope: A [Scope](/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object\n- data: Must have rank 1 or higher.\n- method: [Fingerprint](/versions/r2.0/api_docs/cc/class/tensorflow/ops/fingerprint#classtensorflow_1_1ops_1_1_fingerprint) method used by this op. Currently available method is `farmhash::fingerprint64`.\n\n\u003cbr /\u003e\n\nReturns:\n\n- [Output](/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output): A two-dimensional [Tensor](/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) of type `tf.uint8`. The first dimension equals to `data`'s first dimension, and the second dimension size depends on the fingerprint algorithm.\n\n\u003cbr /\u003e\n\n| ### Constructors and Destructors ||\n|---|---|\n| [Fingerprint](#classtensorflow_1_1ops_1_1_fingerprint_1a5a9ba3aaf3975b520b93b93f97d3218e)`(const ::`[tensorflow::Scope](/versions/r2.0/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::Input](/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` data, ::`[tensorflow::Input](/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` method)` ||\n\n| ### Public attributes ||\n|-------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|\n| [fingerprint](#classtensorflow_1_1ops_1_1_fingerprint_1acb15a2bc227362487ec02887bd37371b) | `::`[tensorflow::Output](/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) |\n| [operation](#classtensorflow_1_1ops_1_1_fingerprint_1a28c7645b277237010a0c6e2b37c9e520) | [Operation](/versions/r2.0/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation) |\n\n| ### Public functions ||\n|-----------------------------------------------------------------------------------------------------------------------|------------------------|\n| [node](#classtensorflow_1_1ops_1_1_fingerprint_1a6605930068854f0e7e5ba0ad2ce90daa)`() const ` | `::tensorflow::Node *` |\n| [operator::tensorflow::Input](#classtensorflow_1_1ops_1_1_fingerprint_1af0b4d90e2ccbff5efb796771a356e94d)`() const ` | ` ` ` ` |\n| [operator::tensorflow::Output](#classtensorflow_1_1ops_1_1_fingerprint_1a1d72f0d143362ae62b95dfdadd166164)`() const ` | ` ` ` ` |\n\nPublic attributes\n-----------------\n\n### fingerprint\n\n```text\n::tensorflow::Output fingerprint\n``` \n\n### operation\n\n```text\nOperation operation\n``` \n\nPublic functions\n----------------\n\n### Fingerprint\n\n```gdscript\n Fingerprint(\n const ::tensorflow::Scope & scope,\n ::tensorflow::Input data,\n ::tensorflow::Input method\n)\n``` \n\n### node\n\n```gdscript\n::tensorflow::Node * node() const \n``` \n\n### operator::tensorflow::Input\n\n```gdscript\n operator::tensorflow::Input() const \n``` \n\n### operator::tensorflow::Output\n\n```gdscript\n operator::tensorflow::Output() const \n```"]]