特征工程(一)

2017-08-10  本文已影响0人  士多啤梨苹果橙_cc15

转自七月算法班

特征工程需要根据实际的业务场景进行处理

---数据与特征处理

1. 数据选择/清洗/采样

2. 数值型/类别型/日期型/文本型特征处理

3. 组合特征处理

---特征选择

1. Filter/Wrapper/Embedded 三种特征选择方式及开发包/案例

特征:数据中抽取出来的对结果预测有用的信息

特征工程是使用专业背景知识和技巧处理数据,使得特征能在机器学习算法上发挥更好的作用的过程

意义:

      更好的特征意味着更强的灵活度

     更好的特征意味着只需要用简单的模型

     更好的特征意味着更好的结果

真正在互联网公司进行开发的人,在做

     1. 跑数据,各种map-reduce,hive SQL,数据仓库搬砖

     2. 数据清洗

     3. 分析业务,分析case,找特征

     4. 应用在常见的机器学习算法上  

特征工程在特征工业界的作用

能够有效提高AUC

更高效的特征,能够获得更精准的结果

---1. 数据采集(思考哪些数据对最后的预测结果有帮助)

举例:现在要做预测用户对商品下单情况,或者做商品推荐,那么我们需要采集什么信息?

从三个维度:商家的,商品的,用户的

商家(商家评分,评论数据:发货速度,开业时间,服务态度)

商品(购买量、点击量、加入购物车、商品固有属性)

用户(历史性:以前购买最高价,最低价、喜欢什么材质、消费能力

上下文信息:停留时间)

----2. 数据格式化

  确定存储格式

  1. 按时间存储(年月日、时间戳、第几天)

   2. 单个动作记录/一天行为集合

大多数情况需要关联很多的hive表和hdfs文件夹,所以要用到很多的map-reduce

----3. 数据清洗

   去掉脏数据

举例:

简单:身高高于3米+ | 一个月买脸盆墩布买了10w的人 | 5,6w买发卡

组合或者统计属性判定:

1)号称在米国却ip一直都是大陆的新闻阅读用户

2)判定一个人是否会买篮球鞋,样本中女性用户占比85%

补齐可对应的缺省值

1)不可信样本丢掉,缺省值极多的字段考虑不用(比如contry,contrycode)

---4. 数据采样

   很多情况下,正负样本是不均衡的

     1)电商的用户点/买过的商品和没有行为的商品

      2)某些疾病的患者和健康人

   大多数的模型对正负样本的比例是敏感的(比如LR)

   随机采样和分层抽样

正负样本不平衡的处理办法

1. 正样本>>负样本,且量都很大 -->downSampling(下采样,从正样本中抽取和负样本差不多1:1的情况)

2. 正样本 >>负样本,量不大

    1)采集更多数据

    2) 上采样/oversampling(比如图像识别中的镜像和旋转)造一些负样本

    3) 修改损失函数(给负样本大一些权重)

上一篇 下一篇

猜你喜欢

热点阅读