ממירה כל מחרוזת ב-Tensor הקלט למוד ה-hash שלה במספר דליים.
פונקציית ה-hash היא דטרמיניסטית על תוכן המחרוזת בתוך התהליך. פונקציית ה-hash היא פונקציית Hash עם מפתח, כאשר התכונה `key` מגדירה את המפתח של פונקציית ה-hash. 'מפתח' הוא מערך של 2 אלמנטים.
Hash חזק חשוב כאשר קלטים עשויים להיות זדוניים, למשל כתובות URL עם רכיבים נוספים. יריבים יכולים לנסות להפוך את התשומות שלהם ל-hash לאותו דלי לצורך התקפת מניעת שירות או להטות את התוצאות. ניתן להשתמש ב-hash חזק כדי להקשות על מציאת תשומות עם התפלגות ערכי hash מוטה על פני דליים. זה מחייב שפונקציית ה-hash תוצב על ידי "מפתח" בעל אנטרופיה גבוהה (אקראית) שאינו ידוע ליריב.
החוסן הנוסף מגיע בעלות של זמן חישוב גבוה בערך פי 4 מ-'tf.string_to_hash_bucket_fast'.
דוגמאות:
>>> tf.strings.to_hash_bucket_strong(["שלום", "TF"], 3, [1, 2]).numpy() array([2, 0])
קבועים
חוּט | OP_NAME | השם של המבצע הזה, כפי שידוע על ידי מנוע הליבה של TensorFlow |
שיטות ציבוריות
פלט < TInt64 > | asOutput () מחזירה את הידית הסמלית של הטנזור. |
סטטי ToHashBucketStrong | |
פלט < TInt64 > | פלט () טנסור באותו צורה כמו הקלט `string_tensor`. |
שיטות בירושה
קבועים
מחרוזת סופית סטטית ציבורית OP_NAME
השם של המבצע הזה, כפי שידוע על ידי מנוע הליבה של TensorFlow
שיטות ציבוריות
פלט ציבורי < TInt64 > asOutput ()
מחזירה את הידית הסמלית של הטנזור.
כניסות לפעולות TensorFlow הן יציאות של פעולת TensorFlow אחרת. שיטה זו משמשת להשגת ידית סמלית המייצגת את חישוב הקלט.
יצירת ToHashBucketStrong סטטית ציבורית ( scope scope, Operand < TSString > input, Long numBuckets, List<Long> key)
שיטת מפעל ליצירת מחלקה העוטפת פעולת ToHashBucketStrong חדשה.
פרמטרים
תְחוּם | ההיקף הנוכחי |
---|---|
קֶלֶט | המחרוזות להקצאת דלי גיבוב. |
numBuckets | מספר הדליים. |
מַפְתֵחַ | המפתח ששימש לפתיחת פונקציית ה-hash, הועבר כרשימה של שני רכיבי uint64. |
החזרות
- מופע חדש של ToHashBucketStrong