假设我有一个数据集,但我不知道哪些特征与解决分类/回归问题相关。
在这种情况下,使用降维算法然后应用分类算法是否值得/好?或者我是否可以使用我的常识“随机”选择我的特征,然后尝试调整我的算法?
此外,如果有人对“在现实生活中的真实用例”中的降维有一些解释,那就太好了,因为我觉得我对降维的理解是错误的!
假设我有一个数据集,但我不知道哪些特征与解决分类/回归问题相关。
在这种情况下,使用降维算法然后应用分类算法是否值得/好?或者我是否可以使用我的常识“随机”选择我的特征,然后尝试调整我的算法?
此外,如果有人对“在现实生活中的真实用例”中的降维有一些解释,那就太好了,因为我觉得我对降维的理解是错误的!
好吧,假设这取决于您的数据分布。在像PCA这样的方法中,该方法不关心手头数据的标签。这就是为什么PCA可能导致有时难以分离的数据,反之亦然。PCA只关心哪个方向会导致更多差异,并将该方向作为新的基础。不关心标签是为什么你不能说它可能会导致更好的分类空间。你必须使用它,然后调查它是否有用。诸如LDA或其他变体之类的方法会处理标签,但它们是线性分类器,至少在您尚未进行任何特征工程的当前特征空间中并不强大。
问题是:为什么要应用功能选择?
在许多算法中,您可以使用所有特征,而模型会选择对预测更重要的特征。
对我来说,应用特征选择的一些原因是:
如果您不在乎包含哪些功能,使用 PCA(或类似的东西)会有所帮助。
如果您确实有一些关于哪些特征影响分类或回归的信息,您当然可以尝试在没有降维的情况下拟合模型。
PCA 是更常见的降维技术之一,它产生的向量都是正交的(例如,不相关的)。这意味着即使您的特征是相关的,在降维之后,您的模型也不会遇到共线性问题。根据您的模型类型,这可能至关重要。一个真实的例子可以是任何住房数据集,其中的特征描述了房子,目标是价格。许多特征将是相关的(例如浴室数量和卧室数量或房间数量和平方英尺),因此线性回归模型可能会被共线性绊倒。降维将捕获特征之间的差异,同时产生更少的列。
对于特征选择,我们也可以使用随机森林。检查这个: https ://chrisalbon.com/machine_learning/trees_and_forests/feature_selection_using_random_forest/
此外,向前/向后逐步变量选择也是一种选择。检查这个: https ://gerardnico.com/data_mining/stepwise_regression