如何在使用多个输入层训练的 keras 模型中预测时忽略某些输入层?

How to ignore some input layer, while predicting, in a keras model trained with multiple input layers?

我正在使用神经网络,我使用 kerastensorflow 后端实现了以下架构:

为了训练,我将在层 labels_vector 中给出一些标签,这个向量可以有 int32 个值(即:0 可以是一个标签)。对于测试阶段,我需要忽略这个输入层,如果我将它设置为 0 结果可能是错误的,因为我已经使用可以等于 0 向量的标签进行训练。有没有办法在预测阶段简单地忽略或禁用这一层? 提前致谢。

How to ignore some input layer ?

不能。 Keras 不能只忽略输入层,因为输出依赖于它。

获得几乎您想要的结果的一种解决方案是在训练数据中将自定义标签定义为空值。如果您的网络认为它不是重要特征,它将学会忽略它。

如果 labels_vector 是分类标签向量,请使用 one-hot 编码 而不是 整数编码 。整数编码假设每个标签之间存在自然有序的关系,这是错误的。