Keras回归未预测低于某一特定值

2024-10-01 00:29:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试对时间序列数据进行回归,但在某个值以下,我无法得到可接受的预测。这是一个时间序列交易数据,最后20%用于测试和预测

我使用以下参数:

opt = keras.optimizers.Adam(lr=0.01)

def BuildModel():
 model = Sequential()
 model.add(Dense(256, input_dim=13,activation='relu')) 
 model.add(Dense(128, activation='relu')) 
 model.add(Dense(64,activation='relu')) 
 model.add(Dense(32,activation='relu')) 
 model.add(Dense(1,activation='linear'))
 model.compile(loss="mean_squared_error", optimizer=opt)   
 return model

在比较测试标签和预测标签后,我得到:

enter image description here

现在,我不知道为什么预测在低于某个特定值时不起作用

我通过MinMaxScaler对原始值和放大值进行了回归:

scaler01 = MinMaxScaler(feature_range=(0, 1))
X_scaled = scaler01.fit_transform(df_01)

我尝试了原始特征和缩放特征(Y)

我的猜测是,要么是我在缩放方面做错了什么,要么是因为低于该值的特性(OHLC)较少,所以预测不正确

有人能给我指一下正确的方向吗


Tags: 数据add参数model时间序列交易特征