まず、起源
そうすることで、深さの学習は、変数の大きなセットを必要と過去に我々はそれだけでグローバル制限を行うためのコードを記述する必要がありますが、tensorflowの変数のセットを管理するのは簡単でもない、パッケージ化しやすいは、このように変数管理tensorflowを提供し、そこではありません方法:変数のスコープメカニズム
第二に、二つの重要なAPI
tf.get_variable(名前、形状=なし)#指定された名前に応じて、または可変リターンを作成します
名前空間name_or_scopeの組成物におけるすべての変数のtf.variable_scope(name_or_scope、リユース=なし)#
第三に、解釈
私が最初にAPIをお話しましょう
tf.get_variable(名前、形状=なし)このメソッドはtf.Variable(で)同じ名前の変数がある場合、それは検索することを除いて、変数を作成する場合とまったく同じ。
1つの インポートtensorflowとしてTF 2 3 4(tf.variable_scopeと' CONST ' ): 5 A = tf.get_variable(' A '、[1]、初期= tf.constant_initializer(1))。
第2のAPIのほかに
なし、真、tf.AUTO_REUSE:最も重要なパラメータは、このメソッドを再利用すると、3つの値があります
再利用符号は、親クラスを継承していない:リユース=なし
真=再使用:唯一の多重化、作成することはできません。
1つの インポートtensorflowとしてTF 2 3 4(tf.variable_scopeと' CONST ' ): 5 A = tf.get_variable(' A '、[1 ]) 6 7 tf.variable_scopeと(' CONST '、リユース= tf.AUTO_REUSE) : 8 、B = tf.get_variable(' A '、[1 ]) 9 10 プリント(== b)は #真
再利用は= tf.AUTO_REUSE:作成されていない、最も安全な使用法である多重化を、持っています
1つの インポートAS tensorflowのTF 2 3。 4。 DEF 試験(): 5 tf.variable_scopeと(' CONST '、リユース= tf.AUTO_REUSE): 6 A = tf.get_variable(' A '、[1 ]) 7。 8。 リターンA 9。 10 X-はテスト()= #が作成されていない 11 Y-をテスト=() #は、多重化する必要が 12 プリント - (== Y-X) #真を