【发布时间】:2020-05-19 19:27:53
【问题描述】:
我有一个使用传感器数据的人类活动识别任务的 lstm 模型。
当我训练我的模型时,损失和准确率保持不变。这种情况一般会出现哪些问题?
我尝试改变学习率但结果是一样的,
下面是我使用的模型
model = Sequential()
model.add(LSTM(64, return_sequences=True, recurrent_regularizer=l2(0.0015), input_shape=(timestamps,
input_dim)))
model.add(Dropout(0.5))
model.add(LSTM(64, recurrent_regularizer=l2(0.0015), input_shape=(timesteps,input_dim)))
model.add(Dense(64, activation='relu'))
model.add(Dense(64, activation='relu'))
model.add(Dense(n_classes, activation='softmax'))
model.summary()
model.compile(optimizer=Adam(learning_rate = 0.0025), loss =
'sparse_categorical_crossentropy',
metrics = ['accuracy'])
history =model.fit(X_train, y_train, batch_size=32, epochs=100)
数据集是跨类平衡的,我使用了标准的 scaller
lying 68704
running 68704
walking 68704
climbingdown 68704
jumping 68704
climbingup 68704
standing 68704
sitting 68704
【问题讨论】:
-
您能介绍一下您的数据集吗?
-
是的,我编辑答案,谢谢
-
好吧。你能告诉我
y_train。它看起来像一个包含从 0 到 n_classes 的数字的数组吗?还是一个大小为 n_classes x n_samples 的矩阵? -
是的,喜欢这个数组([0, 7, 2, ..., 3, 1, 0])
-
很抱歉,如果没有您的整个代码,我无话可说。此外,您可以添加指向数据集的链接。
标签: python-3.x tensorflow keras deep-learning lstm