TensorFlow 冻结部分网络

4,288次阅读
没有评论

共计 331 个字符,预计需要花费 1 分钟才能阅读完成。

冻结网络是希望在训练的过程中该部分网络的参数不参与模型的训练,也就是在BP反向传播的时候参数不参与更新。
简单的办法就是将可训练的参数从模型优化中除去,以下就是在tensorflow中实现。

update_var_list = []

*#该list中的变量参与参数更新*

tvars = tf.trainable_variables()
for tvar in tvars:
	if "bert" not in tvar.name:
		update_var_list.append(tvar)
train_op = tf.train.AdamOptimizer(FLAGS.lr).minimize(loss, global_step=global_step, var_list=update_var_list)
正文完
请博主喝杯咖啡吧!
post-qrcode
 
admin
版权声明:本站原创文章,由 admin 2021-01-18发表,共计331字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)
验证码