1. 图(Graph)的核心数据结构

  • tf.Graph.__init__:建立一个空图;
  • tf.Graph.as_default():一个将某图设置为默认图,并返回一个上下文管理器,常与 with 结构相搭配;

    g = tf.Graph()
    with g.as_default():
    # Define operations and tensors in `g`.
    c = tf.constant(30.0)
    assert c.graph is g c = tf.constant(4.0)
    assert c.graph is tf.get_default_graph()
  • tf.Graph.finalized:返回True,如果图被完成

    • tf.Graph.finalize():完成图的构建,即将其设置为只读模式
    if not tf.Graph.finalized:
    tf.Graph.finalize()
  • tf.Graph.control_dependencies(control_inputs):定义一个控制依赖,并返回一个上下文管理器,也常与 with 结构搭配;

    with g.control_dependencies([a, b, c]):
    ....
    d = …
    e = … # `d` 和 `e` 将在 `a`, `b`, 和`c`执行完之后运行. def my_func(pred, tensor):
    with tf.control_dependencies([pred]):
    # 乘法操作(op)创建在该上下文,所以被加入依赖控制中
    #执行完pred之后再执行matmul
    return tf.matmul(tensor, tensor)
  • tf.Graph.device(device_name_or_function):定义运行图所使用的设备,并返回一个上下文管理器

    with g.device('/gpu:0'): ...
    with g.device('/cpu:0'): ...
05-28 23:52