使用 LSTM 进行多元回归

数据挖掘 机器学习 神经网络 深度学习 回归
2021-10-09 00:20:58

我有兴趣将多元回归与 LSTM(长期短期记忆)一起使用。例如,我们可以以股票价格预测问题为例,其中时间 t 的价格基于多个因素(开盘价、收盘价等)。使用这些信息,我们需要预测 t+1 的价格。另一个例子可以是房价预测(这取决于房子的年龄、面积、床的数量、浴室的数量等)。使用这些信息,我们可以预测给定房屋的价格。

我发现了很多他们只使用单个变量回归的例子,但我有兴趣使用多个特征。

有没有人试过这个,有人能指出正确的方向吗?

我尝试了以下方法,但不知道这是否是有效的方法。

# Importing the training set
training_set = pd.read_csv('Google_Stock_Price_Train.csv').iloc[:,1:3].values#has fields: Date,Open,High,Low,Close,Volume
# Feature Scaling
from sklearn.preprocessing import MinMaxScaler
sc = MinMaxScaler()
training_set_scaled = sc.fit_transform(training_set)
X_train = training_set_scaled[0:1257]
y_train = training_set_scaled[1:1258]
# Reshaping
X_train = np.reshape(X_train, (1257, 1, 2))
X_train, y_train = np.array(X_train), np.array(y_train)
X_train = np.reshape(X_train, (X_train.shape[0], X_train.shape[1], 2))
from keras.models import Sequential
from keras.layers import Dense, LSTM
regressor = Sequential()
regressor.add(LSTM(units = 4, activation = 'sigmoid', input_shape = (None, 2)))
regressor.add(Dense(units = 2))
regressor.compile(optimizer = 'rmsprop', loss = 'mean_squared_error')
regressor.fit(X_train, y_train, batch_size = 32, epochs = 100)

谢谢。

1个回答

这是使用 LSTM 进行多元回归的一个很好的示例:

https://machinelearningmastery.com/multivariate-time-series-forecasting-lstms-keras/

您将找到的大多数示例都是使用 LSTM 进行时间序列预测的,例如您为股票价格列出的示例。