白小丸
2020-12-22 17:33
采纳率: 87.5%
浏览 134

机器学习特征重要程度问题

目前在用机器学习算法解决一个多分类问题,手动提的特征,20多维。有两个类别总是被错误分类成对方,尝试了随机森林、KNN、决策树、XGBoost都是一样的效果。输出特征重要程度feature_importances,发现有一维特征,我认为应该是这两类最关键的区分特征,但是特征重要性却很低,请问这是什么原因?能用什么方法干预吗,比如手动调整特征权重?

求大佬指点

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

10条回答 默认 最新

  • bj_0163_bj 2020-12-24 16:37
    已采纳

    就是特征值这两个类的占比。比如特征值等于1 ,a类占比多少,b类占比多少 。这两个占比区分度越大,对目标值越有可能高权值

    点赞 评论
  • bj_0163_bj 2020-12-22 18:50

    可能这个特征虽然能区分这两个分类,但对其他分类样本作用不大。你目前auc 多少?,几个分类?

     

    点赞 评论
  • 白小丸 2020-12-23 08:33

    总共5类,分类结果和roc曲线如下:

    我有试过单独分这两类,结果还是有很多分错的。

    点赞 评论
  • bj_0163_bj 2020-12-23 14:33

    单独把这两个类拿出来作为正负样本,看下各个特征再正负样本里的分布,理论上分布相差(类似信息熵)最大的应该就是重要特征。你说的这个特征如果很能区分这两类特征,那你单独分这两个的时候,他就应该很重要

    点赞 评论
  • 白小丸 2020-12-23 17:38

    我试过单独分这两类了,分类效果跟上面差不多,这个特征的重要性也很低。请问有方法能手动调特征权重吗?

    点赞 评论
  • bj_0163_bj 2020-12-23 23:22

    你看下特征在这两个类上的分布,手动调,只能从数据上入手,让数据的分布更有区分度,就是需要手动改一部分训练数据

    点赞 评论
  • 白小丸 2020-12-24 09:09

    再请问一下,怎么看特征在两个类上的分布啊,我没有搜到相关内容。我是用sklearn模块的,有这样的函数吗?

    点赞 评论
  • bj_0163_bj 2020-12-24 16:37

    就是特征值这两个类的占比。比如特征值等于1 ,a类占比多少,b类占比多少 。这两个占比区分度越大,对目标值越有可能高权值

    点赞 评论
  • 白小丸 2020-12-25 08:34

    通过你说的方法我发现问题所在了,现在分类效果很好了,非常感谢,采纳啦~

    点赞 评论
  • m0_55232443 2021-04-20 11:45

    老师您好,机器学习回归算法中如何使结果突显某一输入的特征?

    点赞 评论

相关推荐 更多相似问题