tensorflow :: ops ::指紋

#include <array_ops.h>

フィンガープリント値を生成します。

概要

dataフィンガープリント値を生成しdata

Fingerprint opは、 dataの最初の次元をバッチ次元と見なし、 output[i]は、すべてのi data[i, ...]コンテンツから生成された指紋値が含まれます。

Fingerprint opは、フィンガープリント値をバイト配列として書き込みます。たとえば、デフォルトのメソッドfarmhash64は、 farmhash64 64ビットのフィンガープリント値を生成します。この8バイトの値は、サイズ8のuint8配列としてリトルエンディアンの順序で書き出されuint8

例えば、と仮定dataデータ型有しDT_INT32及び形状(2、3、4)、そして指紋法であることfarmhash64 。この場合、出力形状は(2、8)です。ここで、2はdataバッチ次元サイズ、8はバイト単位の各フィンガープリント値のサイズです。 output[0, :]data[0, :, :]の12の整数から生成されoutput[1, :]同様に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番目の次元のサイズはフィンガープリントアルゴリズムによって異なります。

コンストラクタとデストラクタ

Fingerprint (const :: tensorflow::Scope & scope, :: tensorflow::Input data, :: tensorflow::Input method)

パブリック属性

fingerprint
operation

公の行事

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

パブリック属性

指紋

::tensorflow::Output fingerprint

操作

Operation operation

公の行事

指紋

 Fingerprint(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input data,
  ::tensorflow::Input method
)

ノード

::tensorflow::Node * node() const 

operator :: tensorflow :: Input

 operator::tensorflow::Input() const 

operator :: tensorflow :: Output

 operator::tensorflow::Output() const