gpt4 book ai didi

machine-learning - 使用循环神经网络进行外推

转载 作者:行者123 更新时间:2023-11-30 08:32:31 25 4
gpt4 key购买 nike

我编写了一个简单的循环神经网络(7 个神经元,每个神经元最初都连接到所有神经元),并使用遗传算法对其进行训练,以学习“复杂”的非线性函数,例如 1/(1+x^2 )。作为训练集,我使用了[-5,5]范围内的20个值(我尝试使用超过20个,但结果没有太大变化)。

网络可以很好地学习这个范围,并且当给定这个范围内其他点的示例时,它可以预测函数的值。但是,它无法正确推断并预测范围 [-5,5] 之外的函数值。原因是什么?我可以采取哪些措施来提高其外推能力?

谢谢!

最佳答案

神经网络不是外推方法(无论是否循环),这完全超出了它们的能力。它们用于在提供的数据上拟合函数,它们可以完全自由地在填充训练点的子空间之外构建模型。因此,在非非常严格的意义上,人们应该将它们视为一种插值方法。

为了清楚起见,神经网络应该能够泛化训练样本所跨越的子空间内的函数,但不能泛化到子空间外的函数 source www.vias.org/tmdatanaleng/cc_ann_extrapolation.html

神经网络只是在与训练样本一致的意义上进行训练,而外推则完全不同。 “H.Lohninger: Teach/Me Data Analysis, Springer-Verlag, Berlin-New York-Tokyo, 1999. ISBN 3-540-14743-8”中的简单示例显示了 NN 在这种情况下的行为方式 source www.vias.org/tmdatanaleng/cc_ann_extrapolation.html

所有这些网络都与训练数据一致,但可以在此子空间之外执行任何操作

您应该重新考虑问题的表述,如果它可以表示为回归或分类问题,那么您可以使用神经网络,否则您应该考虑一些完全不同的方法。

唯一可以以某种方式“纠正”训练集之外发生的事情是:

  • 在所需的子空间中添加人工训练点(但这只是增加训练集,并且再次 - 在这个新集之外,网络的行为是“随机的”)
  • 添加强正则化,这将迫使网络创建非常简单的模型,但模型的复杂性不会保证任何外推强度,因为两个模型的复杂性完全相同,例如在 -/+ 无穷大中可能具有完全不同的限制。<

结合以上两个步骤可以帮助构建在某种程度上“推断”的模型,但是,如前所述,这不是神经网络的目的

关于machine-learning - 使用循环神经网络进行外推,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18310293/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com