入力 Tensor の各文字列をバケットの数によってそのハッシュ mod に変換します。
ハッシュ関数は、プロセス内の文字列の内容を決定します。ハッシュ関数はキー付きハッシュ関数であり、属性 `key` がハッシュ関数のキーを定義します。 `key` は 2 つの要素の配列です。
強力なハッシュは、追加コンポーネントを含む URL など、入力が悪意のあるものである可能性がある場合に重要です。攻撃者は、サービス拒否攻撃のために入力を同じバケットにハッシュしたり、結果を歪めたりしようとする可能性があります。強力なハッシュを使用すると、バケット全体に偏ったハッシュ値分布を持つ入力の検索を困難にすることができます。これには、攻撃者が知らない高エントロピー (ランダム) 「キー」によってハッシュ関数がシードされることが必要です。
さらなる堅牢性を得るには、「tf.string_to_hash_bucket_fast」よりも約 4 倍高い計算時間のコストがかかります。
例:
>>> tf.strings.to_hash_bucket_strong(["Hello", "TF"], 3, [1, 2]).numpy() array([2, 0])
定数
弦 | OP_NAME | TensorFlow コア エンジンによって認識される、この演算の名前 |
パブリックメソッド
出力< TInt64 > | asOutput () テンソルのシンボリック ハンドルを返します。 |
静的ToHashBucketStrong | |
出力< TInt64 > | 出力() 入力 `string_tensor` と同じ形状の Tensor。 |
継承されたメソッド
定数
パブリック静的最終文字列OP_NAME
TensorFlow コア エンジンによって認識される、この演算の名前
パブリックメソッド
public Output < TInt64 > asOutput ()
テンソルのシンボリック ハンドルを返します。
TensorFlow オペレーションへの入力は、別の TensorFlow オペレーションの出力です。このメソッドは、入力の計算を表すシンボリック ハンドルを取得するために使用されます。
public static ToHashBucketStrong create (スコープスコープ、オペランド< TString > 入力、Long numBuckets、List<Long> キー)
新しい ToHashBucketStrong オペレーションをラップするクラスを作成するファクトリ メソッド。
パラメーター
範囲 | 現在のスコープ |
---|---|
入力 | ハッシュバケットを割り当てる文字列。 |
バケット数 | バケットの数。 |
鍵 | ハッシュ関数のシードに使用されるキー。2 つの uint64 要素のリストとして渡されます。 |
戻り値
- ToHashBucketStrong の新しいインスタンス