小编Sou*_*Ray的帖子

ValueError:未知层:CapsuleLayer

我定义了一个名为的自定义图层CapsuleLayer。实际模型已在单独的类中定义。我已将权重加载到实际模型中,并将模型保存在.h5文件中。但是,当我尝试使用加载模型时load_model(filepath),出现错误

ValueError:未知层:CapsuleLayer

加载保存的模型时,如何将自定义图层合并到模型中。

python keras keras-layer

6
推荐指数
2
解决办法
3511
查看次数

如何屏蔽具有 RepeatVector() 层的 LSTM 自动编码器中的输入?

我一直在尝试使用 LSTM 自动编码器获得向量序列的向量表示,以便我可以使用 SVM 或其他此类监督算法对序列进行分类。数据量使我无法使用完全连接的密集层进行分类。

我输入的最短大小是 7 个时间步,最长的序列是 356 个时间步。因此,我用零填充较短的序列以获得形状为 (1326, 356, 8) 的最终 x_train,其中 1326 是训练样本的数量,8 是一个时间步长的维度。我正在尝试使用给定的 LSTM 自动编码器将这些序列编码为单个向量。

model.add(Masking(mask_value=0.0, input_shape=(max_len, 8)))
model.add(LSTM(100, activation='relu'))
model.add(RepeatVector(max_len))
model.add(LSTM(8, activation='relu', return_sequences=True))
model.compile(optimizer='adam', loss='mse')
model.fit(x_train, x_train, batch_size=32, callbacks=[chk], epochs=1000, validation_split=0.05, shuffle=True)
Run Code Online (Sandbox Code Playgroud)

我试图掩盖零填充的结果,但 RepeatVector() 层可能会阻碍这个过程。因此,一段时间后,均方误差损失变为nan。任何人都可以帮助我了解如何在计算损失函数时仅包含相关时间步长而忽略其他时间步长?

masking lstm keras

3
推荐指数
1
解决办法
1471
查看次数

标签 统计

keras ×2

keras-layer ×1

lstm ×1

masking ×1

python ×1