我对tf.get_collection()
from_vars = tf.get_collection(tf.GraphKeys.TRAINABLE_VARIABLES, from_scope)
感到困惑,它说
返回具有给定名称的集合中的值列表。
来自互联网的一个例子就在这里
tf.GraphKeys.TRAINABLE_VARIABLES
是否意味着它会收集从from_scope
到XmlDataDocument xmldoc = new XmlDataDocument();
int i = 0;
string str = null;
FileStream fs = new FileStream("c:\\temp\\my.xml", FileMode.Open, FileAccess.Read);
xmldoc.Load(fs);
的变量?
但是,如果我想从另一个范围获取变量,我该如何使用此功能?谢谢!
答案 0 :(得分:6)
集合只不过是一组命名的值。
每个值都是计算图的一个节点。
每个节点都有自己的名称,名称由范围/
和值的串联组成,如:preceding/scopes/in/that/way/value
get_collection
,没有scope
允许在不应用任何过滤操作的情况下获取集合中的每个值。
当存在scope
参数时,集合的每个元素都会被过滤,只有当节点的名称以指定的scope
开头时才会返回它。
答案 1 :(得分:1)
如字符串doc:
中所述
TRAINABLE_VARIABLES
:将Variable
个对象的子集 由优化者训练。
和
范围:(可选。)一个字符串。如果提供,则过滤结果列表 仅包含
name
属性与scope
匹配的项目re.match
。如果a,则永远不会返回没有name
属性的项目 提供范围。re.match
的选择意味着scope
没有 特殊标记按前缀过滤。
因此它将返回给定范围内的可训练变量列表。