tensorflow::ops::StringToHashBucketStrong
#include <string_ops.h>Convertit chaque chaîne de caractères du tenseur d'entrée en son hachage modulo un certain nombre de compartiments.
Résumé
La fonction de hachage est déterministe par rapport au contenu de la chaîne de caractères traitée. Il s'agit d'une fonction de hachage à clé, où l'attribut key définit la clé de hachage. key est un tableau de deux éléments.
Un hachage robuste est essentiel lorsque les entrées peuvent être malveillantes, comme les URL comportant des éléments supplémentaires. Des attaquants pourraient tenter de faire en sorte que leurs entrées soient hachées dans le même compartiment pour lancer une attaque par déni de service ou pour fausser les résultats. Un hachage robuste permet de rendre difficile la détection d'entrées présentant une distribution asymétrique des valeurs de hachage. Cela nécessite que la fonction de hachage soit initialisée par une « clé » aléatoire à haute entropie, inconnue de l'attaquant.
Cette robustesse accrue a pour coût un temps de calcul environ 4 fois supérieur à celui de tf.string_to_hash_bucket_fast .
Exemples :
tf.strings.to_hash_bucket_strong(["Hello", "TF"], 3, [1, 2]).numpy() array([2, 0])
Arguments :
- portée : un objet Scope
- entrée : Les chaînes de caractères auxquelles attribuer un compartiment de hachage.
- num_buckets : Le nombre de compartiments.
- clé : La clé utilisée pour initialiser la fonction de hachage, passée sous forme de liste de deux éléments uint64.
Retours :
Constructeurs et destructeurs | |
|---|---|
StringToHashBucketStrong (const :: tensorflow::Scope & scope, :: tensorflow::Input input, int64 num_buckets, const gtl::ArraySlice< int > & key) |
attributs publics | |
|---|---|
operation | |
output | |
fonctions publiques | |
|---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const | |
attributs publics
opération
Operation operation
sortir
::tensorflow::Output output
fonctions publiques
StringToHashBucketStrong
StringToHashBucketStrong( const ::tensorflow::Scope & scope, ::tensorflow::Input input, int64 num_buckets, const gtl::ArraySlice< int > & key )
nœud
::tensorflow::Node * node() const
opérateur::tensorflow::Entrée
operator::tensorflow::Input() const
opérateur::tensorflow::Sortie
operator::tensorflow::Output() const