代码之家  ›  专栏  ›  技术社区  ›  taigi100

如何得到张量的值?蟒蛇

  •  0
  • taigi100  · 技术社区  · 6 年前

    在做一些计算的时候,我最后计算了 average_acc .当我尝试打印它时,它输出: tf.Tensor(0.982349, shape=(), dtype=float32) .我怎么得到 0.98.. 它的值并将其用作普通浮点?

    我要做的是在一个数组中得到一组这样的数组,并绘制一些图,但是为了这个目的,我需要尽可能简单的浮点数。

    2 回复  |  直到 6 年前
        1
  •  2
  •   soerface    6 年前

    在我看来,你好像没有计算张量。你可以打电话 tensor.eval() 评估结果,或使用 session.run(tensor) .

    import tensorflow as tf
    
    a = tf.constant(3.5)
    b = tf.constant(4.5)
    c = a * b
    
    with tf.Session() as sess:
        result = c.eval()
        # Or use sess.run:
        # result = sess.run(c)
    
        print(result) 
        # out: 15.75
    
        print(type(result))
        # out: <class 'numpy.float32'>
    
        2
  •  1
  •   Tshilidzi Mudau Simon Müller    6 年前

    在会话中运行它,然后打印它。除非在会话中运行它,否则它在TensorFlow中仍然是一个对象,不会被初始化。下面是一个例子:

    with tf.Session() as sess:
       acc = sess.run(average_acc)
       print(acc)