當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.fingerprint用法及代碼示例


生成指紋值。

用法

tf.fingerprint(
    data, method='farmhash64', name=None
)

參數

  • data 一個Tensor。必須有等級 1 或更高。
  • method Tensor 類型為 tf.string 。此操作使用的指紋方法。當前可用的方法是 farmhash64
  • name 操作的名稱(可選)。

返回

  • tf.uint8 類型的二維 Tensor 。第一個維度等於data 的第一個維度,第二個維度的大小取決於指紋算法。

生成 data 的指紋值。

指紋運算將data的第一個維度作為批量維度,output[i]包含所有idata[i, ...]中的內容生成的指紋值。

指紋運算將指紋值寫入字節數組。例如,默認方法farmhash64 一次生成一個 64 位指紋值。此 8 字節值以小端順序寫出為大小為 8 的 tf.uint8 數組。

例如,假設 data 具有數據類型 tf.int32 和形狀 (2, 3, 4),並且指紋方法是 farmhash64 。在這種情況下,輸出形狀為 (2, 8),其中 2 是 data 的批量維度大小,8 是每個指紋值的大小(以字節為單位)。 output[0,:] 是從 data[0,:,:] 中的 12 個整數生成的,類似地 output[1,:] 是從 data[1,:,:] 中的其他 12 個整數生成的。

請注意,此操作會識別原始底層緩衝區,並且不會識別 Tensor 的元數據,例如數據類型和/或形狀。例如,指紋值在重塑和比特廣播下是不變的,隻要批量維度保持不變:

tf.fingerprint(data) == tf.fingerprint(tf.reshape(data, ...))
tf.fingerprint(data) == tf.fingerprint(tf.bitcast(data, ...))

對於字符串數據,應該期望tf.fingerprint(data) != tf.fingerprint(tf.string.reduce_join(data))一般來說。

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.fingerprint。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。