如果只有很少的特征,神经网络推荐

数据挖掘 神经网络
2022-03-05 03:36:56

如果只有几个特征,比如 2-5 个特征,是否可以对神经网络架构提出一些一般性建议?

这里隐藏的全连接层的数量应该是多少?每层可能有多少个神经元?不同层的神经元数量是否需要保持不变(例如 16、16、16)或上升(例如 8、16、32)或下降(32、16、8)或上升和下降(例如 16、32、16)或下降和上升(例如 32、16、32)?

1个回答

神经网络的结构有各种经验法则(如果 n 个特征使用 n+1 或 2n 或 1.5n 个节点等)。我不会把它们中的任何一个当作福音。

神经网络的大小和结构主要取决于您尝试学习的数据的复杂性。如果你的数据已经很好地用线性回归来表示,那么你的神经网络实际上不需要太多额外的大小来很好地表示它。另一方面,如果你的五个输入是,比如说,毁灭游戏录制的移动和射击命令,你将需要一个大型神经网络来容纳各个命令之间的所有深度和有意义的交互。

神经网络的每个连续节点层都处理越来越复杂的形状。第一个隐藏层都是 sigmoid 或 ReLU 函数,第二层是第一层的组合,第三层是第二层的组合,以此类推。

隐藏层的一般结构是锥形的,向右逐渐变细。第一层有很多节点,每个后续层都有更少的节点。每层可以有恒定数量的节点,尽管在我的游戏中它似乎没有多大帮助,而且许多层节点相对未使用。相反的方向(第一层节点很少,最后一层节点很多)是有害的,因为后面的节点只能是早期节点的组合,如果第一个节点没有为后面的节点创建足够的形状来组合,它将无法容纳任何东西。

我通过 tensorflow 的游乐场提供了几个交互式示例。

正常结构(每层减少节点)

同样没有。每层节点数

上升号 每层节点数

前两个应该相对容易收敛,而第三个根本不应该收敛。