tensorflow:: ops:: CompareAndBitpack
#include <math_ops.h> input মানগুলোকে threshold সাথে তুলনা করুন এবং প্রাপ্ত বিটগুলোকে একটি uint8 ফাইলে প্যাক করুন।
সারসংক্ষেপ
প্রতিটি তুলনার ক্ষেত্রে একটি বুলিয়ান মান রিটার্ন করা হয়: true (যদি input_value > threshold ) এবং অন্যথায় false ।
এই অপারেশনটি লোকালিটি-সেনসিটিভ-হ্যাশিং (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]
দ্রষ্টব্য : বর্তমানে, টেনসরটির সর্বনিম্ন মাত্রা অবশ্যই ৮ দ্বারা বিভাজ্য হতে হবে।
[s0, s1, ..., s_n] আকারের একটি input দেওয়া হলে, আউটপুটটি হবে [s0, s1, ..., s_n / 8] আকারের একটি uint8 টেনসর।
যুক্তি:
- স্কোপ: একটি স্কোপ অবজেক্ট
- ইনপুট:
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
CompareAndBitpack( const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input threshold )
নোড
::tensorflow::Node * node() const
অপারেটর::টেনসরফ্লো::ইনপুট
operator::tensorflow::Input() const
অপারেটর::টেনসরফ্লো::আউটপুট
operator::tensorflow::Output() const