tensorflow凍結層的方法
阿新 • • 發佈:2018-11-17
最近在搞faster-rcnn的改動,網上看到很多人在做的一些改進,其中就包括凍結Bn等等方式,於是自己也就查了一下tensorflow裡面凍結層的方法,現在總結如下:
1、比如使用一個VGG的前面提取特徵的部分,而微調其全連層,或者將其全連層更換為使用convolution來完成,可以使用TensorFlow的stop_gradient函式,將模型的一部分進行凍結。
2、採用get_collection:
- #定義優化運算元
-
optimizer = tf.train.AdamOptimizer(
1e-3
- #選擇待優化的引數
- output_vars = tf.get_collection(tf.GraphKyes.TRAINABLE_VARIABLES, scope= 'outpt')
- train_step = optimizer.minimize(loss_score,var_list = output_vars)