程序员的数学基础课
黄申
LinkedIn 资深数据科学家
83374 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 58 讲
导读 (1讲)
基础思想篇 (18讲)
程序员的数学基础课
15
15
1.0x
00:00/00:00
登录|注册

28 | 熵、信息增益和卡方:如何寻找关键特征?

思考题
总结
利用卡方检验进行特征选择
利用信息熵进行特征选择
什么是特征选择?
特征选择

该思维导图由 AI 生成,仅供参考

你好,我是黄申。今天我们来说说特征选择。
我们已经讨论过信息熵和信息增益在决策树算法中的重要作用。其实,它们还可以运用在机器学习的其他领域,比如特征选择。你可能对“特征选择”这个名词不太熟悉,没有关系,我先花点时间,给你介绍一下什么是特征选择,以及机器学习为什么需要这个步骤。

什么是特征选择?

在编程领域中,机器学习已经有了十分广泛的应用,它主要包括监督式学习(Supervised Learning)和非监督式的学习(Unsupervised Learning)。监督式学习,是指通过训练资料学习并建立一个模型,并依此模型推测新的实例,主要包括分类(Classification)和回归(Regression)。
无论是在监督学习还是非监督学习中,我们都可以使用特征选择。不过,我今天要聊的特征选择,会聚焦在监督式学习中的特征处理方法。因此,为了说清楚特征选择是什么,以及为什么要进行这个步骤,我们先来看看监督式机器学习的主要步骤。
机器学习的步骤主要包括数据的准备、特征工程、模型拟合、离线和在线测试。测试过程也许会产生新的数据,用于进一步提升模型。在这些处理中,特征工程是非常重要的一步。
“特征”(Feature),是机器学习非常常用的术语,它其实就是可用于模型拟合的各种数据。前面讲朴素贝叶斯分类时,我解释了如何把现实世界中水果的各类特征转化为计算机所能理解的数据,这个过程其实就是最初级的特征工程。当然,特征工程远不止原始特征到计算机数据的转化,还包括特征选择、缺失值的填补和异常值的去除等等。这其中非常重要的一步就是特征选择。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

利用信息熵进行特征选择是机器学习中的重要步骤。本文详细介绍了利用信息熵进行特征选择的方法,并以文本分类为例进行说明。通过信息熵衡量特征对分类的区分能力,以及利用信息增益来评估特征的价值,可以对特征进行排序,挑选出对分类有帮助的关键特征,从而提高机器学习模型的性能。此外,文章还介绍了利用卡方检验进行特征选择的方法,以及对特征选择的思考和应用。特征选择的重要性在于可以减少模型存储的空间,提升分类的准确度,但需要结合实验,把握一个合理的度。文章内容深入浅出,对于读者快速了解特征选择的方法和思考题具有一定的指导意义。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《程序员的数学基础课》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(14)

  • 最新
  • 精选
  • 建强
    基尼指数也可以用于特征选择,公式的图没法贴出来,基尼指数越低,纯度越高,特征对于分类越有区分价值。公式大致如下: Gini(P, Dfi) = p(fi) * Gini(Dfi) + p(-fi) * Gini(-Dfi),Dfi表示特征fi,-fi和-Dfi表示不出现数据特征,而单个数据特征的Gini指数公式大致如下: Gini(Dfi) = 1-sum(1..m)[p(Cj | Dfi)]^2,其中,sum表示连加,就是公式中的西格码,(1..m)表示含有数据特征的m个分类,Cj表示第j个分类,只能这样大致表示下。 这样的理解是否正确,请老师指正。

    作者回复: 就是这个意思

    2020-06-28
    7
  • 那时刻
    老师,你好。关于使用卡方检验来进行特征选择,能否在答疑课的时候,给个具体例子讲解下?

    作者回复: 你好,你说的具体例子,是指通过实际的数据或代码来分析一下?

    2019-02-20
    6
  • 总统老唐
    黄老师,关于使用卡方检验做特征选择,按照文中的讲法,实际上是检测的某个特征 fi 和 某个类 cj 的相关性,但是我们面对的实际情况是有 m 个特征,n 个类,那么: 1,是不是代表要做 m×n 次计算? 2,即便计算结果表明 fi 和 cj 类相关性很高,也有可能 fi 和 ck类 相关性很低,那这个结果对是否选取 fi 作为整体n个类的特征有什么指导意义呢?

    作者回复: 1. 是的,要做mxn次比较 2. 我的理解特征选择,可以按照整体也可以按照分类。如果是整体,可以定义简单的按权加和

    2019-12-27
    4
  • Bora.Don
    老师,您好,感觉最近几节课您讲了很多概念,很多公式,可是运用上的实例似乎有点少,第一遍看懂了,可是过两天估计就忘记了,能否提供一下代码?这样可以自己动手操作一遍,非常感谢

    作者回复: 我在专栏结束后整理一下,供大家参考

    2019-03-10
    4
  • zhulihui
    老师好,想问个问题,一定要做特征选择么,能说说特征选择的必要性么。如果把所有特征都扔到模型会有什么副作用

    作者回复: 这是个好问题,通常要结合具体的案例和数据来看。如果特征数量很少的时候,一般不需要。如果特征太多,而样本不是很多的时候,容易过拟合,而且使用全部的特征效率也比较差,这个时候特征选择就有意义了

    2019-03-21
    3
  • 13311195819
    老师您用的什么画图软件,看起来画图很漂亮;我在网上找了好久找不到

    作者回复: 你是指这一节专栏吗?好像这期没有画什么图啊😆

    2019-02-20
    2
    3
  • A君
    随机森林模型也有对特征对分类的重要性进行排序的功能,它是否也是用卡方公式算出来的?

    作者回复: 要看具体实现,原理是一致的

    2020-07-23
    2
  • Paul Shan
    本文先引入了条件熵,条件熵只反映了特征和全局数据的相关性,并没有考虑不在条件分类下的情况。例如癌症筛查,只给没有癌症标签的分类器,全局准确度很高,因为患癌毕竟是小概率事件。为了解决这个问题,引入了条件分类下的信息增益。这种情况下,只给没有癌症的分类器就现形了,信息增益为零。 和条件分类下的信息增益类似,卡方检验用联合概率来简化计算,目的还是计算相关性。我感觉卡方检验和相关系数非常类似,请问老师为什么不直接用相关系数检验相关性,卡方检验相对于相关系数有什么好处?

    作者回复: 原理是类似的,但是假设和具体实现有所不同,个人觉得可以在实验中都尝试一下看看效果

    2019-09-12
    2
  • William
    老师,在计算信息增益的公式中,P(cj|Dfi)和P(cj|Dfi)【带横杠】中的cj的含义应该是不同的吧?前者是出现fi特征的数据集合中第j个分类,后者是未出现fi特征的数据集合中第j个数据的分类。

    作者回复: 对的

    2019-08-20
    2
  • 013923
    谢谢老师!

    作者回复: 很高兴对你们有价值

    2022-09-05归属地:美国
    1
收起评论
显示
设置
留言
14
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部