2.1 name_scope 简单入门(一)
name_scope 等内容主要是用来可视化的,tensoeboard
import tensorflow as tf
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
with tf.variable_scope('foo'):
with tf.name_scope('bar'):
v = tf.get_variable('v', [1])
b = tf.Variable(tf.zeros([1]), name='b')
x = 1.0 + v
我们在此处定义了,name_scope部分,该功能是为了定义可视化tensorboard中的可视化节点,在实际的展示中,name_scope可以将数个节点合成一个节点再点击之后再展开,面对实际应用中的网络图,name_scope算是可视化的基础知识
assert v.name == 'foo/v:0'
assert b.name == 'foo/bar/b:0'
assert x.op.name == 'foo/bar/add'
- 可以看出,tf.name_scope()返回的是一个字符串,如上述的”bar”.
- name_scope对用get_variable()创建的变量名字不会有任何影响,而Variable()创建的操作会被加上前缀,并且会给操作加上名字前缀
- 而如第一部分所述,对于计算图中的节点 ” + “操作而言,此时他就已经在foo/bar之下了.对于其他并列的内容也都在该节点下.