Converts each string in the input Tensor to its hash mod by a number of buckets.
The hash function is deterministic on the content of the string within the process. The hash function is a keyed hash function, where attribute `key` defines the key of the hash function. `key` is an array of 2 elements.
A strong hash is important when inputs may be malicious, e.g. URLs with additional components. Adversaries could try to make their inputs hash to the same bucket for a denial-of-service attack or to skew the results. A strong hash can be used to make it difficult to find inputs with a skewed hash value distribution over buckets. This requires that the hash function is seeded by a high-entropy (random) "key" unknown to the adversary.
The additional robustness comes at a cost of roughly 4x higher compute time than `tf.string_to_hash_bucket_fast`.
Examples:
>>> tf.strings.to_hash_bucket_strong(["Hello", "TF"], 3, [1, 2]).numpy() array([2, 0])
Constants
String | OP_NAME | The name of this op, as known by TensorFlow core engine |
Public Methods
Inherited Methods
boolean |
equals(Object arg0)
|
final Class<?> |
getClass()
|
int |
hashCode()
|
final void |
notify()
|
final void |
notifyAll()
|
String |
toString()
|
final void |
wait(long arg0, int arg1)
|
final void |
wait(long arg0)
|
final void |
wait()
|
abstract ExecutionEnvironment |
env()
Return the execution environment this op was created in.
|
abstract Operation |
Constants
public static final String OP_NAME
The name of this op, as known by TensorFlow core engine
Public Methods
public Output<TInt64> asOutput ()
Returns the symbolic handle of the tensor.
Inputs to TensorFlow operations are outputs of another TensorFlow operation. This method is used to obtain a symbolic handle that represents the computation of the input.
public static ToHashBucketStrong create (Scope scope, Operand<TString> input, Long numBuckets, List<Long> key)
Factory method to create a class wrapping a new ToHashBucketStrong operation.
Parameters
scope | current scope |
---|---|
input | The strings to assign a hash bucket. |
numBuckets | The number of buckets. |
key | The key used to seed the hash function, passed as a list of two uint64 elements. |
Returns
- a new instance of ToHashBucketStrong