我搜索了tensorflow的API文檔中的所有資源,但找不到任何提示。 它使用get_variable()的時候,似乎,我可以把一個特定的名稱爲收藏項,如:在張量流中,你能定義你自己的收藏名嗎?
x=tf.get_variable('x',[2,2],collections='my_scope')
,但只得到空單做時:
tf.get_collection('my_scope')
我搜索了tensorflow的API文檔中的所有資源,但找不到任何提示。 它使用get_variable()的時候,似乎,我可以把一個特定的名稱爲收藏項,如:在張量流中,你能定義你自己的收藏名嗎?
x=tf.get_variable('x',[2,2],collections='my_scope')
,但只得到空單做時:
tf.get_collection('my_scope')
收集小號需要的list
集合名稱。
>>x = tf.get_variable('x',[2,2], collections=['my_scope'])
>>tf.get_collection('my_scope')
[<tensorflow.python.ops.variables.Variable at 0x10d8e1590>]
小心,如果你使用它,一些其他操作可能會有副作用。 像tf.all_variables()
將無法正常工作,因此tf.initialize_all_variables()
也不會看到您的變量。解決這個問題的一種方法是指定默認集合。
>>x = tf.get_variable('x',[2,2], collections=['my_scope', tf.GraphKeys.VARIABLES])
但事情開始變得單調乏味。
其實,你可以使用tf.get_collection
創建一個新的集合:
tf.get_collection('my_collection')
var = tf.get_variable('var', [2, 2], initializer=tf.constant_initializer())
tf.add_to_collection('my_collection', var)