0

问题

我正在尝试预测为时间序列预测构建循环神经网络 (RNN)。RNN 中的一个常见问题是Exploding Gradients大误差梯度可能导致非常大的网络更新。为了解决这个问题,我通常Sigmoid在输出层添加一个激活函数,并将我的所有数据缩放到范围 [0, 1.0]。

在这种情况下,我想对输入使用标准化技术,因此也可能存在负值。当然,Sigmoid 函数会在最后一层去掉。然而,这给我留下了两个选择:

可能的解决方案

  1. 在输出层使用线性激活函数。
  2. 使用 MinMax Scaler 在 [-1.0, 1.0] 范围内缩放我的数据。然后使用 Tanh 激活函数。

问题

在将 StandardScaler 应用于数据输入之后,将 MinMaxScaler 应用于范围 [-1.0, 1.0] 是否有任何错误?您认为在 StandarScaler 之后应用 MinMaxScaler 是一种不好的做法吗?在输出端使用线性激活函数离开 RNN 会更好吗?

4

0 回答 0