为什么[ 0 , 1 ][0,1]缩放显着增加前馈 ANN(1 个隐藏层)的训练时间?

机器算法验证 分类 神经网络
2022-03-22 06:15:48

我正在使用 ANN 进行分类。我的协变量是黄金、SPX 和石油的相对滞后回报。

当我不在 0 和 1 之间缩放我的输入时,我实现了快速的训练时间。然而,在扩展我的训练时间后,我的训练时间会急剧增加,有时会增加 40 倍。

当输入未缩放时,我的准确性也更好。我似乎无法在网上找到任何原因。有没有人有任何想法?

1个回答

我们可以在神经网络常见问题解答中找到对此行为的合理解释TL;DR - 尝试重新调整您的数据以位于[1,1].

但是标准化输入变量对权重初始化的影响比简单地避免饱和要重要得多。假设我们有一个 MLP,其中一个隐藏层应用于分类问题,因此对每个隐藏单元定义的超平面感兴趣。每个超平面是隐藏单元的净输入为零的点的轨迹,因此是由孤立考虑的隐藏单元生成的分类边界。从输入到隐藏单元的连接权重决定了超平面的方向。偏差决定了超平面到原点的距离。如果偏置项都是小的随机数,那么所有的超平面都会靠近原点。因此,如果数据不以原点为中心,超平面可能无法通过数据云。如果所有输入的变异系数都很小,那么所有初始超平面很可能会完全丢失数据。如此糟糕的初始化,很可能会出现局部最小值。因此,重要的是使输入居中以获得良好的随机初始化。特别是,将输入缩放到 [-1,1] 将比 [0,1] 工作得更好,尽管任何将平均值或中位数或其他集中趋势度量设置为零的缩放都可能同样好,并且稳健的估计器位置和规模(Iglewicz,1983)对于具有极端异常值的输入变量会更好。因此,重要的是使输入居中以获得良好的随机初始化。特别是,将输入缩放到 [-1,1] 将比 [0,1] 工作得更好,尽管任何将平均值或中位数或其他集中趋势度量设置为零的缩放都可能同样好,并且稳健的估计器位置和规模(Iglewicz,1983)对于具有极端异常值的输入变量会更好。因此,重要的是使输入居中以获得良好的随机初始化。特别是,将输入缩放到 [-1,1] 将比 [0,1] 工作得更好,尽管任何将平均值或中位数或其他集中趋势度量设置为零的缩放都可能同样好,并且稳健的估计器位置和规模(Iglewicz,1983)对于具有极端异常值的输入变量会更好。

让我认为这是答案的关键细节是因为您没有观察到在使用时训练网络需要很长时间z-scores,由于均值居中而具有负输入值和正输入值。