我正忙于使用递归神经网络来预测加密货币的价格。所以我做这个项目的原因是因为学校。我对该项目很遥远,但遇到了一个问题。因此,在我的代码中,我有一个数据框(df)。在数据框中,值很大,因此我使用以下方法将其成形为较小的值:
for col in df.columns:
if col != "target":
df[col] = df[col].pct_change()
df.dropna(inplace=True)
df[col] = preprocessing.scale(df[col].values)
但是在将其放入模型中之后,我需要将值调整回原始值。因此,我已经尝试了Internet上的所有内容,但找不到解决方案。有人可以帮我吗?
编辑:
我想在model.fit之后缩放值!所以当我用这个训练模型时:
# Train model
model.fit(
train_x, train_y,
batch_size=64,
epochs=EPOCHS,
validation_split=0.05,
callbacks=[tensorboard])
我该怎么做?
答案 0 :(得分:0)
如果您想返回原始数据,则可以使用预分频器,然后可以乘以标准偏差并加上平均值(与之相反),然后对pct_change
使用相同的值。
但这会增加数据的噪音。
这里最好的解决方案是保留原始数据,并在网络的另一个数据帧中对其进行处理。