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

22 | 朴素贝叶斯:如何让计算机学会自动分类?

SVM支持向量机
决策树
KNN最近邻
分类新数据
建立模型
准备数据
平滑技巧
转化为数字
提取属性
条件概率
后验概率
先验概率
贝叶斯法则
朴素贝叶斯分类 VS 其他分类算法
朴素贝叶斯分类
将原始信息转化为计算机能看懂的数据
核心思想
思考题
朴素贝叶斯
如何让计算机学会自动分类?

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

你好,我是黄申。今天我们来聊聊朴素贝叶斯。
在开始正式的内容之前,我想问你一个问题,你是如何区分苹果、甜橙和西瓜的?你可能要说了,这个问题还用得着讲吗?是不是你们博士都喜欢将简单的问题复杂化?还真不是,如果你将计算机想象成一个两三岁的孩子,你会怎么教一个孩子区分这些水果呢?
比如我曾经就和一个小朋友有过这样一段对话:
小朋友:黄叔叔,你和我讲讲,什么样的水果才是苹果呀?
我:圆形的、绿色的水果。
小朋友:那西瓜也是圆形的、绿色的呀?
我:嗯……苹果也有可能是黄色或红色的,但西瓜不是。
小朋友:那甜橙也是圆形的、黄色的呀?
我:好吧,你看到的大部分情况下的甜橙都是黄色的,而苹果只有很少情况(少数品种)是黄色的。而且你还可以尝尝,它们的味道也是不同的。
哈哈,你是不是觉得想要描述清楚,并没有想象中的那么容易?但是,在这个对话中,有两点我觉得你需要关注一下:
我使用了“可能”“大部分情况”“很少情况”等等这种词语,这些词包含了概率的概念;
我使用了多个条件来判断一个水果属于哪个类别。
基于此,我接下来就要聊聊,我们是如何通过数学的思想和方法,系统性地解决这个问题的。其中,朴素贝叶斯(Naive Bayesian)就提供了一个切实可行的方案。不过,在深入了解它之前,我们还需要做点准备工作。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

朴素贝叶斯分类是一种基于概率的机器学习方法,通过统计训练样本中各类别的先验概率和属性的条件概率,实现对新数据的分类。本文以水果分类为例,生动地解释了朴素贝叶斯分类的核心思想和实现步骤。作者首先介绍了将原始信息转化为计算机可理解的数据的过程,包括提取属性并转化为数字。然后详细讲解了朴素贝叶斯的核心思想,包括先验概率、后验概率、条件概率和贝叶斯法则。接着,作者解释了朴素贝叶斯的核心假设,即属性之间相互独立,以及如何通过统计训练样本建立朴素贝叶斯模型。最后,通过实例演示了如何利用建立的模型对新数据进行分类。文章通俗易懂,深入浅出地介绍了朴素贝叶斯分类的原理和实现过程,适合初学者快速了解该技术。此外,文章还对朴素贝叶斯与其他常见分类算法进行了比较,指出了朴素贝叶斯在离散属性值、模糊分类和快速可靠的实时分类方面的优势。文章内容丰富,涵盖了理论推导和实际应用,为读者提供了全面的了解朴素贝叶斯分类的机会。

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

全部留言(46)

  • 最新
  • 精选
  • 山中清泉明月照
    p(c|f1,f2)=p(c|f1)*p(c|f2)/p(c) 应该是这样子吧

    作者回复: 严格来说,应该这样推导 p(c|f1,f2)=p(c,f1,f2)/p(f1,f2)=p(c)*p(f1|c)*p(f2|f1,c)/p(f1,f2) 由于朴素贝叶斯中的马尔科夫假设,f1和f2独立,p(c)*p(f1|c)*p(f2|f1,c)=p(c)*p(f1|c)*p(f2|c),而p(f1,f2)=p(f1)*p(f2),所以p(c)*p(f1|c)*p(f2|f1,c)/p(f1,f2) = p(c)*p(f1|c)*p(f2|c)/(p(f1)*p(f2))

    2019-07-07
    8
    17
  • Bora.Don
    感觉老师讲得特别好,谢谢老师!同时还在极客上购买了人工智能和数据分析的课程,都讲了朴素贝叶斯,在这讲得最明白

    作者回复: 感谢支持🙏

    2019-03-02
    2
    14
  • 机智的捞球布
    请问老师: P(c|fi)的值不也是可以直接从训练样本中统计出来的么,为什么要用贝叶斯定理转换成p(fi|c) * p(c) / p(fi), 用另外三个统计值计算出来呢。

    作者回复: 这是一个非常好的问题。确实从实现的角度来说,我们也可以直接统计p(c|fi),不过这需要一些额外的数据结构,例如类似搜索引擎的倒排索引,以及对应的预处理。这会引入一些额外的空间和实际复杂度开销,特别是在大规模并行处理的时候,更加复杂一点。

    2019-06-02
    5
    12
  • 唯她命
    朴素贝叶斯 必须各个特征相互独立的吗?

    作者回复: 是的,朴素贝叶斯的“朴素”或者说naive就是指这个“天真”的假设。当然,很多时候并不成立,我们可以使用多阶马尔科夫模型来稍作修改,后面几节会有介绍。

    2019-02-16
    9
  • 邓艺晋_Jim
    为何三个概率加起来不是等于1,新来的水果不是苹果就是橙子或者西瓜啊,另外想问极客的机器学习课程在哪里有,谢谢

    作者回复: 需要把三个概率再归一化,因为这个概率都只是近似值,是根据贝叶斯规则推算的,所以不是真实的概率,只是一个推算值,看相对大小。 另外,极客时间里有机器学习的课程,你可以看看专栏或者视频课程的列表

    2019-03-25
    4
    8
  • 201200986
    终于明白朴素贝叶斯在分类中的原理了,给定的训练集其实包含训练集中每个类别的概率 每个特征的概率以及在已知类别下特征的条件概率,最终可以利用贝叶斯求得在给定特征下类别的概率,从而根据特征求得其属于哪个分类。不知道我这个理解对不对?

    作者回复: 是的👍

    2020-03-22
    6
  • temool
    越看到后面越吃力,前面的也要再重新捋一遍

    作者回复: 反复阅读和练习,就能加深印象,加油!

    2019-02-11
    6
  • A君
    哦log原来是用于将计算机无法处理的小数转成绝对值大于1的数

    作者回复: 是的

    2020-06-27
    3
  • oillie
    垃圾邮件可以用贝叶斯分类

    作者回复: 确实是

    2020-02-03
    2
  • 刘清斌
    老师,这一讲真的很清楚明白,比其他的书籍和教程讲的形象和容易理解

    作者回复: 感谢支持!

    2019-10-28
    2
收起评论
显示
设置
留言
46
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部