يحول كل سلسلة في Tensor الإدخال إلى تعديل التجزئة الخاص به بواسطة عدد من المجموعات.
تعتبر وظيفة التجزئة حتمية على محتوى السلسلة داخل العملية. وظيفة التجزئة هي وظيفة تجزئة ذات مفاتيح، حيث تحدد السمة `مفتاح` مفتاح وظيفة التجزئة. `المفتاح` هو مصفوفة من عنصرين.
تعتبر التجزئة القوية مهمة عندما تكون المدخلات ضارة، على سبيل المثال، عناوين URL التي تحتوي على مكونات إضافية. يمكن أن يحاول الخصوم تجزئة مدخلاتهم إلى نفس المجموعة لهجوم رفض الخدمة أو لتحريف النتائج. يمكن استخدام التجزئة القوية لتجعل من الصعب العثور على المدخلات ذات توزيع قيمة التجزئة المنحرفة على المجموعات. يتطلب هذا أن يتم زرع دالة التجزئة بواسطة "مفتاح" عالي الإنتروبيا (عشوائي) غير معروف للخصم.
تأتي المتانة الإضافية بتكلفة تبلغ حوالي 4 مرات وقت حوسبة أعلى من `tf.string_to_hash_bucket_fast`.
أمثلة:
>>> tf.strings.to_hash_bucket_strong(["Hello"، "TF"]، 3، [1، 2]).numpy() array([2, 0])
الثوابت
خيط | OP_NAME | اسم هذه العملية كما هو معروف بواسطة محرك TensorFlow الأساسي |
الأساليب العامة
الإخراج <TInt64> | كإخراج () إرجاع المقبض الرمزي للموتر. |
ثابت ToHashBucketStrong | |
الإخراج <TInt64> | انتاج () موتر بنفس شكل الإدخال "string_tensor". |
الطرق الموروثة
الثوابت
السلسلة النهائية الثابتة العامة OP_NAME
اسم هذه العملية كما هو معروف بواسطة محرك TensorFlow الأساسي
الأساليب العامة
الإخراج العام <TInt64> asOutput ()
إرجاع المقبض الرمزي للموتر.
المدخلات إلى عمليات TensorFlow هي مخرجات عملية TensorFlow أخرى. يتم استخدام هذه الطريقة للحصول على مقبض رمزي يمثل حساب الإدخال.
إنشاء ToHashBucketStrong ثابت عام ( نطاق النطاق ، المعامل < TString > الإدخال، numBuckets الطويلة، مفتاح القائمة <Long>)
طريقة المصنع لإنشاء فئة تغلف عملية ToHashBucketStrong جديدة.
حدود
نِطَاق | النطاق الحالي |
---|---|
مدخل | السلاسل لتعيين دلو التجزئة. |
numBuckets | عدد الدلاء. |
مفتاح | تم تمرير المفتاح المستخدم لترسيخ دالة التجزئة كقائمة مكونة من عنصرين uint64. |
عائدات
- مثيل جديد لـ ToHashBucketStrong