这是否可以防止遗忘:训练具有 N 个节点的神经网络。然后,添加更多节点并停止训练原始节点

人工智能 神经网络
2021-10-28 20:44:22

这会起作用吗?

想法是开始训练具有一定数量节点的神经网络。然后,添加一些新节点和更多层,并开始仅训练新节点(或仅稍微修改旧节点)。理想情况下,我们会将所有旧节点连接到添加的新层,因为我们可能在隐藏层中学到了许多有用的东西。然后重复多次。

直觉是,如果旧节点提供错误信息,则新层节点会将旧节点的激活权重接近零,并在新节点中学习新/更好的概念。好处是我们将永远保留旧知识。

需要注意的是,如果新层对旧信息的权重接近于零,网络仍然可以暂时“忘记”概念,但它也有可能再次记住它。

如果这完全失败,我很好奇是否有一些已知的方法可以防止神经网络忘记它学到的概念。

1个回答

Per Neil 的提问方式:

  • 如果您正在进行离线、监督或强化学习,您拥有数据集并决定接下来向网络显示什么,则没有理由这样做。最好只调整您的训练以更频繁地向网络显示稀有示例。

  • 如果您正在进行在线强化学习,那么代理通常会通过其选择的动作来控制接下来看到的示例。提高智能体的探索率会导致它看到更多样化的示例集,但这些示例也不太可能对解决智能体正在处理的任务有用。

  • 如果你在做有监督的、在线的、学习的,并且你不控制示例出现的顺序,冻结一些权重可能会很有用,但增加权重可能会更好,而且肯定会更简单而是使用稀有类的学习率(实际上,当它确实出现时,它会重复向网络显示给定的稀有示例,以便忘记它需要更长的时间)。