LSTM应该训练百分比变化吗?

时间:2020-03-07 17:14:11

标签: python machine-learning keras neural-network lstm

我是机器学习的新手,并且我正在使用Keras构建可以预测时间序列财务数据的LSTM。

我有三个问题:

1)在考虑价格变化时,如果传入的数据是前一时间步长的百分比变化而不是实际价格,那么LSTM的训练是否更好?

2)我已经使用MinMaxScalar缩放了训练数据,但是我不确定是否也应该缩放目标数据(将来的价格)。

3)如果我使用训练数据拟合MinMaxScalar,我是否使用相同的标量来缩放将要预测的数据,还是使用自己拟合的标量来缩放新数据?

3 个答案:

答案 0 :(得分:0)

首先,必须缩放放入机器学习算法中的所有数据。我相信,当您将数据馈入网络时,它也适用于您要进行预测的数据。

关于百分比变化与实际值的比较,这是个好主意。两者都尝试一下,看看哪一种效果最好。我知道这听起来像是在解决问题,但实际上并非如此:机器学习是一个反复试验的过程。

目标数据和未来价格是什么意思?

答案 1 :(得分:0)

  1. 就像Tdoggo所说,对于百分比变化或实际价格的培训是否更好没有任何规则。你们都尝试。在对每个数据进行训练之前,别忘了对数据进行缩放和标准化。

  2. 是的。目标数据将被缩放。如果您的训练数据在[0,1]范围内(应该是这种情况),您的输出将匹配并且在[0,1]范围内。因此,要获得实际价格,您应该反转缩放器以恢复到正常缩放。

  3. 是的。为了使网络在新数据上准确无误,比例应该相同。如果您担心将来的数据不在同一范围内,只需在训练之前对所有数据进行缩放,或者添加绝对最大值和绝对最小值即可获得良好的缩放比例。

答案 2 :(得分:0)

  1. 您可以使用任何一种,这取决于您尝试使用模型实现的目标。预测价格是否会上涨或下跌,或预测未来某个时期的价格。

  2. X 和 Y 训练数据都需要缩放。需要对验证/训练数据应用相同的缩放比例。

  3. 您需要使用相同的拟合,因为这是训练模型的依据。