分类算法之朴素贝叶斯算法
1、 什么是朴素贝叶斯分类方法
2、 概率基础
2.1 概率(Probability)定义
概率定义为一件事情发生的可能性
- 扔出一个硬币,结果头像朝上
- 某天是晴天
P(X) : 取值在[0, 1]
2.2 女神是否喜欢计算案例
在讲这两个概率之前我们通过一个例子,来计算一些结果:
问题如下:
那么其中有些问题我们计算的结果不正确,或者不知道计算,我们有固定的公式去计算
2.3 条件概率与联合概率
联合概率:包含多个条件,且所有条件同时成立的概率
- 记作:P(A,B)
- 特性:P(A, B) = P(A)P(B)
条件概率:就是事件A在另外一个事件B已经发生条件下的发生概率
- 记作:P(A|B)
- 特性:P(A1,A2|B) = P(A1|B)P(A2|B)
注意:此条件概率的成立,是由于A1,A2相互独立的结果(记忆)
这样我们计算结果为:
p(程序员, 匀称) = P(程序员)P(匀称) =3/7*(4/7) = 12/49
P(产品, 超重|喜欢) = P(产品|喜欢)P(超重|喜欢)=1/2 * 1/4 = 1/8
那么,我们知道了这些知识之后,继续回到我们的主题中。朴素贝叶斯如何分类,这个算法经常会用在文本分类,那就来看文章分类是一个什么样的问题?
这个了类似一个条件概率,那么仔细一想,给定文章其实相当于给定什么?结合前面我们将文本特征抽取的时候讲的?所以我们可以理解为
但是这个公式怎么求?前面并没有参考例子,其实是相似的,我们可以使用贝叶斯公式去计算
3、 贝叶斯公式
3.1 公式
那么这个公式如果应用在文章分类的场景当中,我们可以这样看:
朴素贝叶斯算法中,假设所有事件都是相互独立的
公式分为三个部分:
P( C ):每个文档类别的概率(某文档类别数/总文档数量)
P(W│C):给定类别下特征(被预测文档中出现的词)的概率
计算方法:P(F1│C)=Ni/N (训练文档中去计算)
- Ni为该F1词在C类别所有文档中出现的次数
- N为所属类别C下的文档所有词出现的次数和
P(F1,F2,…) 预测文档中每个词的概率
如果计算两个类别概率比较:
所以我们只要比较前面的大小就可以,得出谁的概率大
3.2 文章分类计算
假设我们从训练数据集得到如下信息
计算结果
科技:P(科技|影院,支付宝,云计算) =
分类算法之朴素贝叶斯算法相关推荐
- k近邻算法,朴素贝叶斯算法,分类模型评估,模型调优
k近邻算法,朴素贝叶斯算法,分类模型评估,模型调优 k近邻算法 k近邻算法概述 k近邻算法代码实现 k近邻算法的评价 朴素贝叶斯算法 朴素贝叶斯算法概述 朴素贝叶斯代码实现 朴素贝叶斯的评价 分类模型 ...
- k近邻算法与朴素贝叶斯算法
机器学习--k近邻算法与朴素贝叶斯算法 k近邻算法 朴素贝叶斯 理论基础: 精确率和召回率 交叉验证与网格搜索 k近邻算法 定义:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大 ...
- 贝叶斯文本分类python_scikit_learn 中朴素贝叶斯算法做文本分类的 实践总结
朴素贝叶斯算法对于分类非常高效 想了解的可以参考这篇博文:贝叶斯从浅入深详细解析,详细例子解释 - zwan0518的专栏 - 博客频道 - CSDN.NET贝叶斯从浅入深 先来做个小小总结说明 在这 ...
- 机器学习算法基础——朴素贝叶斯算法
26.朴素贝叶斯算法原理 联合概率和条件概率 联合概率:包含多个条件,且所有条件同时成立的概率 记作:P(A,B) P(A,B)=P(A)P(B) 条件概率:就是事件A在另外一个事件B已经发生条件下的 ...
- 用python实现朴素贝叶斯算法_朴素贝叶斯算法 python 实现
应用贝叶斯准则: 使用上面这些定义,可以定义贝叶斯分类准则为: 如果 P(c1|x, y) > P(c2|x, y), 那么属于类别 c1; 如果 P(c2|x, y) > P(c1|x, ...
- java mllib 算法_朴素贝叶斯算法原理及Spark MLlib实例(Scala/Java/Python)
朴素贝叶斯 算法介绍: 朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法. 朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,在没有其它可用信息下,我 ...
- 朴素贝叶斯算法_朴素贝叶斯算法原理
摘要:本文介绍了贝叶斯公式,并根据公式而产生的朴素贝叶斯分类算法在机器学习中的应用,并列举了朴素贝叶斯分类算法的优缺点. 1贝叶斯公式的理解 贝叶斯定理(Bayes' theorem)是概率论中的一个 ...
- 机器学习 第三讲 机器学习基础、机器学习算法(K-近邻算法、朴素贝叶斯算法)
文章目录 一.机器学习基础 1.明确几点问题 2.机器学习算法的判别依据 3.机器学习算法分类 4.机器学习开发流程 二.机器学习算法 1.sklearn数据集 (1)数据集划分 (2)sklearn ...
- k-近邻算法及朴素贝叶斯算法
目录 一.k-近邻算法的定义 二.k近邻算法实例-预测入住位置 三.k-临近算法优缺点 四.精确率与召回率 1.精确率 2.召回率 3.F1-score 4.classification_report ...
最新文章
- socket python json_python实现的基于TCP的JSON数据通信
- linux apache 跨域,解决nginx/apache静态资源跨域访问问题详解
- 视频号、抖音、海外Tiktok到底该选择那个平台更好
- java中new_浅析Java中的 new 关键字
- java接口参数类型为枚举_Spring MVC处理参数中的枚举类型通用实现方法
- 17.如何正确使用TCP
- CCF201912-4 区块链(100分)【模拟】
- JavaScript-箭头函数
- 【单目标优化求解】基于matlab混沌算法求解单目标问题【含Matlab源码 1410期】
- 图像分割之(五)活动轮廓模型之Snake模型简介
- 信息收集(部分,不全面)
- python线程如何终止线程_python怎样终止线程
- python等比例压缩图片_python使用pil进行图像处理(等比例压缩、裁剪)实例代码
- RK3066查看和修改CPU频率
- 持续集成之企业微信通知:1:群机器人使用方法介绍
- 这三款小巧好用的APP,请务必收下
- Python 生成 GIF 文件
- 为什么说C++太复杂(复杂到哪了?)
- win10不能访问samba共享问题的解决
- 黑客攻防专题三:名词介绍
热门文章
- 华为P30Pro开箱照曝光 四摄模组+徕卡镜头确认
- SQLITE3 使用总结(1)【ZT】
- java简易记账软件_0006JavaSE简单的项目FamilyAccount家庭记账控制台应用程序
- php2个栈写一个队列,【数据结构】栈面试题--两个栈实现一个队列
- 判断图像局部过暗_数字图像处理(第五章)
- opencv 高反差保留算法
- php redis 菜鸟,phpRedisAdmin 安装
- pycharm+python3.7+pyqt配置_Python3+Pycharm+PyQt5环境搭建步骤图文详解
- USB HID学习:MFC检测USB拔插事件
- tomcat启动 报tomcat org.apache.catalina.LifecycleException