тензорный поток:: опс:: СравнитьИБитпак
#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]
ПРИМЕЧАНИЕ . В настоящее время самое внутреннее измерение тензора должно делиться на 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
оператор::tensorflow::Input
operator::tensorflow::Input() const
оператор::tensorflow::Выход
operator::tensorflow::Output() const