Session是执行命令的语句,对话的控制,可以用Session.run可以用来执行一个小的功能
这里先用一个小例子表示
import tensorflow as tf
matrix1 = tf.constant([[3,3]])
matrix2 = tf.constant([[2],
[2]])
product = tf.matmul(matrix1,matrix2) #matrix multiply np.dot(m1,m2)
""" #method 1
sess = tf.Session()
result = sess.run(product)
print(result)
sess.close() """
#method 2
with tf.Session() as sess:
result2 = sess.run(product)
print(result2)
这个小例子的主要内容是进行两个矩阵的运算,一行和一列相乘输出结果为[12],运用Session.run可以将其进行运算,不然product不会产生变化(不是很确定,如果没有下面的语句,就不会进行运算吧。。)
然后是有两种方法进行Session的运行,在程序中可以看到。不过这不是关键,按个人喜好选择一个就好了。。。
不过第一种方法在程序异常退出的时候,关闭会话的close()函数不会被执行从而导致资源泄露。第二种方法将所有的计算房子啊了with的内部,当上下文管理器退出时候就会自动释放所有资源,这样既解决了异常退出时候资源释放的问题,也解决了忘记调用Session().close()函数而导致的资源泄露。
其他的以后遇到了再补充好了。。