机器学习分类算法之朴素贝叶斯

简介: 机器学习分类算法之朴素贝叶斯

朴素贝叶斯

背景介绍

20世纪80年代发展起来,最早由Judea Pearl1986年提出,多用于专家系统,是处理不确定性

知识和推理问题的最流行的方法。

image.png


贝叶斯算法基于贝叶斯统计分析的数学原理,是概率论和图论相结合的产物。


朴素贝叶斯模型的泛化能力要比线性分类器(如LogisticRegression 和 LinearSVC)稍差。


朴素贝叶斯模型如此高效的原因在于,它通过单独查看每个特征来学习参数,并从每个特征中收集简单的类别统计数据。


scikit-learn 中实现了三种朴素贝叶斯分类器:GaussianNB、 BernoulliNB 和 MultinomialNB。 GaussianNB 可 应 用 于 任 意 连 续 数 据, 而BernoulliNB 假定输入数据为二分类数据, MultinomialNB 假定输入数据为计数数据(即每个特征代表某个对象的整数计数,比如一个单词在句子里出现的次数)。 BernoulliNB 和MultinomialNB 主要用于文本数据分类。


概念及原理

频率 & 概率

频率:是指事件发生的频繁程度。严格定义是:在相同的条件下,进行n次试验,事件A发生的次数a称为事件A的频数,比值a/n 称为事件A发生的频率。


概率:是指某事件出现的可能性大小。严格定义是:设E是随机试验(一定是要随机的),S是样本空间(说白了就是可能出现的每种情况),对于E的每一个事件A赋予一个实数,记作P(A),称为事件A的概率,如果集合函数P(·)满足以下条件:


1.非负性:P(A)≥0;

2.规范性:对必然事件S,有P(S)=1

3.可列可加性:对于两两互不相容事件,或事件的概率=各单独事件的概率之和


先验概率 & 后验概率 & 条件概率


先验概率:事件发生前的预判概率。可以是基于历史数据的统计,可以由背景常识得出,也可以是人的主观观点给出。一般都是单独事件概率,如P(x),P(y)。

条件概率:一个事件发生后另一个事件发生的概率。一般的形式为P(x|y)表示y发生的条件下x发生的概率。

后验概率:结果发生后反推事件发生原因的概率;或者说,基于先验概率求得的反向条件概率。概率形式与条件概率相同。


感觉又回到了大学里面的概率论与数理统计的课程,其实基本的思想就是如此


贝叶斯公式


image.png


P(A|B)表示在B发生的条件下A发生的概率是多少?


全概率公式


image.png


贝叶斯公式的意义


案例:


某地区居民肝癌的发病率为0.0004,现用甲胎蛋白法进行普查。医学研究表明,化验结果是有错检的可能性。已知患有肝癌的人其化验结果99%呈阳性(有病),而没患肝癌的人其化验结果99.9%呈阴性(无病)。


现某人的检查结果呈阳性,问他真正得肝癌的概率有多大?


解答:


设A=“结果检查呈阳性”,B=“被检查患者确实有肝癌”,已知P(B)=0.0004, P(B-)=0.9996 , P(A|B)=0.99,P(A|B-)=0.001.由贝叶斯公式可得到:


image.png


复检能够大大提高化验的准确率


如果某人首次化验,成果呈阳性。第二次复检,仍然呈阳性。请问该患者患肝癌的概率有多大?  

首次检查呈阳性的患者,他的P(B)=0.284,复检仍然呈阳性,则患肝癌的概率为:


image.png


贝叶斯算法


image.png

朴素贝叶斯( Naive Bayes)模型是一种基于概率的学习方法


“朴素”不是指艰苦朴素的“朴素”,是指假设每个属性条件都是相互独立的,没有相关性


经典案例


现在给我们的问题是,如果一对男女朋友,男生想女生求婚,男生的四个特点分别是不帅,性格不好,身高矮,不上进,请你判断一下女生是嫁还是不嫁?


image.png


看到上述规则的男同胞们,及时你被上帝关上了一扇窗,那你也可以自己撬开一扇门


朴素贝叶斯案例

这是一个典型的分类问题

数学问题就是比较


p(嫁|(不帅、性格不好、身高矮、不上进))


p(不嫁|(不帅、性格不好、身高矮、不上进))


image.png

image.png




下面我将一个一个的进行统计计算(在数据量很大的时候,中心极限定理,频率是等于概率的)

p(嫁)=?

首先我们整理训练数据中,嫁的样本数如下:则 p(嫁) = 6/12(总样本数) = 1/2


image.png


