问题描述
我想知道如何为多个多元时间序列的分类屏蔽填充值。我有大约 10,000 个不同时间长度的时间序列,所以我目前正在用值 -100 填充该系列(选择原因是时间序列中没有一个值为 -100)。我希望模型忽略这些值,但我无法找到一种方法来掩盖后面的 Dense 层中的这个值,而不会将最终的 Dense 层更改为与输入具有相同维度的输出,在这种情况下为 3。>
model = Sequential()
model.add(Masking(mask_value=0,input_shape=(X_train.shape[1],X_train.shape[2])))
model.add(LSTM(64,return_sequences=True))
model.add(Dropout(0.2))
model.add(LSTM(30,return_sequences=False))
model.add(Dropout(0.2))
model.add(Dense(20,activation='sigmoid'))
model.add(Dropout(0.2))
model.add(Dense(1,activation='sigmoid'))
model.compile(loss='binary_crossentropy',optimizer='adam')
model.summary()
for i,l in enumerate(model.layers):
print(f'layer {i}: {l}')
print(f'has input mask: {l.input_mask}')
print(f'has output mask: {l.output_mask}')
表明后面的层没有输入或输出掩码,这是有道理的,因为在第二个 LSTM 层中 return_sequences=False。不知道如何解决这个问题。蒙面还有意义吗?我的想法是完全错误的吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)