《机器学习Python实战》课件 12-项目6 朴素贝叶斯算法原理讲解_第1页
《机器学习Python实战》课件 12-项目6 朴素贝叶斯算法原理讲解_第2页
《机器学习Python实战》课件 12-项目6 朴素贝叶斯算法原理讲解_第3页
《机器学习Python实战》课件 12-项目6 朴素贝叶斯算法原理讲解_第4页
《机器学习Python实战》课件 12-项目6 朴素贝叶斯算法原理讲解_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

机器学习项目六|6.1项目知识准备|朴素贝叶斯分类算法实战《机器学习Python实战》

机器学习

项目6

朴素贝叶斯分类算法实战16.1.1朴素贝叶斯算法及其原理26.1.2伯努利朴素贝叶斯算法目录CONTENTS36.1.3高斯朴素贝叶斯算法46.1.4多项式朴素贝叶斯算法学习目标知识目标1.理解贝叶斯定理2.掌握朴素贝叶斯算法的基本原理3.掌握不同朴素贝叶斯模型的差异能力目标1.能够实现朴素贝叶斯算法的简单应用2.能灵活应用不同朴素贝叶斯模型处理分类问题素质目标通过反复调节参数的过程,培养精益求精的工匠精神016.1.1朴素贝叶斯算法及其原理朴素贝叶斯原理贝叶斯定理是描述随机事件N和B的条件概率(或边缘概率)的一则定理。其中P(A|B)是在事件B发生的情况下事件A发生的可能性。通常,事件A在事件B(发生)的条件下的概率,与事件B在事件A的条件下的概率是不一样的;然而,这两者有确定的关系,贝叶斯定理就是对这种关系的陈述。朴素贝叶斯原理朴素贝叶斯算法的工作流程朴素贝叶斯算法在贝叶斯算法的基础上进行了相应的简化,即假定给定目标值时属性之间相互条件独立。也就是说,没有哪个属性变量对决策结果占有较大的比重,也没有哪个属性变量对决策结果占有较小的比重。这个简化方式:降低了贝叶斯算法的分类效果简化了贝叶斯算法的复杂性朴素贝叶斯原理朴素贝叶斯算法的工作流程026.1.2伯努利朴素贝叶斯算法伯努利朴素贝叶斯算法

伯努利朴素贝叶斯算法如果样本特征是二元离散值或者很稀疏的多元离散值,适合使用伯努利朴素贝叶斯模型。在伯努利模型中,每个特征的取值是布尔型的,即true和false,或者1和0。伯努利朴素贝叶斯算法BernoulliNB类参数说明classsklearn.naive_bayes.BernoulliNB(alpha=1.0,binarize=0.0,fit_prior=True,class_prior=None)alpha浮点型,默认1.0拉普拉斯平滑因子,处理零概率问题binarize浮点型或None,默认0.0二值化阈值,None表示假定数据已二值化fit_prior布尔型,默认True是否学习先验概率,False时使用统一先验概率class_prior数组,默认None指定每个类别的先验概率,None时从数据学习常用方法:fit(X,y)|predict(X)|predict_proba(X)|score(X,y)伯努利朴素贝叶斯算法根据给定的训练数据对模型进行拟合;fit(X,y)01预测X中样本所属类别的标签,返回预测值;predict(X)02返回给定测试数据和实际标签相匹配的平均准确率。score(X,y)04返回一个数组,数组的元素依次是X预测为各个类别的概率值;03predict_proba(X)036.1.3高斯朴素贝叶斯算法高斯朴素贝叶斯算法把一个随机变量X服从数学期望为μ、方差为2σ的数据分布称为正态分布,当数学期望μ=0,方差σ=1时称为标准正态分布。高斯分布就是正态分布。图6-1

标准正态分布示意图高斯朴素贝叶斯算法图6-2

零食和饮料数据似然分布曲线