则 p(嫁) = 6/12(总样本数) = 1/2


p(不帅|嫁)=?统计满足样本数如下


image.png


则p(不帅|嫁) = 3/6 = 1/2 在嫁的条件下,看不帅有多少


带入其他统计量


image.png


= (1/2*1/6*1/6*1/6*1/2)/(5/12*1/3*7/12*5/12)


贝叶斯分类器



分母对于所有类别为常数,我们只要将分子最大化皆可。又因为各特征属性是条件独立的,所以有:


image.png


1、设x={a1,a2,a3,......am}为一个待分类项,而每个a为x的一个特征属性。

2、有类别集合C={y1,y2,......yn}。

3、计算P(y1|x),P(y2|x),......,P(yn|x),。

4、如果,P(yk|x)=max{P(y1|x),P(y2|x),......,P(yn|x)},则x属于yk。


常见的三种贝叶斯模型


image.png

相关文章
|
7月前
|
机器学习/深度学习 数据采集 人工智能
【机器学习算法篇】K-近邻算法
K近邻(KNN)是一种基于“物以类聚”思想的监督学习算法,通过计算样本间距离,选取最近K个邻居投票决定类别。支持多种距离度量,如欧式、曼哈顿、余弦相似度等,适用于分类与回归任务。结合Scikit-learn可高效实现,需合理选择K值并进行数据预处理,常用于鸢尾花分类等经典案例。(238字)
|
12月前
|
机器学习/深度学习 数据采集 人工智能
20分钟掌握机器学习算法指南
在短短20分钟内,从零开始理解主流机器学习算法的工作原理,掌握算法选择策略,并建立对神经网络的直观认识。本文用通俗易懂的语言和生动的比喻,帮助你告别算法选择的困惑,轻松踏入AI的大门。
866 8
|
机器学习/深度学习 存储 Kubernetes
【重磅发布】AllData数据中台核心功能:机器学习算法平台
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
|
机器学习/深度学习 人工智能 自然语言处理
AI训练师入行指南(三):机器学习算法和模型架构选择
从淘金到雕琢,将原始数据炼成智能珠宝!本文带您走进数字珠宝工坊,用算法工具打磨数据金砂。从基础的经典算法到精密的深度学习模型,结合电商、医疗、金融等场景实战,手把手教您选择合适工具,打造价值连城的智能应用。掌握AutoML改装套件与模型蒸馏术,让复杂问题迎刃而解。握紧算法刻刀,为数字世界雕刻文明!
491 6
|
机器学习/深度学习 人工智能 算法
机器学习算法的优化与改进:提升模型性能的策略与方法
机器学习算法的优化与改进:提升模型性能的策略与方法
2546 13
机器学习算法的优化与改进:提升模型性能的策略与方法
|
机器学习/深度学习 算法 数据安全/隐私保护
基于机器学习的人脸识别算法matlab仿真,对比GRNN,PNN,DNN以及BP四种网络
本项目展示了人脸识别算法的运行效果(无水印),基于MATLAB2022A开发。核心程序包含详细中文注释及操作视频。理论部分介绍了广义回归神经网络(GRNN)、概率神经网络(PNN)、深度神经网络(DNN)和反向传播(BP)神经网络在人脸识别中的应用,涵盖各算法的结构特点与性能比较。
|
机器学习/深度学习 算法 网络安全
CCS 2024:如何严格衡量机器学习算法的隐私泄露? ETH有了新发现
在2024年CCS会议上,苏黎世联邦理工学院的研究人员提出,当前对机器学习隐私保护措施的评估可能存在严重误导。研究通过LiRA攻击评估了五种经验性隐私保护措施(HAMP、RelaxLoss、SELENA、DFKD和SSL),发现现有方法忽视最脆弱数据点、使用较弱攻击且未与实际差分隐私基线比较。结果表明这些措施在更强攻击下表现不佳,而强大的差分隐私基线则提供了更好的隐私-效用权衡。
398 14
|
人工智能 编解码 算法
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
600 0
|
机器学习/深度学习 人工智能 自然语言处理
解锁机器学习的新维度:元学习的算法与应用探秘
元学习作为一个重要的研究领域,正逐渐在多个应用领域展现其潜力。通过理解和应用元学习的基本算法,研究者可以更好地解决在样本不足或任务快速变化的情况下的学习问题。随着研究的深入,元学习有望在人工智能的未来发展中发挥更大的作用。
|
算法
PAI下面的gbdt、xgboost、ps-smart 算法如何优化?
设置gbdt 、xgboost等算法的样本和特征的采样率
635 2

热门文章

最新文章