为什么要在建模过程中排除用于标签生成的特征?

数据挖掘 机器学习 神经网络 深度学习 数据挖掘 特征选择
2022-02-16 19:27:10

我有一个像下面这样没有标签的数据集

在此处输入图像描述

但是在专家意见的帮助下,我们根据以下 3 条规则生成标签(必须满足所有 3 条规则才能将其标记为 1)

在此处输入图像描述

所以现在数据集如下所示

在此处输入图像描述

如您所见,我的最终数据集具有标签。

现在我可以运行 ML 模型进行分类。我对吗?

但我读到,在模型构建过程中,必须排除用于创建标签的特征,因为它们可能会导致类的完美分离,而模型可能会失败失败是什么意思?我们的目标不是通过分类算法进行分类吗?

我可以知道为什么我们必须排除这些特征(例如:用于派生标签的 RG、FG 和 BP 特征)?

基本上我的模型将建立在下面的数据集上。但我们不会失去预测能力吗?为什么我们必须通过排除那些特征(用于派生标签)来构建模型?

在此处输入图像描述

3个回答

您使用数据创建了标签。如果您能够用数据标记它们,那么为什么需要机器学习模型?它只是成为一个基于规则的分类器。您想要做的是找到适合您的数据点的函数。

例如,如果您运行决策树分类器,那么它将根据您的标签规则找到完美的分割。因此,您正在为模型提供一些关于标记技术的信息。这称为数据泄漏。该模型看到一些非常明显的东西,并且1通常具有准确性。

你在做什么是对的。您可以使用它构建 ML 模型。在您的情况下,您的输入和输出是相关的。根据员工的经验考虑员工的薪水。这些都是相关的,有时用于根据经验得出工资。

您可能已经读到的是,如果一个特征用于派生另一个特征并且不使用这两个特征,因为两者都会产生相同的结果。您可以指出该文字以进行进一步说明。

此外,变量 T1、T2 和 T3 的意义是什么?如果这些与输出标签无关,那么实际上您将不得不消除它们。

但是我读到在模型构建过程中,必须排除用于创建标签的特征,因为它们可能会导致类的完美分离,而模型可能会失败?

不,仅仅因为专家使用它们并不意味着该功能只需要有帮助或没有帮助。如果这是事实,那么您可以编写几个 if 查询来进行分类。保留所有这些,依靠专家标记,但让整个数据集告诉您其他情况。