モデルA
を訓練しましたが、そのうちの1つが出力用に固定されており、次のネットワーク用に訓練可能であるため、2モデルのA
インスタンスが必要です。 私は2つのvariable_scope A_train
とA_untrain
が、私は訓練された事前variable_scope
A_untrain
でA
モデルを設計し、この範囲でも、モデルを復元し、コードのように:tensorflowでは、特定のvariable_scope変数を別の特定のvariable_scopeに復元する方法はありますか?
saver_untrain = tf.train.Saver(tf.get_collection(
tf.GraphKeys.GLOBAL_VARIABLES,
'A_untrain'))
saver_path = '~/models/model.ckpt'
# here pre-train model A
saver_untrain.save(sess, saver_path)
は、今私は、同じモデルにへA
パラメータを復元する必要がありますスコープA_train
の同じモデルですが、ckptファイルがA_untrain/input_w1
instreadのA_train/input_w1
のようなパラメータを復元するため、前のコードに従うことができません。私は、私の問題の解決策があるのか、それとも訓練可能でもう一つが非人道的な2つのインスタンスを作るためのより良い解決策があるかどうかを知りたい。どうもありがとう。
EDIT_1:私は、私は次のように私の必要性の使用コードを実現することができます知っている:
saver_train = tf.train.Saver({'A_untrain/input_w1': A_train.input_w1})
が、私の変数の量が大きい場合には、実用的になりますので、私は代わりに復元するvariable_scope
を使用する必要があります特定の変数の名前。