特征工程

特征工程其实是一个如何展示和表现数据的问题,在实际工作中需要把数据以一种“良好”的方式展示出来,使得能够使用各种各样的机器学习模型来得到更好的效果。如何从原始数据中去除不佳的数据,展示合适的数据就成为了特征工程的关键问题。

  1. 特征有用性的预估
    一个特征是否重要主要在于该特征与要预测的东西是否是高度相关的,如果是高度相关,那么该特征就是十分重要的。比如常用的工具就是统计学里面的相关系数。
  2. 特征的构造过程
    [1]任务的确定:根据具体的业务确定需要解决的问题;
    [2]数据的选择:整合数据,收集数据;
    [3]预处理数据:设计数据展现的格式,清洗数据,选择合适的样本使得机器学习模型能够使用它。比方说一些年龄特征是空值或者负数或者大于200等,或者说某个页面的播放数据大于曝光数据,这些就是数据的不合理,需要在使用之前把这一批数据排除掉。
    [4]特征的构造:转化数据,使之成为有效的特征。常用的方法是标准化,归一化,特征的离散化等。
    (4.1)标准化(Standardization):比方说有一些数字的单位是千克,有一些数字的单位是克,这个时候需要统一单位。如果没有标准化,两个变量混在一起搞,那么肯定就会不合适。
    (4.2)归一化(Normalization):归一化是因为在特征会在不同的尺度下有不同的表现形式,归一化会使得各个特征能够同时以恰当的方式表现。比方说某个专辑的点击播放率一般不会超过0.2,但是专辑的播放次数可能会达到几千次,所以说为了能够在模型里面得到更合适结果,需要先把一些特征在尺度上进行归一化,然后进行模型训练。
    (4.3)特征的离散化(Discretization):离散化是指把特征进行必要的离散处理,比方说年龄特征是一个连续的特征,但是把年龄层分成5-18岁(中小学生),19-23岁(大学生),24-29岁(工作前几年),30-40岁(成家立业),40-60岁(中年人)从某些层面来说比连续的年龄数据(比如说某人年龄是20岁1月3日之类的)更容易理解不同年龄层人的特性。典型的离散化步骤:对特征做排序-> 选择合适的分割点-> 作出区间的分割 -> 作出区间分割-> 查看是否能够达到停止条件。
    [5]模型的使用:创造模型,选择合适的模型,用合适的模型来进行预测,用各种统计指标来判断该特征是否合适;
    [6]上线的效果:通过在线测试来看效果。
  3. 特征工程的迭代步骤:

[1]选择特征:需要进行头脑风暴(brainstorm)。通过具体的问题分析,查看大量的数据,从数据中查看出可以提取出数据的关键;
[2]设计特征:这个需要具体问题具体分析,可以自动进行特征提取工作,也可以进行手工进行特征的构造工作,甚至混合两种方法;
[3]选择特征:使用不同的特征构造方法,来从多个层面来判断这个特征的选择是否合适;
[4]计算模型:通过模型计算得到模型在该特征上所提升的准确率。
[5]上线测试:通过在线测试的效果来判断特征是否有效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值