我需要编写一段代码来了解张量条目是否具有特定值“2”。
这是我用于测试的代码:
sess = tf.Session()
some_values = tf.constant([1,2,3,4], dtype=tf.int32)
values_equal_two = (some_values == 2 )
print(sess.run(values_equal_two))
这就是我得到的错误:
TypeError: Fetch argument False has invalid type <class 'bool'>, must be a
string or Tensor. (Can not convert a bool into a Tensor or Operation.)
令人惊讶的是,如果我将==运算符更改为&gt; =这样:
sess = tf.Session()
some_values = tf.constant([1, 2, 3, 4], dtype=tf.int32)
values_equal_two = (some_values >= 2)
print(sess.run(values_equal_two))
它工作正常,并返回:
[False True True True]
我想知道问题可能是什么,或者是否有可能以另一种方式执行相同的任务。提前感谢任何建议。
答案 0 :(得分:1)
.catch
运算符在>=
期间没有按预期工作的原因是因为==
python方法在TensorFlow Python API中已经过载__ge__
1}} hasn&#t; t(查看此answer)。
如果要检查是否相等,可以使用支持广播的tf.equal
:
__eq__
打印sess = tf.Session()
some_values = tf.constant([1, 2, 3, 4], dtype=tf.int32)
values_equal_two = tf.equal(some_values, 2)
print(sess.run(values_equal_two))
。
答案 1 :(得分:0)
检查目标列表中是否存在单个或多个值的一种替代方法。
使用tf.setdiff1d
Private Sub GetSUMofUnits()
Dim total As Integer
For Each row As DataGridViewRow In dgvSubjects.Rows
If row.Cells(3).Value > 0
total += row.Cells(3).Value
End If
Next
txtTotalUnits.Text = total
End Sub