微信公众号:数据挖掘与分析学习
1. tf.truediv
按元素除法x / y(使用Python 3除法运算符语义)。
注意:首选使用Tensor运算符或遵循Python除法运算符语义的tf.divide。此函数强制使用Python 3除法运算符语义,其中所有整数参数首先转换为浮点类型。 此op由Python 3中的正常x / y除法和带有__future__ import division的Python 2.7生成。 如果想要向下舍入整数除法,请使用x // y或tf.floordiv。x和y必须具有相同的数字类型。 如果输入是浮点,则输出将具有相同的类型。 如果输入是整数,则输入将转换为float32 for int8和int16,float64转换为int32和int64(匹配Numpy的行为)。
tf.truediv( x, y, name=None )
参数说明:x:张量。数值类型,作为分子。 y: 张量。数值类型,作为分母。 name:操作的名字,可选。
返回值:x/y,浮点型。 |
a=tf.constant(2) b=tf.constant(5) addOp=tf.add(a,b) sess=tf.Session() init=tf.global_variables_initializer() sess.run(init)
truediv_op=tf.truediv(a,b) print(sess.run(truediv_op)) |
2.tf.floordiv
针对浮点数的除法向下取整。
与整数的tf.div(x,y)相同,但对浮点参数使用tf.floor(tf.div(x,y)),以便结果始终为整数(尽管可能是表示为浮点的整数))。 此操作由Python 3中的x // y floor division和带有__future__ import division的Python 2.7生成。
请注意,为了提高效率,floordiv对负数使用C语法(与Python和Numpy不同)。
x和y必须具有相同的类型,结果也将具有相同的类型。
tf.floordiv( 参数说明: x:实数数值类型的张量,作为分子 y:作为分母 name:操作名 |
floordiv_op=tf.floordiv(a,b) print(sess.run(floordiv_op)) #0 |
floordiv_op1=tf.floordiv(b,a) print(sess.run(floordiv_op1)) #2 |
3.tf.realdiv
对于实数类型,返回x / y元素。如果x和y是实数,这将返回浮点除法。
tf.realdiv( x, y, name=None )
参数说明: x:张量。必须是下列类型之一:bfloat16, half, float32, float64, uint8, int8, uint16, int16, int32, int64, complex64, complex128。 y:张量,类型同x。 name:操作的名字,可选。 |
4. tf.truncatediv
对于整数类型,返回x / y元素。截断表示负数将小数量向零舍入。即 -7 / 5 = -1。 这与C语义匹配,但它与Python语义不同。 有关与Python语义匹配的除法函数,请参阅FloorDiv。
tf.truncatediv( x, y, name=None )
参数说明: x:张量。必须是下列类型之一:bfloat16, half, float32, float64, uint8, int8, uint16, int16, int32, int64, complex64, complex128。 y:张量,类型同x。 name:操作的名字,可选。 |
truncatediv_op=tf.truncatediv(a,b) print(sess.run(truncatediv_op)) #0 |
truncatediv_op=tf.truncatediv(b,a) print(sess.run(truncatediv_op)) #2 |