tensrflow中的session

        Session是tensorflow中的一个执行命令的控制,是tensorflow里面的重要机制,tensorflow构建的计算图必须通过Session会话才能执行,,比如在tensorflow中定义了两个矩阵a[[2, 3]]b[[2],[2]],和一个计算a和b乘积的c节点,如果想要得到a和b的乘积(也就是c节点的运算结果)的话,必须要建立Session会话,并调用Session中的run方法运行c节点才行。如果在计算图中没有使用Session会话的话,就不能运行该节点。如果此时print这个变量的话只能打印出该变量的类型大小等信息Tensor("MatMul:0", shape=(1, 1), dtype=int32).只有使用session才能得到结果[[10]]。下面附上两种使用session的方法.


#python 3.x
import tensorflow as tf


matrix1 = tf.constant([[2, 3]])
matrix2 = tf.constant([[2],
                       [2]])
product = tf.matmul(matrix1, matrix2)  


# method 1
sess = tf.Session()
result = sess.run(product)
print(result)
sess.close()


# method 2   此种方法运行后会直接关闭sess,无需sess.close()
with tf.Session() as sess:
    result2 = sess.run(product)
    print(result2)







 
 

猜你喜欢

转载自blog.csdn.net/qq_36604847/article/details/81052919
今日推荐