不同数据类型处理
数值型
- 统计值:max,min,mean,std(方差)
- 离散化
比如将价格分成不同的段(可以等宽也可以不等宽),每一段表示一个向量,不同的价格可能会是同一个向量。 - Hash分桶
- 每个类别下对应的变量统计值histogram(分布状况)
- 可将数值型 => 类别型
- 幅度调整/归一化
类别型
- one-hot编码/哑变量
比如红、黄、蓝分别对应一个向量, one-hot编码每一个值对应一个向量。 - hash与聚类处理
- 小技巧:统计每个类别变量下的各个target比例,转化成数值型。
时间型
既可以看做连续值,也可以看做离散值。
1.连续值
持续时间(单页浏览时长)
间隔时间(上次购买/点击距离现在的时间)
2.离散值
列一天中的哪个时间段
- 一周中星期几
- 一年中哪个星期
- 一年中哪个季度
- 工作日/周末
文本型
- 词袋
文本数据预处理后,去掉停用词,剩下的词组成list,在词库中映射成稀疏向量。 - 把词袋中的词扩充到n-gram。
- TF-IDF:
TF(Term-Frequency),TF(t)=(词t在当前文中出现的次数)/(t在全部文档中出现的次数)
IDF(t)=ln(总文档数/含t的文档数)
TF-IDF权重=TF(t)*IDF(t) - 词袋=>word2vec
统计型
加减平均
分位线
次序型:排在第几位
比例类:比如电商中好/中/差评的比例组合型
简单组合特征:拼接型
- 模型特征组合
用GBDT产出组合特征,并将组合特征与原始特征一起放入LR训练。