kaggle经典学习

1 考核方式:Public LB(验证集) 和 Private LB(测试集)

2数据分析

分析特征分布

分析特征分布,如果是连续变量且拖尾可以考虑使用对数或者幂变化。如果是离散变量,先观察出现的频率,对少数类别使用其他编码。

分析目标变量的分布

(1)如果数据的范围很大,或者是长尾分布,适合使用对数变换
(2)如果数据符合对数正态分布(密度和分布函数如下图所示)
(3)一般情况下使用Box-Cox变换,通过变换可以使得模型有更好的优化,通常也会带来效果上的提升。
(4)上下采样与分层采用


对数正态分布概率密度.png
对数正态分布分布函数.png

分析变量两两之间的相关度和分布

3数据清洗

数据缺失值处理

(1)连续分布:正态分布则用均值补,偏态分布使用中位数补全
(2)离散分布:使用众数补全

4特征工程

特征变换

主要是针对一些长尾特征,需要进行一些幂变化或者对数变换,使得模型能更好的优化迭代。需要注意的是,GBDT或RF等模型对单调变换不敏感,其原因在于树模型在求解分裂点时只考虑排序分位点。

特征编码

(1)OneHot编码
-如果分类维度特别高的情况下进行OneHot编码会导致模型稀疏,影响模型的效能。所以,通常取前Top N的数据进行OneHot编码,其他的数据归入“其他”类目。
-利用每个ID特征的的一些统计量替代该ID取值作为特征
(2)LabelEncoder
对于Random Forests和GBDT模型,如果类别特征取值特别多,可以考虑使用LabelEncoder后的结果作为特征。

模型训练和验证

(1)模型选择


模型选择.png

Kaggle数据挖掘经验
未完待续

你可能感兴趣的:(kaggle经典学习)