时代变了。使用最新的TF API,可以通过调用tf.losses.cosine_distance
进行计算。
例:
import tensorflow as tf
import numpy as np
x = tf.constant(np.random.uniform(-1, 1, 10))
y = tf.constant(np.random.uniform(-1, 1, 10))
s = tf.losses.cosine_distance(tf.nn.l2_normalize(x, 0), tf.nn.l2_normalize(y, 0), dim=0)
print(tf.Session().run(s))
当然, 1 - s
是余弦相似度!
0
我有两个标准化张量,我需要计算这些张量之间的余弦相似度。我该如何使用TensorFlow?