处理训练数据和预测数据中的功能数量不匹配

时间:2018-07-26 05:08:51

标签: machine-learning data-science feature-extraction feature-selection

我有6个文本功能(例如f1,f2,..,f6)可用于训练模型的数据。但是,当部署此模型并出现一个新的数据点时,我必须使用该模型进行预测,它只有2个功能(f1和f2)。因此,存在特征不匹配的问题。我该如何解决这个问题? 我有一些想法,但这并不是很有效。

  1. 仅使用两个功能进行训练(f1和f2),而放弃其他功能(f3,..,f6)。但这会导致信息丢失,并且我的测试仪准确性降低。
  2. 了解(f3,.. f6)与(f1和f2)之间的一些关系。这样,即使在新数据点中不存在(f3,..,f6),信息也只能从f1和f2中提取。

2 个答案:

答案 0 :(得分:1)

最好的方法当然是使用f1,f2和您可能拥有的任何新数据训练新模型。

不想这样做吗?如果您没有f3 ... f6,则不应神奇地期望模型能够按预期工作。

现在,想想那些“ f3 ... f6”是什么?它们与您拥有的新信息相关吗?如果是这样,您也许可以近似它们。我们无法告诉您该怎么做,因为我们没有任何线索。插值?回归?粗略的近似?

我的建议:您缺少模型的大多数预测变量。您的旧模型毫无意义。请训练一个新的人。

答案 1 :(得分:0)

也许您可以用噪声数据填充f3至f6的数据,噪声数据是包括该功能的所有数据的平均值。这样,功能f3到f6的数据就不会太突出,也不会以任何一种方式倾斜分类器。分类器将更可能依赖于f1和f2提供的功能进行分类。

计算时,请确保首先计算每个分类的平均值,然后求平均值。这样,如果您的数据集包含大量的一个类,则不会偏离平均值。

当然,这可能过于简化,并且对于二进制分类最有效。这取决于数据集和分类。

希望这会有所帮助:)