تدفق التوتر:: العمليات:: StringToHashBucketStrong

#include <string_ops.h>

يحول كل سلسلة في Tensor الإدخال إلى تعديل التجزئة الخاص به بواسطة عدد من المجموعات.

ملخص

تعتبر وظيفة التجزئة حتمية على محتوى السلسلة داخل العملية. وظيفة التجزئة هي وظيفة تجزئة ذات مفاتيح، حيث يحدد key السمة مفتاح وظيفة التجزئة. key هو مجموعة من عنصرين.

تعتبر التجزئة القوية مهمة عندما تكون المدخلات ضارة، على سبيل المثال، عناوين URL التي تحتوي على مكونات إضافية. يمكن أن يحاول الخصوم تجزئة مدخلاتهم إلى نفس المجموعة لهجوم رفض الخدمة أو لتحريف النتائج. يمكن استخدام التجزئة القوية لتجعل من الصعب العثور على المدخلات ذات توزيع قيمة التجزئة المنحرفة على المجموعات. يتطلب هذا أن يتم زرع دالة التجزئة بواسطة "مفتاح" عالي الإنتروبيا (عشوائي) غير معروف للخصم.

تأتي المتانة الإضافية بتكلفة وقت حوسبة أعلى بمقدار 4 مرات تقريبًا من tf.string_to_hash_bucket_fast .

أمثلة:

tf.strings.to_hash_bucket_strong(["Hello"، "TF"]، 3، [1، 2]).numpy() array([2, 0])

الحجج:

  • النطاق: كائن النطاق
  • الإدخال: السلاسل لتعيين دلو التجزئة.
  • num_buckets: عدد الدلاء.
  • المفتاح: المفتاح المستخدم لزرع دالة التجزئة، ويتم تمريره كقائمة مكونة من عنصرين uint64.

العوائد:

  • Output : موتر له نفس شكل موتر الإدخال string_tensor .

البنائين والمدمرين

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