特征工程笔记(Feature Engineering)

作者: __jwzhang__ | 来源:发表于2017-08-30 22:27 被阅读148次

    数据和特征决定了机器学习的上限,而模型和算法只是不断地逼近这个上限。

    特征工程.png

    图片来自知乎

    往往拿到的数据会有以下问题:
    - 量纲不统一
    - 定性特征不能直接拿来使用,需要转换
    - 缺失值
    - 信息利用率低

    无量纲化:无量纲化使不同规格的数据转换到同一规格,常见的方法有标准化和区间缩放法。标准化的前提是特征值符从正态分布,标准化后,将其转换成标准正态分布。区间缩放则利用了边界值信息,将特征的值域缩放到特定的范围(比如[0,1])。

    标准化:公式如下
    均值和方差
    区间缩放
    标准化和归一化的区别(参考知乎答案)

    归一化方法

    • 把数变为(0,1)之间的小数主要是为了数据处理方便提出来的,把数据映射到0~1范围之内处理,更加便捷快速。
    • 把有量纲表达式变为无量纲表达式 归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为纯量。
      标准化方法:
    • 数据的标准化是将数据按比例缩放,使之落入一个小的特定区间。由于信用指标体系的各个指标度量单位是不同的,为了能够将指标参与评价计算,需要对指标进行规范化处理,通过函数变换将其数值映射到某个数值区间。
    对定量特征二值化:

    定量特征二值化的核心在于设定一个阈值,大于阈值的赋值为1,小于等于阈值的赋值为0,公式表达如下:


    对定性特征压扁吗: One-hot 编码
    缺失值计算: 比如通过其他特征作为输入,缺失特征作为输出。通过随机森林预测缺失特征的缺失值。
    数据变换:基于多项式,基于指数函数,基于对数函数等。

    特征选择

    当数据预处理完成后,我们需要选择有意义的特征输入机器学习的算法和模型进行训练。通常来说,从两个方面考虑来选择特征:

    • 特征是否发散:如果一个特征不发散,例如方差接近于0,也就是说样本在这个特征上基本上没有差异,这个特征对于样本的区分并没有什么用。
    • 特征与目标的相关性:这点比较显见,与目标相关性高的特征,应当优选选择。除方差法外,本文介绍的其他方法均从相关性考虑。

    根据特征选择的形式又可以将特征选择方法分为3种:

    • Filter:过滤法,按照发散性或者相关性对各个特征进行评分,设定阈值或者待选择阈值的个数,选择特征。
    • Wrapper:包装法,根据目标函数(通常是预测效果评分),每次选择若干特征,或者排除若干特征。
    • Embedded:集成法,先使用某些机器学习的算法和模型进行训练,得到各个特征的权值系数,根据系数从大到小选择特征。类似于Filter方法,但是是通过训练来确定特征的优劣。(比如随机森林)
    Filter Embedded Wrapper
    方差选择法 基于惩罚项的特征选择法 递归特征消除法
    相关系数法 基于树模型的特征选择法
    卡方检验
    互信息法

    降维

    • PCA 主成分分析
    • LDA 线性判别分析法

    相关文章

      网友评论

        本文标题:特征工程笔记(Feature Engineering)

        本文链接:https://www.haomeiwen.com/subject/uqtfjxtx.html