机器学习如何计算特征的重要性_决策树如何计算特征重要性的?

282d82a7bd3d9a3a7a9da19a342cf0fe.png

问题引入

笔者在所有的面试中都会被问答到项目中的具体特征的情况,包括特征是如何得到的,为啥这个特征有效,做了哪些特征筛选,特征重要性是如何看的,和线性回归、逻辑回归这种广义线性模型不一样,简单的决策树的特征重要性又没有类似线性回归的系数可以用来说明特征重要性,那么,树模型的特征重要性是怎么计算的呢?

问题解答

对于简单的的决策树,sklearn中是使用基尼指数来计算的,也就是基尼不纯度,决策树首先要构造好后才可以计算特征重要性,当然,我们在构建树的过程中已近计算好了特征重要性的一些值,如基尼指数,最后我们得到特征重要性的话,就直接将基尼指数做些操作就可以了。在sklearn中,feature_importances_应当就是这个Gini importance,也是就

N_t / N * (impurity - N_t_R / N_t * right_impurity
                    - N_t_L / N_t * left_impurity)

其中,N是样本的总数,N_t是当前节点的样本数目,N_t_L是结点左孩子的样本数目,N_t_R是结点右孩子的样本数目。impurity直译为不纯度(基尼指数或信息熵

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
机器学习中的特征重要性评估是衡量模型中每个特征对于预测结果贡献程度的过程。这有助于理解哪些特征对模型的性能影响最大,以及在优化模型时如何选择或调整这些特征。常见的特征重要性评估方法有: 1. **方差阈值(Variance Threshold)**:基于特征的方差来判断其对数据变化的敏感度,方差大的特征通常认为更重要。 2. **相关系数(Correlation Coefficient)**:计算特征与目标变量之间的线性相关性,高的正负相关性意味着特征可能有用。 3. **递归特征消除(Recursive Feature Elimination, RFE)**:通过反复训练模型并删除最不重要的特征,直到达到预定的复杂度或性能目标。 4. **随机森林(Random Forest)特征重要性**:随机森林提供了每个特征重要性得分,基于每个特征被错误分类的次数。 5. **梯度提升树(GBM)特征重要性**:GBM模型的每个决策树都会贡献特征重要性,这些加权平均就是最终的特征重要性。 6. **Lasso回归和Ridge回归的正则化系数**:正则化项可以提供特征选择的信息,系数接近于0的特征被认为是不重要的。 7. **Permutation Importance**:通过随机打乱特征值,观察模型性能的变化,打乱后的下降越大,特征越重要。 8. **SHAP 值(SHapley Additive exPlanations)**:这是一种基于游戏理论的方法,提供每个特征对预测值的精确贡献。 评估特征重要性的目的是为了提高模型的解释性和泛化能力,以及在特征工程阶段进行有效的资源分配。了解哪些特征最有价值可以帮助我们减少噪声、避免过拟合,并可能引导到更简洁、更高效的模型设计。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值