tensorFlow中的InteractiveSession

本文讲解一下tensorFlow中InteractiveSession与Session的区别。

普通的session(使用tf.Session()创建的session)的用法一般是这样的:

a = tf.constant(5.0)
b = tf.constant(6.0)
c = a * b
with tf.Session():
    print(c.eval())

这里使用with语句创建session,1)可以将session自动设置为默认session,即with块里面的runeval方法默认在此session下执行,2)不需要手动调用sess.close()来关闭session。

但是,在交互式环境(如IPython)中,使用with语句不方便。而如果不使用with的话,则要使用sess.run,或者给eval方法指定session参数:

sess = tf.Session()
a = tf.constant(5.0)
b = tf.constant(6.0)
c = a * b
# 1:
print(c.eval(session=sess))  
# 2:
print(sess.run(c))
sess.close()

总之不是很方便。


InteractiveSession,顾名思义,就是为交互式环境而设计的。它的用法一般是这样的:

sess = tf.InteractiveSession()
a = tf.constant(5.0)
b = tf.constant(6.0)
c = a * b
print(c.eval())
sess.close()

是不是方便了很多?它将session设置为了默认session

要注意,这里session用完了要手动调用close关闭。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值