Google I/O एक लपेट है! TensorFlow सत्रों पर पकड़ बनाएं सत्र देखें

टेंसरफ़्लो :: ऑप्स :: तुलनाएंडबैटपैक

#include <math_ops.h>

threshold के input मूल्यों की तुलना करें और परिणामस्वरूप बिट्स को एक uint8 में पैक करें।

सारांश

प्रत्येक तुलना एक बूलियन true (यदि input_value > threshold ) देता है या अन्यथा false है।

यह ऑपरेशन लोकलिटी-सेंसिटिव-हाशिंग (एलएसएच) और अन्य एल्गोरिदम के लिए उपयोगी है जो कोसाइन और 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 से विभाज्य होना चाहिए।

एक input आकार [s0, s1, ..., s_n] को देखते हुए, आउटपुट एक uint8 टेंसर के आकार का है [s0, s1, ..., s_n / 8]

तर्क:

  • गुंजाइश: एक स्कोप ऑब्जेक्ट
  • इनपुट: मूल्य threshold और बिटपैक के खिलाफ तुलना करने के लिए।
  • दहलीज: के खिलाफ तुलना करने के लिए थ्रेसहोल्ड।

रिटर्न:

  • Output : बिटपैक की तुलना।

कंस्ट्रक्टर और डिस्ट्रक्टर्स

CompareAndBitpack (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input threshold)

सार्वजनिक विशेषताएँ

operation
output

सार्वजनिक कार्य

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

सार्वजनिक विशेषताएँ

ऑपरेशन

Operation operation

उत्पादन

::tensorflow::Output output

सार्वजनिक कार्य

तुलनाएंडबैटपैक

 CompareAndBitpack(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input threshold
)

नोड

::tensorflow::Node * node() const 

ऑपरेटर :: टेंसरफ़्लो :: इनपुट

 operator::tensorflow::Input() const 
है

ऑपरेटर :: टेंसरफ़्लो :: आउटपुट

 operator::tensorflow::Output() const