-1

TensorFlowInception v3 modelの最初の3つのレイヤーを除いてレイヤーをフリーズしたい場合は、これらの3つのレイヤーの重みを変更して再初期化できるように修正しますネットワークの3つの第1層のみを辿る。これが開始モデル内で実行できない場合は、他のネットワーク(TensorFlow)がありますか?Inception V3のInception V3の一部をPython 3でTensorFlowでフリーズする

答えて

0

これはどのネットワークでも行うことができます。トレーニング中下位層を凍結するには、最も簡単な解決策はオプティマイザに訓練する変数のリストを与えることで、下位層からの変数を除く:

train_vars = tf.get_collection(tf.GraphKeys.TRAINABLE_VARIABLES, 
           scope="hidden[34]|outputs") 
training_op = optimizer.minimize(loss, var_list=train_vars) 

最初の行は、すべてのトレーニング可能な変数のリストを取得します隠れ層3と4と出力層にある。これにより、隠れ層1と2の変数が除外されます。上記のスニペットでは、変数範囲がhidden1、... hidden4およびoutputsであると仮定しています。インセプションモデルでは、異なる名前を使用します。Conv2d_2a_*,Conv2d_2b_*,AvgPool_1a_* ...

関連する問題