テンソルフロー::作戦:: StringToHashBucketStrong

#include <string_ops.h>

入力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])

引数:

  • スコープ:スコープオブジェクト
  • input: ハッシュ バケットを割り当てる文字列。
  • num_buckets: バケットの数。
  • key: ハッシュ関数のシードに使用されるキー。2 つの uint64 要素のリストとして渡されます。

戻り値:

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

StringToHashBucketStrong (const :: tensorflow::Scope & scope, :: tensorflow::Input input, int64 num_buckets, const gtl::ArraySlice< int > & key)

パブリック属性

operation
output

公共機能

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

パブリック属性

手術

Operation operation

出力

::tensorflow::Output output

公共機能

StringToHashBucketStrong

 StringToHashBucketStrong(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  int64 num_buckets,
  const gtl::ArraySlice< int > & key
)

ノード

::tensorflow::Node * node() const 

演算子::tensorflow::入力

 operator::tensorflow::Input() const 

演算子::tensorflow::出力

 operator::tensorflow::Output() const