我想知道是否存在任何情况或需要将具有不同激活功能的多种类型的神经元混合在一个层中,如果是这样,如何使用 tensorflow Estimator 框架来实现它。
我可以想到一个简单的例子,这样的配置可能会变得有用。
考虑尝试训练一个神经网络,该神经网络可以预测坐标值为 (x, y) 的任何给定 2D 点是否位于给定圆的内部或外部,该圆的中心和半径也定义在相同的 2D 简单空间。
假设我们的圆的中心在 (0.5, 0.5),其半径定义为 0.5。
我们训练的策略可能是这样的:首先随机生成许多点,然后判断每个点是在圆内还是在圆外,这样我们就可以将这些随机生成的坐标集作为特征和结果每一个的内/外判断作为其对应的标签。
通过验证下面的公式可以很容易地进行判断:
(x-0.5)^2 + (y-0.5)^2 < r^2
可以转换为:
x^2 - x +y^2 - y + 0.5 < r^2
现在,看最后一个公式,如果神经网络本身能够自动获得 x^2 和 y^2 等值,那么训练显然会变得有效,只需从其特征值(x,y)给出。为此,我想出了一个想法,在标准 ReLU 神经元中混合具有 f(x)=x^2 作为其激活函数的神经元。
老实说,我已经使用 tensorflow Estimator 框架完成了这个问题的几个测试实现,其中一个我看到将 x^2 和 y^2 作为附加特征(总共 4 个特征值)应该有助于与 2 个特征的情况相比,有效的训练收敛,但使用 f(x)=x^2 激活函数的解决方案对我来说似乎更聪明。
这就是我在这里提出问题的方式。
希望我能听到任何意见。
谢谢你。