2012-02-05 160 views
2

如果我添加现有特征的线性,非线性combinatinos,它有助于更​​好地进行分类吗?例如,它是否有助于将平均值,方差作为从现有功能计算出的新功能添加?我相信它肯定取决于分类算法,就像在PCA的情况下一样,算法本身会生成相互正交的新特征,并且是输入特征的线性组合。但是在基于决策树的分类器或其他分类器的情况下它是如何起作用的呢?现有功能的组合是否具有新功能?

回答

10

是的,现有功能组合可以提供新功能和帮助分类。此外,特征与其自身的组合(例如,来自特征的多项式)可以用作分类期间要使用的这个附加数据。

作为一个例子,考虑对数回归分类器与这种线性公式作为其核心:

g(x, y) = 1*x + 2*y 

试想,您有2个观察值:

  1. X = 6; y = 1
  2. x = 3; y = 2.5

在这两种情况下,g()将等于8.如果观察属于不同类别,则无法区分它们。但是,让我们增加一个变量(功能)z,这是前2个功能组合 - z = x * y

g(x, y, z) = 1*x + 2*y + 0.5*z 

现在对于相同的看法,我们有:

  1. X = 6; y = 1; z = 6 * 1 = 6 ==> g()= 11
  2. x = 3; y = 2.5; z = 3 * 2.5 = 7.5 ==> g()= 11.75

所以现在我们得到2个不同的点并且可以区分2个观测值。

多项式特征(X^2,X^3,Y^2等)不给附加分,但功能代替变化的曲线图。例如,g(x) = a0 + a1*x是一条线,而g(x) = a0 + a1*x + a2*x^2是抛物线,因此可以更密切地适合数据。

1

一般来说,拥有更多功能总是更好。除非你有很强的预测功能(也就是说它们可以完全分离预测的类),否则我总是会建议添加更多的功能。实际上,许多分类算法(特别是决策树诱导因子)无论如何都为其目的选择最佳特征。

+2

我不同意“有更多功能总是更好” - 如何选择特征和维度的过程? – lmsasu 2012-02-09 10:12:38

+2

这个想法是,新功能(或现有功能的组合)可以让你做出更好的预测。如果他们不这样做,他们将不会被选中。正如您所指出的那样,您还可以运行功能选择以减少功能的数量。我没有看到维度的诅咒来自哪里 - 例如,支持向量机有意增加特征空间的维度以提高性能。 – 2012-02-09 18:56:39