【发布时间】:2020-11-22 15:23:07
【问题描述】:
我正在尝试使用 Keras 对多个独立序列进行分类。我的数据如下所示(不同股票及其价值的示例)。
_stock 2010 2011 2012 2013 2014
----------- ------ ------ ------ ------ ------
foo 100 200 250 300 400
bar 50 100 100 50 25
pear 100 250 250 300 400
raspberry 100 200 300 400 500
banana 50 20 10 10 5
我想按照以下结构对数据进行分类。已经为每只股票预先定义了标签(监督学习)。
_stock label
----------- -----------------
foo 0 (not falling)
bar 1 (falling)
pear 0 (not falling)
raspberry 0 (not falling)
banana 1 (falling)
最后,如果可能的话,我还想预测下一个时间步的值。
_stock 2015
----------- ------
foo 450
bar 10
pear 500
raspberry 600
banana 1
目前我只是使用了一堆工作正常的密集层,但我认为我没有在此设置中以正确的方式利用每一列之间的关系。此外,我认为这种设置不可能进行预测。我想使用 LSTM 网络之类的东西,但我不知道如何更改我的实现。
# current network
from keras.models import Sequential
n_timesteps = len(data.columns)
model = Sequential()
model.add(Dense(100, activation="relu", input_dim=n_timesteps))
model.add(Dense(100, activation="relu"))
model.add(Dense(1, activation="sigmoid"))
model.compile(optimizer="adam", loss="binary_crossentropy", metrics=["accuracy"])
model.fit(x_train, y_train, epochs=100, validation_data=(x_test, y_test))
【问题讨论】:
标签: python keras classification sequence prediction