在深度网络训练期间关闭功能

问题描述

我正在寻找以下问题的解决方案: 我的神经网络具有8个功能和6个输出

网络会预测图中的某些信息,其中一条记录与图中的节点有关。 当我拥有所有具有相同邻居度的示例(节点)时,它可以完美地工作。 现在,我需要它也可以用于邻居较少的节点,但采用一般形式,这意味着我不知道它们有多少。

因此,当邻居不存在时,我尝试将其设置为零,但所有的预测都奇怪,根本不正确。

所以我的问题是:有没有一种方法可以使我在训练期间可以关闭一些输入神经元,以查看该示例具有多少有效功能

更准确地说:NN所采用的第一个示例具有完整的邻居,因此我有8个值;第二个有6个值,所以我想关闭2个输入神经元,依此类推。

有什么想法吗?

解决方法

一个可行的简单解决方案是将某个功能声明为不相关。因此,您只需指定一个值即可使模型得知该迭代中不应使用它。因此,当您将值设置为零时,模型只会认为其为零,因此含义不明确。但是,如果将其设置为-1 e.G.但您的数据中根本不会出现-1,因此该模型可能能够得知-1表示不存在的功能,并将更多的注意力放在其他功能上。