三大特征选择策略,有效提升你的机器学习水准

开发 开发工具
特征选择是数据获取中最关键的一步,可惜很多教程直接跳过了这一部分。本文将分享有关特征选择的 3 个杰出方法,有效提升你的机器学习水准。

什么是特征选择?面对试图解决的实际问题之时,什么特征将帮助你建模并不总是很清晰。伴随这一问题的还有大量数据问题,它们有时是多余的,或者不甚相关。特征选择是这样一个研究领域,它试图通过算法完成重要特征的选取。

为什么不把全部特征直接丢进机器学习模型呢?

现实世界的问题并没有开源数据集,其中更没有与问题相关的信息。而特征选择有助于你***化特征相关性,同时降低非相关性,从而增加了构建较好模型的可能性,并减小模型的整体大小。

***的特征选择方法

比如说我们要预测水上公园的票价走势;为此我们决定查看天气数据、冰淇淋销量、咖啡销量以及季节状况。

从下表中我们可以看到,夏季的门票明显比其他季节好卖,而冬季卖不出一张票。咖啡销量整年中比较稳定,冰淇淋则一年之中都有销量,但旺季是 6 月。

文中使用的各项虚构数据

表 1:文中使用的各项虚构数据。

各项虚构数据的图示对比

图 1:各项虚构数据的图示对比。

我们想要预测水上公园票价,但很可能不需要所有数据以得到***结果。数据存在 N 个维度,并且 K 数值会给出***结果。但是不同大小的子集之间存在大量的结合。

我们的目标是减少维度数量,同时不损失预测能力。让我们退回一步,看看那些我们能使用的工具。

穷举搜索

这项技术能 100% 保证找到***的可能特征以建立模型。我们认为它非常可行,因为它将搜索所有可能的特征组合并找到返回模型***点的组合。

在我们的例子中有 15 个可能的特征组合可供搜索。我使用公式 (2^n—1) 计算组合的数量。这个方法在特征数量较少的时候可行,但如果你有 3000 个特征就不可行了。

幸运的是,还有一个稍微好点的方法可用。

随机特征选择

大多数情形中,随机特征选择可以工作的很好。如果要将特征数减少 50%,只需随机选择其中 50% 的特征并删除。

模型训练完成之后,检验模型的性能,重复这个过程直到你满意为止。遗憾的是,这仍然是个蛮力方法。

当需要处理一个很大的特征集,又不能削减规模的时候,该怎么办?

最小冗余***关联特征选择

将所有的想法整合起来就能得出我们的算法,即 mRMR 特征选择。算法背后的考虑是,同时最小化特征的冗余并***化特征的关联。因此,我们需要计算冗余和关联的方程:

计算冗余和关联的方程

让我们用虚构的数据写一个快速脚本来实现 mRMR:

用虚构的数据写一个快速脚本来实现 mRMR

我并没有对结果抱有什么期待,冰淇淋的销量看起来能很精确地对售票量建模,而气温不可以。在这个例子中,似乎只需要一个变量就可以精确地对售票量建模,但在实际的问题中肯定不是这样的。

mRMR 代码地址:https://files.fm/u/bshx9hay

结论

你应该对这些特征选择方法有更好的理解,它们能帮助你减少模型特征的总数量,并保留对目标来说最重要的特征。

 

原文:

https://medium.com/towards-data-science/three-effective-feature-selection-strategies-e1f86f331fb1

【本文是51CTO专栏机构“机器之心”的原创译文,微信公众号“机器之心( id: almosthuman2014)”】

戳这里,看该作者更多好文

责任编辑:赵宁宁 来源: 51CTO专栏
相关推荐

2022-10-08 12:06:52

机器学习特征选择

2022-02-16 07:00:00

机器学习特征选择过滤法

2021-04-01 22:19:54

机器学习模型数据

2022-03-01 20:41:00

机器学习特征人工智能

2021-04-09 10:02:29

机器学习人工智能计算机

2021-05-18 08:47:30

面试团队考核

2018-08-03 10:30:16

算法回归机器学习

2015-10-21 13:48:12

机器学习干货数据

2018-11-07 13:00:30

机器学习深度学习集成学习

2020-10-30 10:23:14

机器学习趋势范式

2021-04-20 15:48:40

应用策略F5AI

2017-08-03 14:10:22

2020-08-30 16:27:30

多云云计算

2009-07-17 09:46:45

Web 2.0

2017-03-02 08:28:09

科技新闻早报

2022-07-21 18:51:13

性能优化

2017-03-15 16:15:35

2022-03-17 17:08:05

机器学习算法类型

2017-02-28 14:17:03

机器学习算法

2018-05-17 08:34:21

机器学习预测应用
点赞
收藏

51CTO技术栈公众号