BAT机器学习特征工程工作经验总结(三)如何做特征处理和构建(附python代码)

本文总结了在BAT工作中的机器学习特征工程经验,涵盖了数值型、类别型、时间型、地理位置、文本型、统计型和组合特征的处理方法。包括数值型的幅度调整、离散化,类别型的one-hot编码,时间型的利用,地理位置的独热编码和选择,文本型的词袋模型和TF-IDF,以及各种特征组合技巧,如拼接、模型产出、乘法和交互特征等。
摘要由CSDN通过智能技术生成

特征处理和构建一般对以下几种数据类型做处理:

  • 数值型
  • 类别型
  • 时间型
  • 文本型
  • 统计型
  • 组合特征

2.1 数值型

1 幅度调整/归一化:python中会有一些函数比如preprocessing.MinMaxScaler()将幅度调整到 [0,1] 区间。

2.统计值:包括max, min, mean, std等。python中用pandas库序列化数据后,可以得到数据的统计值。

3.离散化:把连续值转成非线性数据。例如电商会有各种连续的价格表,从0.03到100元,假如以一元钱的间距分割成99个区间,用99维的向量代表每一个价格所处的区间,1.2元和1.6元的向量都是 [0,1,0,…,0]。pd.cut() 可以直接把数据分成若干段。

4.柱状分布:离散化后统计每个区间的个数做柱状图。

2.2 类别型

类别型一般是文本信息,比如颜色是红色、黄色还是蓝色,我们存储数据的时候就需要先处理数据。处理方法有:
   1. one-hot编码,编码后得到哑变量。统计这个特征上有多少类,就设置几维的向量,pd.get_dummies()可以进行one-hot编码。
  2. 序数编码
  3. Histogram映射:把每一列的特征拿出来,根据target内容做统计,把target中的每个内容对应的百分比填到对应的向量的位置。优点是把两个特征联系起来。
  上表中,我们来统计“性别与爱好的关系”,性别有“男”、“女”&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值