我正在尝试构建一个序列来对具有可变长度浮点序列的自动编码器进行排序。 我想知道哪些实现是正确的:
seq_autoenc = Sequential()
seq_autoenc.add(Masking(mask_value=mask_value, input_shape=(None, inp_dim)))
seq_autoenc.add(LSTM(enc_len, return_sequences=True, implementation=implementation, name='encoder'))
seq_autoenc.add(LSTM(inp_dim, return_sequences=True, implementation=implementation, name='decoder'))
或
seq_autoenc = Sequential()
seq_autoenc.add(Masking(mask_value=mask_value, input_shape=(inp_max_len, inp_dim)))
seq_autoenc.add(cell(enc_len, implementation=implementation, name='encoder'))
seq_autoenc.add(RepeatVector(inp_max_len, name='repeater'))
seq_autoenc.add(cell(inp_dim, return_sequences=True, implementation=implementation, name='decoder'))
最后一个代码的问题是序列的最大长度是未知的,它会在测试阶段截断一些序列。
我面临的另一个问题是mask_value
的范围不可用,是否可以使用np.nan
或np.inf
作为屏蔽值?