美文网首页
TensorFlow使用手册

TensorFlow使用手册

作者: xieyangxuejun | 来源:发表于2018-11-18 14:44 被阅读0次

    基本介绍

    图的介绍

    图是数据结构和算法学里最强大的框架之一, 可以用来表示所有类型的结构和系统.

    • 顶点/节点
    • 边(edge): 顶点之间的线段就是边,表示事物之间的关系. 比如社交网络的关注粉丝关系.
    • 有向图和无向图: 区别就是有向图中的边的关系是有方向的.
    • 环图和无环图: 关系的传递

    Computation Graph : 是边(data)和节点(operation)组成的有向数据流图

    • 边代表数据的流向, 也可是说的data的传递
    • 节点代表对数据的操作和计算, 对数据的操作

    Graph常规操作

      1. 默认图中创建操作/函数
    import tensorflow as tf
    
    c = tf.constant(1.0)
    a = 1.0
    
    print(c)
    print(a)
    print(c.graph)
    print(tf.get_default_graph)
    print(c.name)
    
    #输出结果
    Tensor("Const:0", shape=(), dtype=float32)
    1.0
    <tensorflow.python.framework.ops.Graph object at 0x0000022D5F630BE0>
    <function get_default_graph at 0x0000022D70A6DBF8>
    Const:0
    
      1. 在不通的图里创建函数
    #上下文管理器选择图
    g = tf.Graph()
    print('g:', g)
    with g.as_default():
        d = tf.constant(1.0)
        print(d.graph)
    
    #运行结果:
    g: <tensorflow.python.framework.ops.Graph object at 0x000002413EB3BC50>
    <tensorflow.python.framework.ops.Graph object at 0x000002413EB3BC50>
    
      1. 为图分配不同的运行设备
    g2 = tf.Graph()
    with g2.device('/gpu:0'):
        a = tf.constant(1.5)
    
    • namescope, 能是神经网络的节点标签清晰
    with tf.name_scope('A'):
        a1 = tf.Variable([1], name='a1')
        with tf.name_scope('B'):
            a2 = tf.Variable([1], name='a2')
    with tf.name_scope('A'):
        a3 = tf.Variable([1], name='a3')
    print(a1)
    print(a2.name)
    print(a3)
    
    # 运行结果
    <tf.Variable 'A/a1:0' shape=(1,) dtype=int32_ref>
    A/B/a2:0
    <tf.Variable 'A_1/a3:0' shape=(1,) dtype=int32_ref>
    

    相关文章

      网友评论

          本文标题:TensorFlow使用手册

          本文链接:https://www.haomeiwen.com/subject/kkjvfqtx.html