lstm 模型处理eeg信号 遇到的问题

我用lstm搭建了一个简单的模型训练eeg数据,做二分类任务,遇到两个问题。

先附上代码

model = tf.keras.Sequential([
    tf.keras.layers.LSTM(32, input_shape=(X_train.shape[1:]), return_sequences = True),
    tf.keras.layers.LSTM(16),
    tf.keras.layers.Dense(2, activation='softmax')
])

model.compile(
    optimizer=tf.keras.optimizers.Adam(lr=0.001),
    loss='categorical_crossentropy',
    metrics=['accuracy']
)

history = model.fit(
    X_train,
    y_train,
    validation_data = (X_test, y_test),
    batch_size=4,
    epochs=15
)

但是代码报错了

img

我把上述代码的输出层改为

tf.keras.layers.Dense(1, activation='sigmoid')

错误没有了,但是所有的变量loss,val_loss,acc,val_acc都不变了,

img

这个问题卡了好几天了,特来请教!