TensorFlow使用手册

基本介绍

图的介绍

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

  • 顶点/节点
  • 边(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>
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容