如何根据具有更多特征的训练模型预测特征不完整数据的真实标签?

人工智能 机器学习 深度学习 训练 数据集 测试
2021-11-11 21:55:50

假设我有一个使用包含特征的数据集进行训练的模型(f1, f2, f3, f4, f5, f6)但是,我的测试数据集不包含训练数据集的所有特征,而仅包含(f1, f2, f3). 在没有所有特征的情况下,如何预测该测试数据集条目的真实标签?

2个回答

假设您可以访问训练数据集,您可以使用自动编码器网络来预测测试数据集“可能”的特征 f4、f5、f6。这样做的方法是在以特征 f1、f2、f3 作为输入的训练数据集上训练自动编码器,然后使用 f1、f2、f3、f4、f5、f6 作为网络的输出。然后,自动编码器有效地学习将具有 (f1,f2,f3) 的任何输入样本映射到 (f1,f2,f3,f4,f5,f6)。通过自动编码器传递您的测试数据,您可以使用输出并将其传递给您的模型。

我假设你(f1, f2, f3, f4, f5, f6)在你的测试数据上训练你的模型,你有时有(f1, f2, f3),有时有(f1, f2, f3, f4, f5, f6),对吧?因为如果您的测试数据始终具有(f1, f2, f3),那么仅在可用特征上训练模型不是更好吗?

因此,如果我的假设是正确的,我会做的是稍微操纵训练集,保留一些训练集(f1, f2, f3, f4, f5, f6)和一些其他训练集,例如通过各自的特征(f1, f2, f3)替换它们中的真实值(f4, f5, f6)所以所有的训练集仍然有(f1, f2, f3, f4, f5, f6),但其中一些已经被操纵了(f4, f5, f6)然后最后在测试时,对那些具有较少特征的测试数据进行相同的操作。

我认为您的模型会像这样学习如何根据(f1, f2, f3)其他功能不可用的情况进行预测。但同时,如果所有功能都可用,请充分利用它们。

这可能不是最好的方法,但值得一试。