Compara los valores de `input` con` umbral` y empaqueta los bits resultantes en un `uint8`.
Cada comparación devuelve un valor booleano "verdadero" (si "valor_entrada> umbral") o "falso" en caso contrario.
Esta operación es útil para Locality-Sensitive-Hashing (LSH) y otros algoritmos que utilizan aproximaciones hash de coseno y distancias "L2"; códigos pueden ser generados a partir de una entrada a través de:
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]
NOTA: En la actualidad, la dimensión más interna del tensor debe ser divisible por 8.Dada una `entrada` con forma de` [s0, s1, ..., s_n] `, la salida es un tensor` uint8` con forma de `[s0, s1, ..., s_n / 8]`.
Constantes
Cuerda | OP_NAME | El nombre de esta operación, como lo conoce el motor central de TensorFlow |
Métodos públicos
Salida < TUint8 > | asOutput () Devuelve el identificador simbólico del tensor. |
estática <T se extiende Ttype > CompareAndBitpack | |
Salida < TUint8 > | salida () Las comparaciones empaquetadas. |
Métodos heredados
Constantes
OP_NAME pública final static String
El nombre de esta operación, como lo conoce el motor central de TensorFlow
Métodos públicos
pública de salida < TUint8 > asOutput ()
Devuelve el identificador simbólico del tensor.
Las entradas a las operaciones de TensorFlow son salidas de otra operación de TensorFlow. Este método se utiliza para obtener un identificador simbólico que representa el cálculo de la entrada.
public static CompareAndBitpack crear ( Alcance alcance, operando <T> de entrada, operando <T> umbral)
Método de fábrica para crear una clase que envuelva una nueva operación CompareAndBitpack.
Parámetros
alcance | alcance actual |
---|---|
aporte | Valores para comparar con "umbral" y bitpack. |
umbral | Umbral para comparar. |
Devoluciones
- una nueva instancia de CompareAndBitpack