我如何捕捉 使用具有常用激活函数的简单神经网络?我假设我至少需要一个隐藏层。我应该使用哪些常见的激活函数组合?
到目前为止,我已经使用 和 隐藏层的激活,但梯度下降很快发散。
一些可能有用的想法:
我如何捕捉 使用具有常用激活函数的简单神经网络?我假设我至少需要一个隐藏层。我应该使用哪些常见的激活函数组合?
到目前为止,我已经使用 和 隐藏层的激活,但梯度下降很快发散。
一些可能有用的想法:
可能您需要执行以下一项或多项操作:
降低学习率。发散损失通常是学习率过高的症状。
增加隐藏神经元的数量。输出函数将是许多“补丁”的组合,每个“补丁”都是由学习了不同偏差的神经元创建的。每个补丁的形状和质量由激活函数决定,但几乎任何在 NN 库中使用的非线性激活函数都应该能够生成通用函数逼近器。
规范化输入。如果您正在以较高的值进行训练或者,除非您对训练数据进行标准化,否则这可能会使训练变得更加困难。
出于您的目的,通过训练来跳过标准化的需要可能是一个想法 和 在 -2.0 到 2.0 的范围内。这样做并不会改变你的目标,并且消除了一个潜在的问题。
您应该注意,针对像这样的开放式函数(输入参数没有逻辑界限)训练的网络不会学会推断。它从不“学习”函数本身,而是接近提供的示例的近似值。当您提供一个 输入远离训练示例,输出很可能与您的原始函数完全不匹配。
为了补充上述答案,一个简单的前馈网络不会学习函数本身。但最近,神经图灵机声称可以学习该算法。值得一试!