CompareAndBitpack

שיעור הגמר הציבורי CompareAndBitpack

השווה ערכים של 'input' ל-'threshold' וארוז את הביטים המתקבלים לתוך 'uint8'.

כל השוואה מחזירה 'true' בוליאני (אם 'input_value > threshold') או 'false' אחרת.

פעולה זו שימושית עבור Locality-Sensitive-Hashing (LSH) ואלגוריתמים אחרים המשתמשים בקירוב גיבוב של מרחקי קוסינוס ו-'L2'; ניתן להפיק קודים מקלט דרך:

codebook_size = 50
 codebook_bits = codebook_size * 32
 codebook = tf.get_variable('codebook', [x.shape[-1].value, codebook_bits],
                            dtype=x.dtype,
                            initializer=tf.orthogonal_initializer())
 codes = compare_and_threshold(tf.matmul(x, codebook), threshold=0.)
 codes = tf.bitcast(codes, tf.int32)  # go from uint8 to int32
 # now codes has shape x.shape[:-1] + [codebook_size]
 
הערה : נכון לעכשיו, הממד הפנימי ביותר של הטנזור חייב להיות מתחלק ב-8.

בהינתן `קלט` בצורת `[s0, s1, ..., s_n]`, הפלט הוא טנסור `uint8` בצורת `[s0, s1, ..., s_n / 8]`.

קבועים

חוּט OP_NAME השם של המבצע הזה, כפי שידוע על ידי מנוע הליבה של TensorFlow

שיטות ציבוריות

פלט < TUint8 >
asOutput ()
מחזירה את הידית הסמלית של הטנזור.
static <T מרחיב את TType > CompareAndBitpack
ליצור ( היקף היקף , קלט Operand <T>, סף Operand <T>)
שיטת מפעל ליצירת מחלקה העוטפת פעולת CompareAndBitpack חדשה.
פלט < TUint8 >
פלט ()
ההשוואות עמוסות הסיביות.

שיטות בירושה

קבועים

מחרוזת סופית סטטית ציבורית OP_NAME

השם של המבצע הזה, כפי שידוע על ידי מנוע הליבה של TensorFlow

ערך קבוע: "CompareAndBitpack"

שיטות ציבוריות

פלט ציבורי < TUint8 > asOutput ()

מחזירה את הידית הסמלית של הטנזור.

כניסות לפעולות TensorFlow הן יציאות של פעולת TensorFlow אחרת. שיטה זו משמשת להשגת ידית סמלית המייצגת את חישוב הקלט.

Public static CompareAndBitpack create ( היקף היקף , קלט Operand <T>, סף Operand <T>)

שיטת מפעל ליצירת מחלקה העוטפת פעולת CompareAndBitpack חדשה.

פרמטרים
תְחוּם ההיקף הנוכחי
קֶלֶט ערכים להשוואה מול `threshold` ו-bitpack.
מפתן סף להשוואה מולו.
החזרות
  • מופע חדש של CompareAndBitpack

פלט ציבורי < TUint8 > פלט ()

ההשוואות עמוסות הסיביות.