Keras:在LSTM

时间:2019-03-10 23:42:06

标签: python python-3.x machine-learning keras lstm

我的Y_train是一键编码的标签矩阵。

我的Y_train的形状为(10, 1000, 3),因为我有三种不同的类别。

我的模型定义为:

model = Sequential()
model.add(LSTM(100, input_shape=(1000, 38), return_sequences=False))
model.add(Dense(3, activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['acc'])

训练模型时,出现以下错误:

  

检查目标时出错:预期density_83具有2维,   但是得到了形状为(8,1000,3)的数组

这是因为我的Y_train是3d矩阵,而不是2d矩阵。我能够解决此问题的唯一方法是设置return_sequences=True,但不确定是否会影响我的LSTM输出。

这是处理分类标签的正确方法吗?通过将return_sequences=True设置为LSTM的参数?

换句话说,可以在Softmax层之前返回return_sequences吗?

谢谢!

0 个答案:

没有答案