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之下了.对于其他并列的内容也都在该节点下.
原文地址:https://www.cnblogs.com/fonttian/p/8480723.html