特征工程-怎么选择特征?(一)

2016-08-26  本文已影响2116人  SONGLU

特征的选择对于整个模型预测的准确性有至关重要的作用,好的特征集对于一个机器学习模型的预测效果的边际贡献远远大于好的模型的贡献:

所以,还是那句话:

Garbage in, garbage out !

1. 什么是特征(Features)?

特征是任何机器学习模型的进行训练的”原材料”,无论是监督式模型(Supervised)还是无监督式(Unsupervised)模型,都需要特征集作为输入变量(Input variables)。当然监督式模型相比无监督式模型还需要输出变量(Output),我们称之为目标(target)。无论是特征还是目标,它们的类型无非以下几种:

2. 特征怎么来?

特征是机器学习模型的“原材料”,那特征的“原材料”是什么?其实就是原始数据,例如股票的行情数据、财务数据等;将这些原始数据经过一系列的转换加工得到特征,例如技术指标(MACD、DMA等)。在这个转换的过程中涉及到一系列的数据处理的流程,下面我们进行详细说明。

数据清洗及处理

做研究最怕什么?数据是错的,那一切无从谈起,在尽可能的确保数据质量的前提下,我们还是要对数据进行规范性的清洗,无论是原始数据、还是经转换后的特征集都要经过以下步骤进行处理:

3. 怎么选择特征(或指标)?

训练任何一个机器学习的模型时,输入的特征并不是越多越好,如果一股脑放入几十上百个特征去训练,往往会适得其反。一个模型的好坏往往取决于几个(三到五个)核心的指标。所以特征的选择就极为重要。特征选择主要由以下两类方法:

两种方法各有优缺点,过滤法会删除相关度较低的特征,缺点是某些特征可能本身与目标相关度较低,但与其他特征结合起来可能会提高预测的效果,所以存在误删的情况。封装法直接将特征输入模型,通过各种迭代选出最适合某些模型的一组特征;缺点时运算效率太慢,而且存在过度拟合的风险。最适合的解决办法是,通过过滤法筛选出一批有潜力的特征,再通过封装法精选特征,从而构建一个预测效果良好的机器学习模型。

在这篇文章中,我们主要讨论过滤法的实际运用。通过各种不同的判断特征重要性的方法与标准选则相应的特征,无外乎以下几种方法:

无论是N、n还是s,都可以通过优化的方法找到最优值运用到最后的模型中去。

3.1 重要性

现在主要的问题就是怎么评价一个特征对于所需预测的目标的重要性,我们称之为Variable Importance(VI)。结合各方面的文献,VI的评价方法主要有以下指标:

(未完待续)

总结

所有算法的学习都要了解该算法所针对的问题,以及这个问题是不是你当前遇到的。不推荐穷举式的尝试去找出一个最优的组合,这样的做法

附录

其他标准化方法

上一篇 下一篇

猜你喜欢

热点阅读