我将 int32 类型的张量除以 int32 类型的张量,结果是 float64。我找不到关于为什么会发生这种情况的答案,或者 Tensorflow 如何执行此操作背后是否存在隐含规则。我还没有为任何张量明确定义 dtype,但我已经检查了所有张量,并且在除法之后它们都没有 64 位类型。
我尝试过使用不同的除法公式,例如 tf.divide,都给出相同的结果。
我的代码如下所示:
a_cdf = a / tf.size(a)
Run Code Online (Sandbox Code Playgroud)
具有 tf.int32 类型。
我想要得到的是 float32 形式的结果,这样我就可以编写我的函数而无需显式转换。