张量流条件:检查张量内的值是否为零或更大
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了张量流条件:检查张量内的值是否为零或更大相关的知识,希望对你有一定的参考价值。
如果我有以下张量:
pmi=tf.constant([[1.5,0.0,0.0],[0.0,0.0,2.9],[1.001,5,1]])
我想要具有相应的张量Fpmi(或缩放器),使得当PMI张量内的元素大于0时,Fpmi中的元素应该是1,而当pmi中的元素= 0时,Fpmi中的元素= 0.0005。
我很感激任何建议。
答案
使用tf.where
,您可以使用a = tf.constant(1, shape=pmi.shape, dtype=tf.float32)
b = tf.constant(0.0005, shape=pmi.shape, dtype=tf.float32)
tf.where(tf.greater(pmi, 0), a, b).eval()
#array([[ 1.00000000e+00, 5.00000024e-04, 5.00000024e-04],
# [ 5.00000024e-04, 5.00000024e-04, 1.00000000e+00],
# [ 1.00000000e+00, 1.00000000e+00, 1.00000000e+00]], dtype=float32)
从两个常量张量中有条件地返回元素:
qazxswpoi
以上是关于张量流条件:检查张量内的值是否为零或更大的主要内容,如果未能解决你的问题,请参考以下文章