docs のtf.get_collection()
から混乱しています。
指定された名前を持つコレクション内の値のリストを返します。
そして、インターネットからの例はこちらです
from_vars = tf.get_collection(tf.GraphKeys.TRAINABLE_VARIABLES, from_scope)
tf.GraphKeys.TRAINABLE_VARIABLES
からfrom_scope
の変数を収集するということですか?
ただし、別のスコープから変数を取得する場合、この関数を使用するにはどうすればよいですか?ありがとうございました!
コレクションは、値の名前付きセットに他なりません。
すべての値は計算グラフのノードです。
すべてのノードには名前があり、名前はスコープの連結/
および値、例:preceding/scopes/in/that/way/value
get_collection
、scope
なしでは、フィルター操作を適用せずにコレクション内のすべての値を取得できます。
scope
パラメーターが存在する場合、ノードの名前が指定されたscope
で始まる場合にのみ、コレクションのすべての要素がフィルターに掛けられて返されます。
文字列docで説明されているように:
TRAINABLE_VARIABLES
:オプティマイザーによってトレーニングされるVariable
オブジェクトのサブセット。
そして
scope:(オプション)文字列。指定された場合、結果のリストは、
re.match
を使用してname
属性がscope
と一致するアイテムのみを含むようにフィルターされます。スコープが指定されている場合、name
属性のないアイテムは返されません。re.match
の選択は、特別なトークンのないscope
がプレフィックスでフィルタリングすることを意味します。
そのため、指定されたスコープ内のトレーニング可能な変数のリストを返します。