【问题标题】:How does bringing all the features in same range as target variable impact performance?将所有功能与目标变量放在同一范围内如何影响性能?
【发布时间】:2019-01-17 23:38:05
【问题描述】:

假设我有以下数据集。 (数据完全随机)

Colour  Size       Shape        Pre booking number  Price
White   24         Square          600              1400
Blue    35         Circle          435              1854
Black   16         Square          873              1272
White   43         Triangle        221              1777
White   20         Oval            532              1434
Black   35         Triangle        221              ????

我必须预测[颜色、尺寸、形状、预定编号]的某个组合的价格

考虑以下特征工程方法 我选择颜色与价格。我对颜色进行分组以找出每个组(颜色)的平均价格,并简单地将颜色变量替换为各自的平均值。我对每个分类变量都这样做。对于非分类变量,我保持原样。

Colour  Size        Shape   Pre booking number      Price
1536    1400        1336        600                 1400
1854    1854        1854        435                 1854
1272    1272        1336        873                 1272
1536    1777        1777        221                 1777
1536    1434        1434        532                 1434
1272    1854        1777.       221                 ????

现在我将这些数据提供给任何 ML 回归模型。

我的问题是:

  1. 这种方法的优劣如何?内部发生了什么?

  2. 一般来说,使所有变量与目标变量具有强相关性(可能在同一尺度上)的效果如何?

  3. 最重要的是,如果我仅通过相加/相乘来合并两个或多个分类列以减少维度,它将如何影响预测?

谢谢。

【问题讨论】:

  • 您为什么不按原样使用这些功能(至少在第一步中)?您似乎不清楚您试图通过您的方法实现什么。
  • 他正在尝试降低数据的维度。
  • @MarijnvanVliet 在特征工程之后,他的示例中的维数仍然相同。再说一遍:如果他只有 4 个特征和因变量,为什么还要这样做?
  • @petezurich:为了便于理解和讨论,这是一个包含 4 个特征的示例案例。我要处理的特征是分类的,因此对它们进行编码是一种方式,但它会创建(总类别 - 1)特征来代替那个特征。所以我只是在寻找另一种方法。
  • @petezurich :此外,如果能够以可理解的数字尺度有效地转换分类特征,我也许可以组合这些特征,如果我说要处理 80-90 个分类变量,这将很有帮助.

标签: machine-learning regression categorical-data dimensionality-reduction feature-engineering


【解决方案1】:
  1. 据我所知,对颜色和形状等标称特征进行热编码的效果更好。像您所做的那样放置整数值会在白色上添加一个额外的值,这是没有意义的。您已经假设颜色和价格之间存在高度相关性,这可能是错误的,也可能不是。我会运行顺序向后选择来检查特征的实际重要性。如果颜色和价格高度相关,您的方法可能是正确的,您现在应该缩放特征。
  2. 将功能带到相同的规模非常有效,因为它有助于为每个功能提供合理的重要性。如果一个特征是数千个并且未缩放,则权重可能会过度重视该特征。很明显,与目标变量具有高度相关性的特征应该包含在训练中。
  3. 合并两个不相关的分类列会影响您的结果。另一方面,如果它们高度相关,那么您可以合并它们。 然而,我不确定你是否应该为这个没有太多特征列的数据集承担降维的痛苦。 不过,如果您想知道如何组合彼此弱相关但与目标变量高度相关的两个特征,这里有一个线程: https://stats.stackexchange.com/q/110984

这是另一篇关于数据过滤的好文章: https://towardsdatascience.com/data-correlation-can-make-or-break-your-machine-learning-project-82ee11039cc9

最后,对某种方法的评论可能并不准确。您总是需要查看它们的相关程度,并尝试不同的方法和模型。检查您的数据是否具有线性或非线性相关性,并相应地选择您的模型。对相对简单的数据进行复杂的修改并使用不必要的复杂模型可能并不总是一个好方法。

【讨论】:

  • 嗨瑞克。感谢这些见解。 1. 这是一个有 4 个变量的示例案例。我正在使用这种方法,其中有一些 80-90 个分类变量(因此在尝试一种热编码之前)。虽然不是很彻底,但我试图通过将颜色替换为各个类别的平均价格来诱导颜色和价格之间的某种相关性。从这个意义上说,对于相当大的数据集,你认为考虑蓝色比白色更好(更昂贵)是否相当明智?感谢您对该方法的见解。
猜你喜欢
  • 2015-11-29
  • 2014-11-22
  • 2019-09-04
  • 1970-01-01
  • 2019-02-17
  • 2023-03-19
  • 1970-01-01
  • 1970-01-01
  • 2020-12-04
相关资源
最近更新 更多