1、特征数量相关
1.1 特征筛选(减少)
1.1.1单变量特征选择
卡方检验:检测分类特征对分类因变量的影响;例如根据投硬币正反面的次数推断硬币是否均衡;
参考文章:百度安全验证
相关系数:Pearson 相关系数等;检测2个连续性变量之间的线性关系强弱;所以前提是有线性关系且分别服从正态分布,这个值大小才有意义;
参考文章:常用的特征选择方法之 Pearson 相关系数 | HCigmoid
单因素方差分析:检测分类型自变量对连续性因变量的影响
参考连接:轻松学会单因素方差分析_哔哩哔哩_bilibili
原假设一般是均数相等的假设,如果求出的P值小于显著性水平则拒绝原假设;
1.1.2 正则化或者树模型featureImportances
1.1.3 递归式消除
例如利用随机森林模型,每次迭代消除1个特征;
1.2 特征交互(增多)
1.2.1 交互式特征、多项式特征
特征的高次幂或者特征间交叉相乘,产生新的特征;
一般来说,对于朴素贝叶斯或者线性模型这样的简单模型,特征做复杂,训练效果会有提升;树模型不用本身可发现交互,其他复杂的模型也不用把特征做复杂;
1.2.2 衍生特征
观察特征间业务含义,不同特征间的简单提取或加减乘除可产生新的意义的特征;
2、特征质量相关
标准化、归一化、异常值、缺失值处理、连续值离散化、离散值编码、
xgboost有缺失值处理算法,随机森林、GBDT、LightGBM不用尽量优先处理一下
3、离散特征编码相关
逻辑回归、xgboost需要做onehot处理,随机森林、GBDT、LightGBM不用;
算法不能直接处理字符串类型,spark里面有接口StringIndexer,可以对字符串类型进行K值编码;