什么是特征选择?当面对您试图解决的实际问题时,并不总是很清楚哪些特征可以帮助您建模。伴随这个问题而来的是无数的数据问题,这些问题有时是多余的或无关紧要的。特征选择是一个试图通过算法选择重要特征的研究领域。为什么不把所有的特征直接丢到机器学习模型中呢?没有针对现实世界问题的开源数据集,更不用说有关问题的信息了。特征选择可以帮助您最大化特征相关性,同时减少非相关性,从而增加构建更好模型的可能性并减少模型的整体大小。最佳特征选择方法假设我们要预测水上乐园的价格趋势;为此,我们决定查看天气数据、冰淇淋销售、咖啡销售和季节性条件。从下表可以看出,夏季门票明显好于其他季节,而冬季门票则一票难求。咖啡全年销售比较稳定,冰淇淋全年销售,但旺季在六月。表1:文章中使用的各种虚构数据。图1:各种虚构数据的图形比较。我们想要预测水上乐园的门票价格,但可能不需要所有数据来获得最佳结果。数据存在N个维度,K个值给出最好的结果。但是不同大小的子集之间存在大量的结合。我们的目标是在不损失预测能力的情况下减少维数。让我们退后一步,看看我们可以使用的工具。穷举搜索是一种100%保证找到构建模型的最佳特征的技术。我们认为这是非常可行的,因为它会搜索所有可能的特征组合,并找到返回模型最佳点的那个。在我们的示例中,有15种可能的特征组合可供搜索。我使用公式(2^n—1)来计算组合的数量。这种方法适用于特征数量较少的情况,但如果您有3000个特征,则效果不佳。幸运的是,有一种稍微好一点的方法可用。随机特征选择在大多数情况下,随机特征选择效果很好。如果要减少50%的特征数量,只需随机选择其中的50%并删除它们即可。模型训练完成后,检查模型的性能并重复该过程,直到您满意为止。可悲的是,这仍然是一种蛮力方法。当你需要处理一个非常大的特征集,而你又不能缩减尺寸时怎么办?最小冗余***相关特征选择将所有这些想法放在一起导致我们的算法,mRMR特征选择。该算法背后的考虑是同时最小化特征的冗余和最大化特征的相关性。所以我们需要计算冗余和相关方程:让我们编写一个快速脚本来使用虚构数据实现mRMR:我对结果期望不高,冰淇淋销售似乎非常准确地模拟门票销售,但温度不能。在这个例子中,似乎只需要一个变量就可以准确地对门票销售进行建模,但在实际问题中肯定不是这样。mRMR代码地址:https://files.fm/u/bshx9hay结论你应该对这些特征选择方法有更好的理解,它们可以帮助你减少模型特征的总数并为目标保留最重要的特征。原文:https://medium.com/towards-data-science/three-effective-feature-selection-strategies-e1f86f331fb1【本文为《机器之心》专栏原文翻译,微信♂》机器之心(id:almosthuman2014)》】点此阅读作者更多好文
