0、思想:

  对于给定的待分类项x,通过学习到的模型计算后验概率分布,即:在此项出现的条件下各个目标类别出现的概率,将后验概率最大的类作为x所属的类别。后验概率根据贝叶斯定理计算。

  关键:为避免贝叶斯定理求解时面临的组合爆炸、样本稀疏问题,引入了条件独立性假设。用于分类的特征在类确定的条件下都是条件独立的。

1、朴素贝叶斯朴素在哪里?

  简单来说:利用贝叶斯定理求解联合概率P(XY)时,需要计算条件概率P(X|Y)。在计算P(X|Y)时,朴素贝叶斯做了一个很强的条件独立假设(当Y确定时,X的各个分量取值之间相互独立),即P(X1=x1,X2=x2,...Xj=xj|Y=yk) = P(X1=x1|Y=yk)*P(X2=x2|Y=yk)*...*P(Xj=xj|Y=yk)。

  主要的应用:电子邮件垃圾过滤、新闻分类

  • 在训练朴素贝叶斯分类器之前,要处理好训练集,文本的清洗还是有很多需要学习的东西;
  • 根据提取的分类特征将文本向量化,然后训练朴素贝叶斯分类器。
  • 去高频词汇数量的不同,对结果也是有影响的的。
  • 拉普拉斯平滑对于改善朴素贝叶斯分类器的分类效果有着积极的作用。

2、朴素贝叶斯与LR的区别?

  简单来说:

  (1)朴素贝叶斯是生成模型,根据已有样本进行贝叶斯估计学习出先验概率P(Y)和条件概率P(X|Y),进而求出联合分布概率P(XY),最后利用贝叶斯定理求解P(Y|X), 而LR是判别模型,根据极大化对数似然函数直接求出条件概率P(Y|X);

  (2)朴素贝叶斯是基于很强的条件独立假设(在已知分类Y的条件下,各个特征变量取值是相互独立的),而LR则对此没有要求;

  (3)朴素贝叶斯适用于数据集少的情景,而LR适用于大规模数据集。

  前者是生成式模型,后者是判别式模型,二者的区别就是生成式模型与判别式模型的区别。

  1)首先,Navie Bayes通过已知样本求得先验概率P(Y), 及条件概率P(X|Y), 对于给定的实例,计算联合概率,进而求出后验概率。也就是说,它尝试去找到底这个数据是怎么生成的(产生的),然后再进行分类。哪个类别最有可能产生这个信号,就属于那个类别。

  优点:样本容量增加时,收敛更快;隐变量存在时也可适用。

  缺点:时间长;需要样本多;浪费计算资源

  2)相比之下,Logistic回归不关心样本中类别的比例及类别下出现特征的概率,它直接给出预测模型的式子。设每个特征都有一个权重,训练样本数据更新权重w,得出最终表达式。梯度法。

  优点:直接预测往往准确率更高;简化问题;可以反应数据的分布情况,类别的差异特征;适用于较多类别的识别。

  缺点:收敛慢;不适用于有隐变量的情况。

3、 在估计条件概率P(X|Y)时出现概率为0的情况怎么办?

  简单来说:引入λ,当λ=1时称为拉普拉斯平滑。

4、 朴素贝叶斯的优缺点

  优点:对小规模的数据表现很好,适合多分类任务,适合增量式训练。

  缺点:对输入数据的表达形式很敏感(离散、连续,值极大极小之类的)。

5、为什么属性独立性假设在实际情况中很难成立,但朴素贝叶斯仍能取得较好的效果?

  1)对于分类任务来说,只要各类别的条件概率排序正确、无需精准概率值即可导致正确分类;

  2)如果属性间依赖对所有类别影响相同,或依赖关系的影响能相互抵消,则属性条件独立性假设在降低计算开销的同时不会对性能产生负面影响。

6、为什么要后验概率最大化:

  等价于期望风险最小化。假设选取0-1损失函数,即分类正确取1,错误取0,这时的期望风险最小化为

7、算法问题:

  实际项目中,概率值往往是很小的小数,连续微小小数相乘容易造成下溢出使乘积为0.

  解决方法:对乘积取自然对数,将连乘变为连加。

  另外需要注意:给出的特征向量长度可能不同,这是需要归一化为通长度的向量(这里以文本分类为例),比如说是句子单词的话,则长度为整个词汇量的长度,对应位置是该单词出现的次数。

8、先验条件概率的计算方法:

   a.离散分布时:统计训练样本中每个类别出现的频率。若某一特征值的概率为0会使整个概率乘积变为0(称为数据稀疏),这破坏了各特征值地位相同的假设条件。

  解决方法一:采用贝叶斯估计(λ=1 时称为拉普拉斯平滑):

  解决方法二:通过聚类将未出现的词找出系统关键词,根据相关词的概率求平均值。

  b.连续分布时:假定其值服从高斯分布(正态分布)。即计算样本均值与方差。

转载于:https://www.cnblogs.com/zhibei/p/9394758.html

