写在前面谈论
特征工程(feature engineering)在数据与处理当中至关重要,有时候特征选取的好,然后就不需要多么优秀的算法就能够学习出很好的结果。但是有时候特征选择的不好,那么很高端的算法也仅仅是亡羊补牢
正所谓,特征选取决定了结果质量的上限,算法和程序来尽量让结果接近这个上限
数据的初步诊断和探索
数据的特征:维度、变量、属性、字段
连续型特征和离散型特征
度量集中趋势的几种方法
均值 中位数 众数 分位数 方差 标准差 协方差 相关系数 等等
注意样本方差的计算方法需要除以n-1而不是n,这样能够使样本方差变成整体方差的无偏估计,证明在这里
https://blog.csdn.net/hearthougan/article/details/77859173
距离的定义
数值型数据的距离——Minkowski型的距离,两个D维数据,也被称为Lh范式
其他距离例如欧氏马氏和曼哈顿距离,极大距离,余弦相似度
模型输入影响处理结果,如果输入数据很垃圾那么可能得到的也是一堆垃圾。
正式构建模型之前往往要对数据进行恰当的预处理
数据预处理的形式
- 数据清洗
- 数据整合
- 数据转换
- 数据规约
二、缺失值处理和离群值检测
美国威斯康星统计系的著名教授邵军曾经描绘过统计的主要工作是我有一堆数据,然后从里面能够提取出什么有用的东西,而且能够描绘出数据的特征,所以主要工作是数据的缺失值处理和离群值检测。
数据缺失的原因
采集过程造成数据缺失
数据通过网络等渠道传输时也可能出现数据丢失或者出错,从而造成数据缺失。
在数据整合过程中也可能引入缺失值
删除样本
删除存在缺失值的样本,这样样本有多个缺失值,且存在缺失值的样本
均值填补
计算特征值当中非
随机填补
随机填补是在均值填补的基础加上随机项,通过增加缺失值的随机性来改善缺失值分布过于集中的缺陷
例如:近似贝叶斯bootstrap方法
基于模型的填补
将缺失特征y当做预测目标:
使用其余特征作为输入,利用特征非缺失样本构建分类或回归模型,使用构建的模型预测缺失特征的缺失样本值
其他缺失值处理方法
哑变量方法:对于离散型特征,将缺失值作为一个单独的取值进行处理,EM算法填补
离群值
离群值的检测和处理方法变得格外重要,
①有基于统计的方法
在上下α分位点之外的值以为异常值
盒图观察
②基于近邻的方法,我们要格外关注离群值在不同环境下差生的不同效果。
通过比较每个点p和其邻域点的密度来判断该点是否为异常点,如果点p的密度越低,越可能被认定是异常点
密度通过点之间的距离来计算,点之间距离越远,密度越低,距离越近,密度越高。
常用的数据转换方法(标准化,离散化等)
- 特征编码
- 数据标准化
- 特征离散化
特征编码工作
模型输入的特征通常是数值型的,所以需要将非数值型特征转化为数值型特征:如性别、职业、收入水平、国家、汽车使用品牌
数字编码:one-hot编码、哑变量编码方法
One-Hot编码:将包含K个取值的离散型特征转换成K个二元特征,不同的原始数据值将拥有相同的距离,One-Hot编码对包含离散型特征的回归模型及分类模型的效果有很好的提升
哑变量编码
将包含K个取值的离散型特征转换成K-1个二元特征
数据标准化
网友评论