dòng chảy căng:: ôi:: So sánhAndBitpack

#include <math_ops.h>

So sánh các giá trị của input với threshold và đóng gói các bit kết quả vào một uint8 .

Bản tóm tắt

Mỗi so sánh trả về một giá trị boolean true (nếu input_value > threshold ) hoặc và false nếu ngược lại.

Thao tác này hữu ích cho Băm nhạy cảm cục bộ (LSH) và các thuật toán khác sử dụng phép băm gần đúng của khoảng cách cosine và L2 ; mã có thể được tạo từ đầu vào thông qua:

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]

LƯU Ý : Hiện tại, kích thước trong cùng của tensor phải chia hết cho 8.

Cho một input có hình dạng [s0, s1, ..., s_n] , đầu ra là một tensor uint8 có hình dạng [s0, s1, ..., s_n / 8] .

Lập luận:

  • phạm vi: Một đối tượng Phạm vi
  • đầu vào: Các giá trị để so sánh với threshold và bitpack.
  • ngưỡng: Ngưỡng để so sánh với.

Trả về:

  • Output : Các so sánh được đóng gói bit.

Hàm tạo và hàm hủy

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

Thuộc tính công khai

operation
output

Chức năng công cộng

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

Thuộc tính công khai

hoạt động

Operation operation

đầu ra

::tensorflow::Output output

Chức năng công cộng

So sánhAndBitpack

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

nút

::tensorflow::Node * node() const 

toán tử::tenorflow::Đầu vào

 operator::tensorflow::Input() const 

toán tử::tenorflow::Đầu ra

 operator::tensorflow::Output() const