标签:方差 取值 很多 stop 经纬 成交 ack 提升 提高
1.训练集数据量大,测试集数据了小,容易在复赛过拟合
2.数据:个人信息 App的使用信息 个人消费记录
3.处理过程:
1)数据清洗
1.1 对缺失值的对维度处理
1.1.1 按列属性统计缺失值(可视化)
剔除缺失值比例高的属性(90%左右);
缺失值比例在40%~60%(缺省型-1);
确实在20%左右,平均数或者众数填充;
统计每个样本缺失值个数作为一个特征,通过比较训练集和测试集,作图可以看到离群点,从而剔除离群点
剔除常变量(通过查看方差/标准差)
1.2 对离群点的剔除方法
在raw data 上训练Xgboost,用得到的xgb模型输出特征的重要性,去最重要的20(or 40)个特征,统计每个样本在这20个特征上的缺失值,将缺失值大于10个的样本删除
1.3 文本处理
(1)字符大小写转换:Qq,QQ
(2)空格处理:“中国移动“,“中国移动 ””
(3)城市名处理:“重庆市”,“重庆”
2)特征工程 (业务)(一般常用方法,log,e,离散化,one-hot)
2.1 地理信息处理(类别变量->one-hot)
(1)(人工)统计了每个省份(粗维度,少),设定阈值筛选出违约率较大的几个省,然后分别对这几个省做二值特征
(2)(Xgboost)每个城市的违约率(细维度,多),为了得到有判别性的二值特征,首先对城市进行独热编码,得到333维的二值特征,然后在这333维稀疏特征上训练xgb模型,根据xgb输出的特征重要性选 取部分二值特征(对应的城市)
(3)按城市等级合并:类别型特征取值个数太多,one-hot编码后太高纬度稀疏矩阵(拿不到权重,或者得到有用的区分信息),除了上面特征选择的方法外,还有合并变量的方法(聚类)
(4)经纬度特征的引入:收集各个城市的经纬度,加入经纬度后,线下的分数提高千分位
(5)城市特征向量化(个数):将城市特征里的城市计数,并取log(尝试指数),然后等值离散化到几个区间内(例如6个:100000)
(6)地理位置差异特征:由于多列都是城市信息,构建一个城市差异的特征,比如diff_12表示1,2列城市是否相同,有千分位的提升
2.2 成交时间
(1)将成交时间连续化或者离散化处理
2.3 类别型编码
(1)组合特征:
Xgboost得到top features,于是用这部分特征构建了组合特征(两两相除得到了7000+个特征),然后使用Xgboost对这7000个特征单独训练,再取top 500达到0.73+,再把500个特征加进原始体系中,
从0.77+提到0.783,另外还有log(x*y),筛选出270多维,又提高到0.785
2.4 修改信息表的特征
(1)修改信息次数,修改信息时间到成交时间的跨度,每种信息的修改次数
2.5 App标的特征
(1)登录天数 ,平均登录间隔,每种操作代码的次数
3)特征选择
Xgboost重要度排序,降低过拟合的风险
特征的选择有很多:PCA,SVD(往往效果不好),皮尔森相关系数,正则化方法,最大信息系数,基于模型的特征排序(较好)
4)类别不平衡处理
代价敏感学习 与 过采样
5)模型设计与设计
LR+(L1正则化,1700维) 0.772
Xgboost(early stoping,bagging)
svm(sklearn.svc)
多模型的blending ensemble(stacking中的一种(linear))
标签:方差 取值 很多 stop 经纬 成交 ack 提升 提高
原文地址:https://www.cnblogs.com/354151531blogs/p/13624549.html