feature selection - chaoyue520/XGBoost GitHub Wiki

数据预处理包括

  • 特殊字段统一处理:如-9999,Infinity,空值,NA,Na等用统一符号标识,大小写有区分
  • 离散变量合并:对于分类变量,挑选类别多的,考虑是否做合并处理,如merge表zhu_degree字段,合并同义词
  • 聚类:地区聚类,如reg_city按照1线,2线标识分类,payipcity按照高危与否聚合
  • Null过多的列:挑选99.5%值为null值的列,备选,是否删除
  • 唯一值列:唯一值列对Y标签没有区分度,筛选并删除
  • 连续变量极端值处理:对于连续变量,最大值比99.95分位数仍然大1000倍,则标记为含有极端值列
  • 连续变量离散化:等距离,等分位数,手动设置cut_point,计算IV值,筛选最佳分箱
  • 剔除关联字段:挑选关联字段并删除,如cuid,cardno,sessionid等
  • 分类变量one-hot编码:挑选所有分类变量并做one-hot处理,对于每一个特征,如果它有m个可能值,那么经过独热编码后,就变成了m个二元特征。分
  • 类器往往默认数据数据是连续的,并且是有序的

remarks:

  • 归一化:不需要做数据归一化处理,如log变换