Tensorflow';可培训=假';被忽略
我想在tensorflow中将固定权重矩阵传递给2D卷积运算。我试着把Tensorflow';可培训=假';被忽略,tensorflow,Tensorflow,我想在tensorflow中将固定权重矩阵传递给2D卷积运算。我试着把trainable=False放在下面,但TF似乎忽略了这个选项 w=tf.Variable(w,trainable=False,dtype=tf.float32,name='upscaleW') data=tf.nn.conv2d_转置(data,w,outshapeF,strips,padding=“SAME”,data_format=data_format,name='upsamplingdecov2d') 在训练过程
trainable=False
放在下面,但TF似乎忽略了这个选项
w=tf.Variable(w,trainable=False,dtype=tf.float32,name='upscaleW')
data=tf.nn.conv2d_转置(data,w,outshapeF,strips,padding=“SAME”,data_format=data_format,name='upsamplingdecov2d')
在训练过程中,它不断地失去精确度。1变成0.98,然后变成0.96等,0变成0.012等
如果我做了tf.trainable_variables()
则上标
不存在。我只能在tf.global_variables()
中找到它们,因此它们甚至不在可训练变量列表中。我不知道如何冻结重量
可能是这条线路出了故障?
别客气。我的错。在我的代码中,我传递给
minimize(var\u list=tf.contrib.framework.get\u variables())
而不是get\u trainable\u variables
,后者显然会覆盖trainable=False
参数。设置trainable=False
会将变量排除在图形索引之外。图形中的trainable\u variables
集合中,因此它们在反向传播时不会被训练
它应该会起作用。没有最近的错误