TensorFlow
在TensorFlow中,除法运算:
- 1.tensor除法会使结果的精度高一级,可能会导致后面计算类型不匹配,如float32 / float32 = float64。
- 2.除法需要分子分母同类型,否则报错。
产生类似错误提示如下:
-1.TypeError: x and y must have the same dtype, got tf.float32 != tf.int32
-2.TypeError: Input ‘y’ of ‘Mul’ Op has type float32 that does not match type float64 of argument ‘x’.
-3.ValueError: Tensor conversion requested dtype float64 for Tensor with dtype float32: ‘Tensor(“Sum:0”, shape=(), dtype=float32)’
-4.ValueError: Incompatible type conversion requested to type ‘int32’ for variable of type ‘float32_ref’
解决办法:tf.cast(a, tf.float32) # 转换成同类型即可
tf.boolean_mask
K.gather
K.argmax
K.max