【机器学习笔记】朴素贝叶斯
本文学习自 https://zhuanlan.zhihu.com/ml-jack
朴素贝叶斯
朴素贝叶斯算法是有监督的学习算法,解决的是分类问题。
1、贝叶斯决策理论
贝叶斯决策理论的核心思想:选择具有最高概率的决策。
2、条件概率
条件概率:在B发生的情况下,A发生的概率 P(A|B)
3、全概率公式
因此再代入条件概率公式,得到:
4、贝叶斯推断
对于条件概率公式:
P(A):先验概率(即在B发生之前,就能计算出A发生的概率)
P(A|B):后验概率(即在B发生之后,对A事件概率的重新评估)
P(B|A)/P(B):可能性函数(这是一个调整因子,使得预估概率更接近真实概率)
因此条件概率就是:
后验概率 = 先验概率 * 调整因子
这就是贝叶斯推断:先预估一个先验概率,然后加入实验结果,看这个实验到底是增强还是削弱了先验概率,由此得到更接近事实的后验概率。
若P(B|A)/P(B)>1,表示先验概率被增强,事件A发生的可能性变大;若=1,表示事件B无助于判断A发生的可能性;若<1,表示A的可能性变小。
5、朴素贝叶斯推断
朴素很关键,朴素贝叶斯对条件个概率分布做了条件独立性的假设。
假设有N个特征:
又因为特征是独立的,所以:
举例:一个打喷嚏的建筑工人,得感冒的概率?
根据贝叶斯定理,可得:
又打喷嚏和建筑工人是两个独立的特征,所以:
6、总结
优点:
- 生成式模型,通过计算概率来进行分类,可以用来处理多分类问题。
- 对小规模的数据表现很好,适合多分类任务,适合增量式训练,算法也比较简单。
缺点:
- 对输入数据的表达形式很敏感。
- 由于朴素贝叶斯的“朴素”特点,所以会带来一些准确率上的损失。
- 需要计算先验概率,分类决策存在错误率。
朴素贝叶斯改进之拉普拉斯平滑
在计算概率时,若某个属性特征的概率为0的分量,则最后求条件概率属于该类别的概率也为0,这就影响了分类。因此,可以采用拉普拉斯平滑,出现数初始化为1,分母初始化为2,避免出现0概率。
还有一个问题是下溢出,由于太多很小的数相乘,越乘越小,最后造成下溢出。因此对乘积结果取对数。
【机器学习笔记】朴素贝叶斯相关推荐
- matlab算法用python做_机器学习笔记—朴素贝叶斯算法实现(matlab/python)
原理知道一百遍不如自己动手写一遍,当然,现在基本上不需要自己来写算法的底层code了,各路大神们已经为我等凡夫俗子写好了,直接调用就行. 这里介绍在MATLAB中和Python中应用贝叶斯算法的小例子 ...
- 机器学习笔记——朴素贝叶斯(Naive Bayes)
1贝叶斯算法简介 贝叶斯分类算法是统计学的一种分类方法,它是一类利用概率统计知识进行分类的算法.在许多场合,朴素贝叶斯(Naïve Bayes,NB)分类算法可以与决策树和神经网络分类算法相媲美,该算 ...
- 《统计学习方法》读书笔记——朴素贝叶斯法(公式推导+代码实现)
传送门 <统计学习方法>读书笔记--机器学习常用评价指标 <统计学习方法>读书笔记--感知机(原理+代码实现) <统计学习方法>读书笔记--K近邻法(原理+代码实现 ...
- 机器学习实战---朴素贝叶斯算法实现+使用K折交叉验证(代码详解+创新)
<机器学习实战朴素贝叶斯算法实现+使用K折交叉验证> 未经允许,不得擅自转载! 提供数据集如下(永久有效,需要的自行下载): 链接:https://pan.baidu.com/s/1Sv0 ...
- 【机器学习】朴素贝叶斯、SVM和数据分布检验分析
[机器学习]朴素贝叶斯.SVM和数据分布检验分析 文章目录 1 朴素贝叶斯 2 SVM2.1 线性可分2.2 最大间隔超平面2.3 SVM 最优化问题 3 数据分布检验方法3.1 数据分布检验3.2 ...
- 机器学习:朴素贝叶斯
机器学习:朴素贝叶斯 1 朴素贝叶斯应用场景 2 朴素贝叶斯相关公式 3 sklearn库中朴素贝叶斯运用 3.1 伯努利朴素贝叶斯 3.2 多项式朴素贝叶斯 3.3 高斯朴素贝叶斯 4 代码 4.1 ...
- 机器学习:朴素贝叶斯模型算法原理(含实战案例)
机器学习:朴素贝叶斯模型算法原理 作者:i阿极 作者简介:Python领域新星作者.多项比赛获奖者:博主个人首页
- 机器学习之朴素贝叶斯 1
机器学习之朴素贝叶斯 1 朴素贝叶斯 2 朴素贝叶斯应用 3 代码实现贝努力朴素贝叶斯 4 代码实现高斯朴素贝叶斯 5 代码实现多项式朴素贝叶斯 6 总结 前言:主要介绍朴素贝叶斯的概念.公式,以及代 ...
- 【机器学习算法-朴素贝叶斯、支持向量机】
机器学习算法-朴素贝叶斯算法 1.朴素贝叶斯算法 2.支持向量机 2.1SVM基本综述 1.朴素贝叶斯算法 朴素贝叶斯是生成模型,需要根据已有的数据求出先验概率. 1.联合概率 2.条件概率 3.相互 ...
- 机器学习实战 朴素贝叶斯分类器
基于概率论的分类方法: 朴素贝叶斯 我的微信公众号: s406205391; 欢迎大家一起学习,一起进步!!! k-近邻算法和决策树会给出"该数据属于哪一类"的明确回答.不过,分类 ...
最新文章
- MYSQL数据库学习十七 日志管理
- string类的实现(构造函数,析构函数,运算符重载)
- python3.7安装keras教程_Python3.7安装keras和TensorFlow的教程图解
- Java IdentityHashMap putAll()方法与示例
- 解决HP ProLiant DL380 G5的Centos 7安装与启动不能识别硬盘问题
- GTK 4.0 图形工具包正式发布
- 【15.03.13】手动快速在Linux桌面上添加一个程序图标快捷方式
- 各个浏览器url带参限制
- ASP.NET Core 多线程 异步编程
- RISC-V MCU 应用教程之RTC自动唤醒
- Update批量更新
- Leetcode应该怎么刷?【笔试】
- 钉钉企业邮箱smtp服务器
- Qgis 如何根据范围来裁剪地图,高程图等
- 货郎担问题java算法_经典算法(1)---货郎担问题
- Windows 7 中文版命令行如何修改字符编码为UTF-8?
- 大神教你如何用 Python 快速分析你的微信好友
- 分享CFA一级考试!
- python转成exe运行出错_使用py2exe将.py转换为.exe:无法运行程序
- GAN︱生成模型学习笔记(运行机制、NLP结合难点、应用案例、相关Paper)