【问题标题】:Predicting a feature and using the predicted feature to predict the target预测一个特征并使用预测的特征来预测目标
【发布时间】:2020-09-04 05:57:06
【问题描述】:

我正在研究一个有监督的 ML 分类用例,我有 5 个特征和一个目标变量。假设 5 个特征是 A、B、C、D、E、F,目标变量是 G。E 特征不是原始特征,这意味着它是从其他一些特征中预测的。我尝试使用该功能进行模型构建,分类指标非常好。但是现在我的老板说我们不能使用Feature E,因为它不是直接可用的,我们需要先预测它,然后用它来预测目标G。

以下是我尝试过的一些事情:

  1. 我尝试通过从特征列表中删除特征 E 来构建模型,但指标下降意味着特征 E 很重要。

  2. Boss 说特征 E 派生或依赖于特征 A、B、C、D 和 F,因此我们可以使用它来预测特征 E,然后使用特征 A、B、C、D、E, F 预测 G。

这是我的担忧:

  1. 如果特征 E 依赖于特征 A、B、C、D 和 F,那么在构建模型时不使用特征 E 不会对我的指标产生太大影响。

  2. 如果我使用特征 A、B、C、D 和 F 来预测特征 E,并且确实使用特征 A、B、C、D、E、F 来预测 G,我不会使用相关特征模型构建,因为 E 是使用 A、B、C、D 和 F 预测的。使用 F 不会向我的特征集添加任何额外信息。

我的理解是,如果通过从我的特征列表中删除特征 E 来构建模型会丢弃我的指标,那么这意味着特征 E 来自其他地方,即除了特征 A、B、C、D、F 之外。

我不是 ML 方面的经验丰富的人,这些是我对这个问题的想法。

请告诉我我的思路是否正确?

【问题讨论】:

    标签: python machine-learning supervised-learning


    【解决方案1】:
    1. 如果特征 E 依赖于特征 A、B、C、D 和 F,则在构建模型时不使用特征 E 不会影响我的指标 很多。

    这实际上取决于您使用的模型,但举个简单的例子,假设您使用的是线性回归模型,并且您尝试预测的值是 y=x²

    您找不到具有简单线性回归量 (A*x+B) 的拟合模型。但是,您可以创建一个新特征 x' = x²,现在您可以拟合 y A*x'+b 。因此,依赖于其他特征组合的特征有时可以帮助您的模型。

    1. 如果我使用特征 A、B、C、D 和 F 来预测特征 E,并且确实使用特征 A、B、C、D、E、F 来预测 G,我不会使用相关 模型构建的特征,因为 E 是使用 A、B、C、D 和 F. 使用 F 不会向我的功能集添加任何额外信息。

    这个问题比较棘手,因为这完全取决于你用来预测 E 的模型,以及你用来预测 y 的模型。 如果您对两者都使用简单的线性回归器,那么是的,E 将是其他变量的线性组合,并且无助于预测 y。

    但您可以想象使用非线性模型(如 RandomForest)预测 E,这可能有助于您的最终模型。

    底线是:尝试成本不高,只是要小心对两个模型使用相同的训练/测试以避免任何泄漏。

    【讨论】:

    • 那么相关问题是否只会出现在建立线性组合的模型中?除了使用线性组合的线性回归之外,还有其他模型吗?
    • 这不是那么简单,例如,如果您的两个模型都是 RandomForest,您也可能会遇到这个问题。我没有想到所有可能的组合,我会选择两种不同的模型来确定我是不是你。
    猜你喜欢
    • 2018-12-27
    • 2016-05-30
    • 2015-01-12
    • 2011-08-15
    • 1970-01-01
    • 1970-01-01
    • 2016-07-27
    • 1970-01-01
    • 2021-01-22
    相关资源
    最近更新 更多