Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
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.
Thuộc tính công khai
Chức năng công cộng
nút
::tensorflow::Node * node() const
operator::tensorflow::Input() const
toán tử::tenorflow::Đầu ra
operator::tensorflow::Output() const
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-07-26 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-07-26 UTC."],[],[],null,["# tensorflow::ops::CompareAndBitpack Class Reference\n\ntensorflow::ops::CompareAndBitpack\n==================================\n\n`#include \u003cmath_ops.h\u003e`\n\nCompare values of `input` to `threshold` and pack resulting bits into a `uint8`.\n\nSummary\n-------\n\nEach comparison returns a boolean `true` (if `input_value \u003e threshold`) or and `false` otherwise.\n\nThis operation is useful for Locality-Sensitive-Hashing (LSH) and other algorithms that use hashing approximations of cosine and `L2` distances; codes can be generated from an input via:\n\n\n```transact-sql\ncodebook_size = 50\ncodebook_bits = codebook_size * 32\ncodebook = tf.get_variable('codebook', [x.shape[-1].value, codebook_bits],\n dtype=x.dtype,\n initializer=tf.orthogonal_initializer())\ncodes = compare_and_threshold(tf.matmul(x, codebook), threshold=0.)\ncodes = tf.bitcast(codes, tf.int32) # go from uint8 to int32\n# now codes has shape x.shape[:-1] + [codebook_size]\n```\n\n\u003cbr /\u003e\n\n**NOTE**: Currently, the innermost dimension of the tensor must be divisible by 8.\n\nGiven an `input` shaped `[s0, s1, ..., s_n]`, the output is a `uint8` tensor shaped `[s0, s1, ..., s_n / 8]`.\n\nArguments:\n\n- scope: A [Scope](/versions/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object\n- input: Values to compare against `threshold` and bitpack.\n- threshold: Threshold to compare against.\n\n\u003cbr /\u003e\n\nReturns:\n\n- [Output](/versions/r2.3/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output): The bitpacked comparisons.\n\n\u003cbr /\u003e\n\n| ### Constructors and Destructors ||\n|---|---|\n| [CompareAndBitpack](#classtensorflow_1_1ops_1_1_compare_and_bitpack_1aa00f05feb63c6001dbeb274f30d67977)`(const ::`[tensorflow::Scope](/versions/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope)` & scope, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` input, ::`[tensorflow::Input](/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)` threshold)` ||\n\n| ### Public attributes ||\n|-------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|\n| [operation](#classtensorflow_1_1ops_1_1_compare_and_bitpack_1a844ac2bc7be66b00b7165a65b4fd7b5c) | [Operation](/versions/r2.3/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation) |\n| [output](#classtensorflow_1_1ops_1_1_compare_and_bitpack_1a52739fa1033fe1e93ee013270d8adb3c) | `::`[tensorflow::Output](/versions/r2.3/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output) |\n\n| ### Public functions ||\n|-------------------------------------------------------------------------------------------------------------------------------|------------------------|\n| [node](#classtensorflow_1_1ops_1_1_compare_and_bitpack_1af6f8f9c40e4b60d75a6a6eb9d0c39ae8)`() const ` | `::tensorflow::Node *` |\n| [operator::tensorflow::Input](#classtensorflow_1_1ops_1_1_compare_and_bitpack_1a107c8a31460e12f5d2c4892c9e3c6c1e)`() const ` | ` ` ` ` |\n| [operator::tensorflow::Output](#classtensorflow_1_1ops_1_1_compare_and_bitpack_1ade9a5b902ca0f3af8969b0157da966de)`() const ` | ` ` ` ` |\n\nPublic attributes\n-----------------\n\n### operation\n\n```text\nOperation operation\n``` \n\n### output\n\n```text\n::tensorflow::Output output\n``` \n\nPublic functions\n----------------\n\n### CompareAndBitpack\n\n```gdscript\n CompareAndBitpack(\n const ::tensorflow::Scope & scope,\n ::tensorflow::Input input,\n ::tensorflow::Input threshold\n)\n``` \n\n### node\n\n```gdscript\n::tensorflow::Node * node() const \n``` \n\n### operator::tensorflow::Input\n\n```gdscript\n operator::tensorflow::Input() const \n``` \n\n### operator::tensorflow::Output\n\n```gdscript\n operator::tensorflow::Output() const \n```"]]