Neural network CAFFE:在FC层中使用较少的节点运行前向传递

Neural network CAFFE:在FC层中使用较少的节点运行前向传递,neural-network,caffe,Neural Network,Caffe,我试图在Caffe中用一个非常简单的单隐层NN进行一个实验。我使用的是经过单个隐藏层(128个节点)训练的MNIST数据集。我已经从完全训练过的网络中获得了所有的权重 然而,在前馈阶段,我只想使用这些节点中较小的子集,即32或64。例如,我想计算在前馈过程中64个节点的激活并保存它们。然后在下一次运行期间,计算其他64个节点的激活度,并将它们与前64个节点的激活度相结合,这样我就得到了所有128个节点的激活度。因此,计算所有128个节点的激活,但在两个“过程”中 有没有办法在Caffe实现这一点

我试图在Caffe中用一个非常简单的单隐层NN进行一个实验。我使用的是经过单个隐藏层(128个节点)训练的MNIST数据集。我已经从完全训练过的网络中获得了所有的权重

然而,在前馈阶段,我只想使用这些节点中较小的子集,即32或64。例如,我想计算在前馈过程中64个节点的激活并保存它们。然后在下一次运行期间,计算其他64个节点的激活度,并将它们与前64个节点的激活度相结合,这样我就得到了所有128个节点的激活度。因此,计算所有128个节点的激活,但在两个“过程”中


有没有办法在Caffe实现这一点?请原谅,我对Caffe很陌生(本周才开始使用!)

你为什么要这么做?@malreddysid嗨,我是作为实验的一部分来做的。我不想在我的帖子中详细说明这一点,这样就不会分散我的注意力。据我所知,Caffe不支持这一点。但是你可以写你自己的图层来做这件事。我也建议在这种情况下写一个自定义图层。您只需要实现选择过程,然后传递前馈激活和反向错误。如果您使用的是Python,请查看以下自定义层示例链接:,@DavidStutz嗨,David,谢谢!这似乎对我来说肯定是可行的,但是,是否有可能构建类似我正在尝试做的事情,即在第一次“通过”时计算32/128个节点的值,将它们保存在某个位置,然后运行下一个32,直到我得到完整的128个节点?我基本上是在尝试一次只计算32个节点,并逐步达到使用所有128个节点的全部精度。非常感谢。你为什么要这么做?@malreddysid嗨,我是作为实验的一部分来做的。我不想在我的帖子中详细说明这一点,这样就不会分散我的注意力。据我所知,Caffe不支持这一点。但是你可以写你自己的图层来做这件事。我也建议在这种情况下写一个自定义图层。您只需要实现选择过程,然后传递前馈激活和反向错误。如果您使用的是Python,请查看以下自定义层示例链接:,@DavidStutz嗨,David,谢谢!这似乎对我来说肯定是可行的,但是,是否有可能构建类似我正在尝试做的事情,即在第一次“通过”时计算32/128个节点的值,将它们保存在某个位置,然后运行下一个32,直到我得到完整的128个节点?我基本上是在尝试一次只计算32个节点,并逐步达到使用所有128个节点的全部精度。非常感谢。