keras 如何从基于LSTM的自动编码器获得潜在空间表示?

70gysomp  于 2023-02-04  发布在  其他
关注(0)|答案(1)|浏览(135)

我试图构造一个编码器来获取潜在空间,以便绘制它。我真的不知道我是否可以从RepeatVector中获取它,或者我是否必须添加一个Dense层。
下面是我的代码:

model = Sequential()
model.add(LSTM(16, activation='relu', return_sequences=True, input_shape= (x_train.shape[1], 1)))
model.add(LSTM(4, activation='relu', return_sequences=False)) #Encoder
model.add(RepeatVector(X_train.shape[1])) #Latent
model.add(LSTM(4, activation='relu', return_sequences=True)) #Decoder
model.add(LSTM(16, activation='relu', return_sequences=False)) #Decoder
model.add(TimeDistributed(Dense(X_train.shape[2]))) #Decoder
sq1bmfud

sq1bmfud1#

你需要把模型分成两部分(编码器和解码器),然后使用编码器部分的输入和输出构建编码器。顺便说一下,输出将是使用RepeatVector之前的最后一层。

encoder = Model(inputs, output_from_encoder)

相关问题