朴素贝叶斯常见面试题相关推荐

  1. 机器学习笔记 - 学习朴素贝叶斯概念及应用

    一.思想概述         贝叶斯分类算法是一大类分类算法的总称:贝叶斯分类算法以样本可能属于某类的概率来作为分类依据:朴素贝叶斯分类算法是贝叶斯分类算法中最简单的一种. 朴素贝叶斯分类器是一种用于 ...

  2. 机器学习之朴素贝叶斯算法详解

    文章目录 一. 朴素贝叶斯 1.概率基础知识: 2.朴素贝叶斯模型流程: ①计算流程: ②三个阶段: 3.拉普拉斯平滑 二. 半朴素贝叶斯分类器 概念 三.朴素贝叶斯的面试题 一. 朴素贝叶斯 1.概 ...

  3. 机器学习(五)常用分类模型(K最近邻、朴素贝叶斯、决策树)和分类评价指标

    机器学习(五)常用分类模型(K最近邻.朴素贝叶斯.决策树)和分类评价指标 文章目录 机器学习(五)常用分类模型(K最近邻.朴素贝叶斯.决策树)和分类评价指标 综述 常用分类模型 K最近邻模型 朴素贝叶 ...

  4. 机器学习面试题——朴素贝叶斯

    机器学习面试题--朴素贝叶斯 提示:这些知识点也是大厂笔试经常考的题目,我记得阿里和京东就考!!!想必在互联网大厂就会用这些知识解决实际问题 朴素贝叶斯介绍一下 朴素贝叶斯优缺点 贝叶斯公式 朴素贝叶 ...

  5. python高频面试题_02-27 朴素贝叶斯

    https://www.cnblogs.com/nickchen121/p/11686958.html 朴素贝叶斯 朴素贝叶斯是基于贝叶斯公式与特征条件独立假设的分类方法(注:贝叶斯公式是数学定义,朴 ...

  6. 算法面试必备-----数据分析常见面试题

    算法面试必备-----数据分析常见面试题 算法面试必备-----数据分析常见面试题 1.统计学问题 问题:贝叶斯公式复述并解释应用场景 问题:朴素贝叶斯的理解 问题:参数估计 问题:极大似然估计 问题 ...

  7. 数据竞赛利器XGBoost常见面试题集锦

    XGBoost的威名想必大家都有所耳闻,它不仅是数据科学竞赛神器,在工业界中也被广泛地使用.本文给大家分享珍藏了多年的XGBoost高频面试题,希望能够加深大家对XGBoost的理解,更重要的是能够在 ...

  8. 推荐:数据竞赛的利器XGBoost的常见面试题

    XGBoost的威名想必大家都有所耳闻,它不仅是数据科学竞赛神器,在工业界中也被广泛地使用.本文给大家分享珍藏了多年的XGBoost高频面试题,希望能够加深大家对XGBoost的理解,更重要的是能够在 ...

  9. 基于朴素贝叶斯分类器的西瓜数据集 2.0 预测分类_第十章:利用Python实现朴素贝叶斯模型

    免责声明:本文是通过网络收集并结合自身学习等途径合法获取,仅作为学习交流使用,其版权归出版社或者原创作者所有,并不对涉及的版权问题负责.若原创作者或者出版社认为侵权,请联系及时联系,我将立即删除文章, ...

最新文章

  1. EJB-Java服务器端构件模型使用入门(2)
  2. [官网]Prevent a worm by updating Remote Desktop Services (CVE-2019-0708)
  3. rebar Erlang构建工具(转)
  4. 【转】.NET Core全面扫盲贴
  5. nuget 包管理器
  6. LeetCode LCS 01. 下载插件
  7. 数据清洗-拉格朗日插值
  8. java spring源码_spring源码分析-spring中的bean
  9. 模拟便于直接存取的索引文件结构_07016.2.0使用Solr7对结构化csv文件建立全文索引...
  10. Android 对应的xml配置值,颜色表
  11. 校验码的计算方法说明
  12. vfp 什么是VFP?
  13. Mac OS 使用asio库
  14. 验证数据是否满足正态分布——Q-Q图和P-P图
  15. Ubuntu: Firefox 的profile missing解决
  16. C# System.Net.Mail 类 使用465端口邮件不成功
  17. cc许可_免费的公共领域和CC0许可图片的16个来源
  18. PDF Search for Mac(PDF文件搜索工具)
  19. [理财] 关于平民理财,自己的一些理解
  20. PT2262软件解码程序

热门文章

  1. vivado 设计约束学习笔记1
  2. python中质数的表达方式_python求质数的3种方法
  3. python程序变量名_python 变量名的规范
  4. python six库安装_Python 安装matplotlib,six,dateutil,pyparsing 完整过程
  5. 压力测试和负载测试区别_性能测试vs压力测试vs负载测试
  6. mysql客户端新建一个表_MySQL 建库、建用户及建表事项
  7. python和lua哪个有前途_python和lua数据类型的比较
  8. 对象tostring后怎么转成对象_对象出轨了怎么办?对象出轨正常处理方式
  9. 用matlab画声偶级辐射,matlab结题报告(电偶极子的辐射场)
  10. java 二进制输入_把从键盘输入的一个二进制数赋给变量A 然后如何转换为其他进制...