两类观众的零食和饮料数据似然分布曲线如图6-2所示,粉色曲线代表不喜欢《流浪地球》的观众的零食和饮料数据的似然分布,黑色曲线代表喜欢《流浪地球》的观众的零食和饮料数据的似然分布。从上往下分别是两类观众食用爆米花的数据似然分布曲线、两类观众食用苏打水的数据似然分布曲线和两类观众食用糖果的数据似然分布曲线。由于两类观众的人数相等,所以两类观众的先验概率均为0.5,即P(喜欢)=P(不喜欢)=0.5。高斯朴素贝叶斯算法提取喜欢《流浪地球》的观众零食和饮料数据的似然分布中3个条件对应的似然值,喜欢《流浪地球》的观众对应的概率计算。为了防止似然值的数值趋近于0而导致最终预测结果产生较大误差,对喜欢《流浪地球》的观众对应的概率做底数为e的对数化处理。0.5×P(爆米花1)×P(苏打水1)×p(糖果1)(6-4)In(0.5×P(爆米花1)×P(苏打水1)×P(糖果1))=In0.5+InP(爆米花1)+InP(苏打水1)+InP(糖果1)

(6-5)高斯朴素贝叶斯算法对喜欢《流浪地球》的观众零食和饮料数据的似然分布中3个条件对应的似然值取对数的值如表6-3所示。0.5取底数为e的对数值约为-0.69,将表6-5的数值代入式(6-5),得到如式(6-6)所示的结果。最终计算符合这三个条件的,喜欢流浪地球的观众对应的概率约为-124。

高斯朴素贝叶斯算法同理:提取不喜欢《流浪地球》的观众零食和饮料数据的似然分布中3个条件对应的似然值,不喜欢《流浪地球》的观众零食和饮料数据对应的概率计算,不喜欢《流浪地球》的观众对应的概率约为-48。

高斯朴素贝叶斯算法classsklearn.naive_bayes.GaussianNB(priors=None,var_smoothing=1e-09)基本定义如下:表示类的先验概率,对应Y的各个类别的先验概率P(Y=Ck)。这个值默认不给定,如果没有给定,模型则根据样本数据自己计算;如果给出的话就以priors为准。一般是浮点数,可以不填(默认值=1e-9)。在估计方差时,为了追求估计的稳定性,将所有特征的方差中最大的方差以某个比例添加到估计的方差中,这个比例由var_smoothing参数控制。046.1.4多项式朴素贝叶斯算法多项式朴素贝叶斯算法多项式朴素贝叶斯的特征矩阵经常是稀疏矩阵(不一定总是稀疏矩阵),适合离散特征的分类问题。(例如:文本分类中的单词计数)。多项式朴素贝叶斯算法多项式朴素贝叶斯适用于离散变量,其假设各个特征xi在各个类别y下是服从多项式分布的,故每个特征值不能是负数。多项式实验中的实验结果都很具体,它所涉及的特征往往是次数,频率,计数,出现与否这样的概念,这些概念都是离散的正整数,因此,scikit-learn中的多项式朴素贝叶斯模型不接受负值的输入。多项式朴素贝叶斯算法所有正常邮件中出现的单词以及各单词的数量,并提取了其中的四个单词对应的数据:所有垃圾邮件中出现的单词以及各单词的数量,并提取了其中的四个单词对应的数据:多项式朴素贝叶斯算法,8÷(8+4)≈0.67此数值即正常邮件的先验概率P(N)。正常邮件在总邮件中所占的数量比例是:此数值即垃圾邮件的先验概率P(S)。4÷(4+8)≈0.33垃圾邮件在总邮件中所占的数量比例是:多项式朴素贝叶斯算法计算“DearFriend”这一词组在正常邮件中出现的概率如式(6-10)所示P(N)×P(Dear1)×P(Friend1)=0.67×0.47×0.29=0.09(6-10)P(S)×P(Dear2)×P(Friend2)=0.33×0.29×0.14=0.01(6-11)计算“DearFriend”这一词组在垃圾邮件中出现的概率如式(6-11)所示因为0.09大于0.01,所以可以认为,内容包含“DearFriend”这一词组的邮件是正常邮件的可能性大手是垃圾邮件的可能性。多项式朴素贝叶斯算法MultinomialNB类参数说明classsklearn.naive_bayes.MultinomialNB(alpha=1.0,class_prior=None,fit_prior=True)alpha浮点型,默认1.0先验平滑因子(拉普拉斯平滑),0表示不添加class_prior数组,默认None指定每个分类的先验概率,None时从数据学习fit_prior布尔型,默认True是否学习先验概率,False时所有类别有相同先验常用方法:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论