【问题标题】:Keras LSTM input dimensionKeras LSTM 输入维度
【发布时间】:2020-05-24 12:15:50
【问题描述】:

def train_model_lstm(train_x, train_y, classes): train_x, train_y = np.array(train_x), np.array(train_y) train_x = np.reshape(train_x, (train_x.shape[0], train_x.shape[1], 1))

data_dim = 1
timesteps = train_x.shape[1]

regressor = Sequential()

regressor.add(LSTM(units=50, return_sequences=True, input_shape=(timesteps, data_dim)))
regressor.add(Dropout(0.2))

regressor.add(LSTM(units=50, return_sequences=True))
regressor.add(Dropout(0.2))

regressor.add(LSTM(units=50, return_sequences=True))
regressor.add(Dropout(0.2))

regressor.add(LSTM(units=50))
regressor.add(Dropout(0.2))

regressor.add(Dense(len(classes), activation='softmax'))
regressor.compile(optimizer='adam', loss='mean_squared_error')

regressor.fit(train_x, train_y, epochs=2, batch_size=32)

我正在尝试为我的网络提供数据并将 LSTM 算法用于我的聊天机器人
我收到一个错误:

例外!检查时出错:预期 lstm_1_input 有 3 个维度,但得到的数组形状为 (367, 1)

有人可以建议我如何解决它?

【问题讨论】:

    标签: python machine-learning deep-learning lstm


    【解决方案1】:

    下次您可能需要提供最终 train_x 和 train_y 的形状。

    我认为这就是错误所在。

    你能确认train_x的形状是:(length of the dataset, timesteps, data_dim),而train_y是(length of dataset, len(classes)) ?

    【讨论】:

    • 您还有什么建议吗?对于这个 LSTM 算法
    • 使用嵌入词
    猜你喜欢
    • 2018-02-10
    • 2018-06-16
    • 1970-01-01
    • 2017-07-25
    • 2018-01-03
    • 2019-01-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多