神经网络可以外推输出值吗

机器算法验证 神经网络
2022-04-02 17:14:40

假设我们有一个训练集yR. 因此所有数据都在yminymax. 如果我们建立了一个决策树模型,它就无法返回ypred超出给定范围(使用输入特征的任意组合)。因此,决策树不能根据预测值进行外推。神经网络回归模型能否外推并返回ypred外的值y训练集中的范围?它是否取决于激活函数?

以下是我试图回答这个问题的尝试。

模型的输出神经元只是Θiai, 在哪里Θi- 前一个隐藏层上第 i 个神经元的权重,以及ai- 该神经元的激活函数值。如果我们使用逻辑函数,那么a(1;1). 因此最大可能ypred=Θi, 假设所有a在1左右达到最大值。但是如果我们使用线性激活函数,它对输出值没有限制a(aR) 模型将返回ypredR, 可以在外面y训练集的范围。

我的推理是正确的还是有一些错误?

1个回答

更一般地,前馈神经网络的输出神经元定义为f(Θiai), 在哪里f是输出神经元的链接函数(这是您问题中的恒等函数),其他符号与您的问题相同。上一层神经元的激活值ai取决于他们自己的链接功能的选择(比如g) 以及之前层的激活值。

你说得对,如果所有的链接功能g上一层有界,那么网络的输出值也会有界,即使f是身份。(但是有一个小混乱,物流链接是有界的(0,1),双曲正切有界(1,1).)

设置所有链接功能(gf) 网络到恒等函数似乎是一个好主意,以便允许在训练集中观察到的响应值之外进行外推,但前馈神经网络的特殊情况实际上只是一个线性回归模型,在这种情况下你根本不需要神经网络框架!

更好的解决方案是对 g 使用无界但非线性的链接函数,例如整流器 g(x)=max(0,x). 这保留了神经网络良好的“通用逼近”属性,但输出无界。

但是请注意,在训练数据中不存在的数据区域中,预测效果会较差。您可能应该使用正则化来防止过度拟合并(希望)提高外推预测能力。