特征工程常见问题

1 不均衡问题--类别不均衡

如果是类别分布不平衡,有很多方法解决,比如重采样,使用决策树模型(树模型对样本不均衡问题不敏感),样本加权完成,修改损失函数。但是特征分布不均衡,应该怎么做?

类别不平衡处理方法

https://www.cnblogs.com/JZ-Ser/p/7508531.html

 

1.0 重采样

过采样。复制小众类样本的数量,或者利用smote生成。

下采样。抽取大众类样本的一部分。

 

为什么过采样会起作用?

因为小众样本本分错产生的效果会累加。

 

1.1 通过样本加权

修改的不是样本对应的特征的值,而是调整样本的权重。一般是加大小众类别的权重。SVM可以进行修改,类别的样本数量越多,权重越小,也可以直接指定每种类别的权重,比如{1:10,0:1}

从算法来讲,通过加大小众样本的权重,当小众类样本出现分类错误情况时,产生的损失函数值较大,从而使得模型在学习时,会偏向于降低小样本的分错概率。

 

1.2 通过集成学习

从大众类的样本中随机抽取样本,选取所有正样本,训练基分类器。最后将各个模型的结果整合起来。

 

2  不均衡问题--特征值不均衡

例如性别特征,绝大部分为男性,少部分是女性,预测是否为程序员。如果男性样本中,大部分都是“yes”类,说明这个特征纯净度比较高,混乱程度小,信息熵小,信息增益大,适合作为决策树的根节点;如果男性样本中,“yes”类和“No”类,基本各占一半,说明这个特征意义不大。可以考虑舍弃。

 

3 特征值缺失--判断特征重要性

首先可以用皮尔森相关系数和RF等手段,判断该特征是否和列表标签相关,如何相关系数比较小,可以直接删掉,如果相关度比较高,应该怎么办?

 

皮尔森相关系数

https://baike.baidu.com/item/%E7%9A%AE%E5%B0%94%E6%A3%AE%E7%9B%B8%E5%85%B3%E7%B3%BB%E6%95%B0/4222137?fr=aladdin

 

RF选择特征

https://blog.csdn.net/tuntunwang/article/details/50587518

 

特征的重要性计算:首先利用oob作为测试集,得到RF的OOE;逐步干扰每个特征的值,得到新的OOE,哪个特征的OOE变化最大,哪个特征的重要性最大。

 

逻辑回归用于特征选择

去掉权重小的特征

 

4 特征值缺失--处理缺失特征值

某个重要的特征,确实非常严重怎么办?

中位数填充;用其他特征来预测;选用树模型。

 

决策树如何处理缺失值??

https://blog.csdn.net/u012328159/article/details/79413610

决策树对于缺失值的处理主要有两部分:第一部分是构造数的时候,计算每个节点的重要性,第二部分是如何选择路径,进入哪个子节点。

针对第一个问题,针对某个具体属性,筛选样本,得到该特征不缺失的子样本。通过该子样本,得到该节点的重要性。最后通过缺失程度进行加权,权重可以是缺失比例。

针对第二个问题,当某个属性a在某个样本中值缺失时,会按照某个概率将该样本放入所有所有子节点中。概率值,可以按照取值样本所占比例来计算。

在后续计算时,这个样本的权重就被减少了。默认样本的权重为1。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值