コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
テンソルフロー::作戦::指紋
#include <array_ops.h>
フィンガープリント値を生成します。
まとめ
data
のフィンガープリント値を生成します。
フィンガープリントop はdata
の最初の次元をバッチ次元と見なし、 output[i]
にはすべてのi
のdata[i, ...]
の内容から生成されたフィンガープリント値が含まれます。
フィンガープリント演算は、フィンガープリント値をバイト配列として書き込みます。たとえば、デフォルトのメソッドfarmhash64
、一度に 64 ビットのフィンガープリント値を生成します。この 8 バイトの値は、サイズ 8 のuint8
配列としてリトルエンディアン順に書き込まれます。
たとえば、 data
のデータ型がDT_INT32
、形状が (2、3、4) であり、フィンガープリント メソッドがfarmhash64
であるとします。この場合、出力形状は (2, 8) です。ここで、 2 はdata
のバッチ次元サイズ、8 は各フィンガープリント値のサイズ (バイト単位) です。 output[0, :]
はdata[0, :, :]
内の 12 個の整数から生成され、同様にoutput[1, :]
はdata[1, :, :]
内の他の 12 個の整数から生成されます。
この操作は、生の基礎となるバッファーのフィンガープリントを行いますが、データ型や形状などのTensorのメタデータのフィンガープリントは行わないことに注意してください。たとえば、バッチのディメンションが同じである限り、フィンガープリントの値は再形成およびビットキャストの下では不変です。
Fingerprint(data) == Fingerprint(Reshape(data, ...))
Fingerprint(data) == Fingerprint(Bitcast(data, ...))
文字列データの場合、通常はFingerprint(data) != Fingerprint(ReduceJoin(data))
を期待する必要があります。
引数:
- スコープ:スコープオブジェクト
- データ:ランク1以上である必要があります。
- Method: この操作で使用されるフィンガープリントメソッド。現在利用可能なメソッドは
farmhash::fingerprint64
です。
戻り値:
-
Output
: tf.uint8
型の 2 次元Tensor
。最初の次元はdata
の最初の次元に等しく、2 番目の次元のサイズはフィンガープリント アルゴリズムによって異なります。
パブリック属性
公共機能
ノード
::tensorflow::Node * node() const
operator::tensorflow::Input() const
演算子::tensorflow::出力
operator::tensorflow::Output() const
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-07-26 UTC。
[null,null,["最終更新日 2025-07-26 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.2/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.2/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.2/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.2/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object\n- data: Must have rank 1 or higher.\n- method: [Fingerprint](/versions/r2.2/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.2/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output): A two-dimensional [Tensor](/versions/r2.2/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.2/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::Input](/versions/r2.2/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` data, ::`[tensorflow::Input](/versions/r2.2/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.2/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) |\n| [operation](#classtensorflow_1_1ops_1_1_fingerprint_1a28c7645b277237010a0c6e2b37c9e520) | [Operation](/versions/r2.2/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```"]]