Machine learning 在一个神经网络中,每n次迭代进行一次反向传播有意义吗

Machine learning 在一个神经网络中,每n次迭代进行一次反向传播有意义吗,machine-learning,neural-network,backpropagation,Machine Learning,Neural Network,Backpropagation,我有一个神经网络,它在某个点上分支成两个子网络 当我分别训练子网络时,我获得了相当好的精度。然而,当我对这两个任务都进行训练时,似乎其中一个任务占用了公共层中的权重,因此造成了这样一种情况:我有一个任务的准确度非常高,而另一个任务的准确度很低 为了减少更强大任务的影响,我考虑允许每n次迭代使用n定义权重更新 你认为这样做有意义吗?一项任务的数据比另一项任务的数据多吗?如果有更多的数据需要拟合,这就可以解释为什么拥有更多数据的任务被认为更重要 如果是这样,那么试着平衡数据。 无论哪种方式,我都会尝

我有一个神经网络,它在某个点上分支成两个子网络

当我分别训练子网络时,我获得了相当好的精度。然而,当我对这两个任务都进行训练时,似乎其中一个任务占用了公共层中的权重,因此造成了这样一种情况:我有一个任务的准确度非常高,而另一个任务的准确度很低

为了减少更强大任务的影响,我考虑允许每n次迭代使用n定义权重更新


你认为这样做有意义吗?

一项任务的数据比另一项任务的数据多吗?如果有更多的数据需要拟合,这就可以解释为什么拥有更多数据的任务被认为更重要

如果是这样,那么试着平衡数据。 无论哪种方式,我都会尝试使用loss函数,而不是使用num更新。定义损失函数时,只需使第二个任务更有价值

这样做的一种黑客方式是对任务中的数据进行过度采样,而这些数据做得并不好。因此,在转移到其他任务之前,让网络读取相同的数据几次,从而使网络适应更为重要


此外,我还将研究任务之间切换的时间安排。如果你在两项任务上都有大量数据,那么当你在任务a上训练时,网络将学习如何做好这项工作,当你在任务B上训练很长时间时,网络将改变权重,并在任务a上学习时忘记,因为这些权重无助于解决任务B。即使你重复两项任务几次,网络完成培训的任务最终将更有价值。因此,请确保您在每个历元的任务之间进行混合,理想情况下,从任一任务中随机抽取每个批次的样本

如果您有两个不同的任务,为什么不创建两个网络?@Dzjkb这两个任务密切相关。最初,我有两个独立的网络。我想尝试一下联合架构。你可以试试这种方法,然后@Dzjkb这是一篇非常有趣的论文。我一定会研究这个方法。现在,我想研究一下我的体系结构。我想知道,对于更强大的任务,即劫持学习过程的任务,每n次迭代进行一次反向传播在数学上是否有意义。谢谢。在我处理的任务中,损失的数量级是不同的。例如,在最不强大的任务中,我的值约为2.1,而在最强大的任务中,我的值约为0.1。对损失较小的任务给予更大的权重,还是对损失较大的任务给予更小的权重,这更合理?这取决于你想完成什么。但是,如果你想让人际网络在两项任务上都表现得同样出色,那么就给损失较大的那个任务更多的权重。这将使网络想要更好地解决它,并减少损失。但显然,这可能会导致网络正在解决的其他问题的损失增加。。。