tf.argmax、tf.equal、tf.cast、tf.reduce_mean函数的极简介绍

一、函数功能描述

tf.argmax(a,1)指在张量a的第一维度找到最大值的下标,并返回ndarray
tf.equal(a, b)指将a和b中对应相同的项标为True,其余的标记为False,前提是a与b得相同shape
tf.cast(equal, tf.float32)是指将equal中的True标为浮点1,False标为浮点0
tf.reduce_mean(test)指将test中的为1的数目除以总数目,一般用于准确率计算

二、相关代码

if __name__ == "__main__":
    a = [[1, 2, 3], [4, 2, 3]]
    a = tf.constant(a)
    b = [[2, 3, 4], [5, 4, 8]]
    b = tf.constant(b)
    equal = tf.equal(tf.argmax(a, 1), tf.argmax(b, 1))
    cast = tf.cast(equal, tf.float32)
    test = tf.constant([1.,1.,1.,0.,0.,1.])
    redmean = tf.reduce_mean(test)
    with tf.Session() as sess:
        tf.global_variables_initializer().run()
        print(sess.run(tf.argmax(a, 1)))
        print(sess.run(tf.argmax(b, 1)))
        print(sess.run(equal))
        print(sess.run(cast))
        print(sess.run(redmean))

三、运行效果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_38690150/article/details/89708735