【发布时间】:2020-01-10 18:45:58
【问题描述】:
我正在尝试训练 LSTM 网络进行无监督的二元分类。
我有一个整数矩阵作为输入,每一行都是不同的轨迹,每一列都是一个特征。
这是我使用的模型:
time_steps = 4000
features = 25
model = Sequential()
model.add(LSTM(128, input_shape=(time_steps, features), name='lstm'))
model.add(Dense(1, activation='relu'))
model.summary()
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
model.fit(x_train, x_train, batch_size=batch_size, epochs=epochs, verbose=2)
这是我得到的错误:
检查目标时出错:预期 dense_1 有 2 个维度,但得到的数组形状为 (1, 4000, 25)
它是在尝试运行时生成的model.fit
输入形成如下:
x_train = np.array([input_array[:4000]])
输入的每条轨迹都有 25 个特征。
我是该领域的新手,我不知道如何解决这个问题。 我查过类似的票,但没有一张能帮到我。
这是我分析的一些票:
Error when checking target: expected dense_1 to have 3 dimensions, but got array with shape (118, 1)
【问题讨论】:
标签: tensorflow keras classification lstm unsupervised-learning