数据流图的执行——Session

1.Tensorflow Session

Session类负责数据流图的执行,构造方法tf.Session()接收3个可选参数:

target参数——指定了所要使用的执行引擎,默认为空字符串。
graph参数——指定了将要在Session对象中加载的graph对象,默认值为None,表示使用当前默认数据流图。
config参数——允许用户指定配置Session对象所需的选项。

注意:数据流图的每一个节点简记为Op

2.Session.run()

Session.run()方法接收一个参数fetches,以及其他三个可选参数:feed_dict、options、run_metadata

(1)fetches参数
fetches参数接收任意的数据流图元素(Op或Tensor对象),后者指定了用户希望执行的对象。

如果请求对象是Tensor对象,则run()的输出是一个Numpy数组;
如果请求对象是一个Op,则run()的输出是None。
当fetches是一个列表时,run()的输出将为一个与所请求的元素对应的值的列表。

注意:Op(节点)跟Tensor(张量)的区别——节点的输入/输出是张量,比如tf.add(2,5)为节点,a=tf.add(2,5)是节点的输出为张量。

(2)feed_dict参数
feed_dict参数用于覆盖数据流图中的Tensor对象值,它需要python字典对象(dict)作为输入。
字典中的“键”为指向应当被覆盖的Tensor对象的句柄,而字典的“值”可以是数字、字符串、列表或者Numpy数组。

注:句柄——句柄是一个标识符,是拿来标识对象或者项目的。

猜你喜欢

转载自blog.csdn.net/weixin_43202635/article/details/83961566