我需要在CNN中实施神经元冻结以便进行深度学习研究, 我试图在Tensorflow文档中找到任何函数,但没有找到任何东西。 当我使用tf.nn.conv2d实现各层时,如何冻结特定的神经元?
答案 0 :(得分:0)
正如评论中所阐明的,您希望冻结tf.nn.conv2d卷积中的Neurons。虽然在Tensorflow中有直接的方法(根据我的搜索),但是您可以尝试切片Tensor并对其应用tf.stop_gradient()
。这是一个stackoverflow answer,可让您直观地了解如何使用tf.stop_gradient()
我还没有测试过,但是根据docs,我认为它应该可以工作。
答案 1 :(得分:0)
var_list
函数的minimize
参数的tf.stop_gradient
参数中传递可训练的部分,或者select a.doctor_id
, count(*) - 1
from doctor_record a
left join doctor_record b on a.medical_school_id = b.medical_school_id
and a.graduation_dt = b.graduation_dt
group by a.doctor_id
。相同的概念可以用于卷积层,尽管在这种情况下“神经元”的定义变得不清楚。您仍然可以冻结卷积内核的任何列。