贝叶斯

朴素贝叶斯算法

大兔子大兔子 提交于 2020-03-08 08:59:55
朴素贝叶斯法是一种基于贝叶斯定定理和特征条件独立假设的分类方法。对于给定的训练数据集,首先基于特征条件独立假设学习输入/输出的联合概率分布;然后基于此模型,对于给定的输入$x$,利用贝叶斯定理求出后验概率最大输出的$y$。朴素贝叶斯法对条件概率分布作了条件独立假设,朴素贝叶斯法因为这个较强的假设而得名。 一、基本方法 假设输入空间$x\in \mathbb{R}^{n}$是n维向量的集合,输出空间为类别标签的集合$y= \left \{ c_{1},c_{2},...,c_{k} \right \}$,输入为特征向量$x\in \chi $,输出为类别标签$y\in \gamma$。$X$是定义在输入空间$\chi$上的随机向量。$Y$是定义在输出空间$\gamma$上的随机变量。$P\left ( X,Y \right )$是X和Y的联合概率分布。训练数据集: $T=\left \{ \left ( x_{1}, y_{1} \right ), \left ( x_{2}, y_{2} \right ),...,\left ( x_{N}, y_{N} \right ) \right \}$ 由$P\left ( X,Y \right )$独立同分布产生。 来源: https://www.cnblogs.com/xjlearningAI/p/12437028.html

朴素贝叶斯分类的原理与流程

北城以北 提交于 2020-03-06 23:52:39
朴素贝叶斯分类是一种十分简单的分类算法,叫它朴素贝叶斯分类是因为这种方法的思想 真 的很朴素,朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。通俗来说,就好比这么个道理,你在街上看到一个黑人,我问你你猜这哥们哪里来的,你十有八九猜非洲。为什么呢?因为黑人中非洲人的比率最高,当然人家也可能是美洲人或亚洲人,但在没有其它可用信息下,我们会选择条件概率最大的类别,这就是朴素贝叶斯的思想基础。 朴素贝叶斯分类的正式定义如下: 1、设 为一个待分类项,而每个a为x的一个特征属性。 2、有类别集合 。 3、计算 。 4、如果 ,则 。 那么现在的关键就是如何计算第3步中的各个条件概率。我们可以这么做: 1、找到一个已知分类的待分类项集合,这个集合叫做训练样本集。 2、统计得到在各类别下各个特征属性的条件概率估计。即 。 3、如果各个特征属性是条件独立的,则根据贝叶斯定理有如下推导: 因为分母对于所有类别为常数,因为我们只要将分子最大化皆可。又因为各特征属性是条件独立的,所以有: 根据上述分析,朴素贝叶斯分类的流程可以由下图表示(暂时不考虑验证): 可以看到,整个朴素贝叶斯分类分为三个阶段: 第一阶段——准备工作阶段,这个阶段的任务是为朴素贝叶斯分类做必要的准备,主要工作是根据具体情况确定特征属性

极大似然估计(MLE)学习总结

泄露秘密 提交于 2020-03-06 10:26:28
原文链接: 极大似然估计(MLE)学习总结 《每天解决一个知识点系列》 估计能翻到这一页博文的盆友都是行走在机器学习/数据挖掘的路上吧,自学之路真的苦不堪言,于是下定决心把自己学到的知识点记下来,和初入机器学习之坑的基友们一起显摆显摆。话不多说,我将从一个小白的角度解读一下我对极大似然估计的理解(我比较喜欢这样叫,但为了学习方便,我采取官方说法),各位看官请往下看。 -------------------------------我是羞羞的分割线------------------------------------- 我是比较喜欢概率论的东西,对于最大似然估计的概念大家可以通俗理解为用观察去猜测真实概率。比如给定一组观察得到的样本数据X,我们无法知晓这个随机变量(其实是某个事件发生的属性值,它有多重取值可能)真实的概率分布函数是怎样的。这时候我们希望通过收集到的样本数据去猜哪个参数会影响分布函数使得最终呈现出我们观察到的这些样本。 不过,我们聪明的统计学家已经为我们观察到了复杂世界存在的各种概率分布情况及其对应的计算公式,如“正态分布”、“二项分布”、“泊松分布”等。但细心的同学们一定会发现这些所谓的分布发生的概率是有规律的,有各自的计算公式,如假设随机事件X服从均值为 µ ,方差为 σ 2 的正态分布函数,那么事件X发生的概率如下: 式1-1 但我们是不知道如何参数 µ和

贝叶斯先验概率和后验概率

陌路散爱 提交于 2020-03-02 07:23:28
前言: 贝叶斯公式究竟是什么意思,在现实中的含义是什么,什么是先验概率,什么是后验概率? 问题: 如下图所示:在一个群体中,有20个人。感冒5人,流感6人,脑膜炎4人,脑瘫3人,正常2人。 以B为例,解释一下。B表示感冒,感冒人数是5人,其中2人头疼。 现在问题是:当一个人头疼,判断这个人是感冒的概率? 解答: 1:(ABCDEF都表示事件),A表示头疼,B是感冒,C表示流感,D表示脑膜炎,E表示脑瘫,F是正常 2:因此,我们的问题就是求解 ,由贝叶斯定理我们知道: 其中: 表示在事件A发生的情况下,事件B发生的概率。 3:一个人头疼肯定是由上述5中情况导致的,因此由全概率公式,我们知道: 即: 4:从上面的图可以统计出来 , , , , 以 为例,它表示在感冒时头疼的概率,共5人感冒,2人头疼,则 , , , , , , , 则 其中,P(A)还有一个算法,就是用(总的头疼人数)除以(总的人数),同样也是0.5 5: ,因此我们知道当一个人头疼的时候,这个人感冒的概率是0.2 同样的方式计算 , , , 所以,当一个人头疼时,他感冒的概率是0.2,流感的概率是0.4,脑膜炎的概率是0.3,脑瘫的概率是0.1,正常的概率是 0,就是说只有这个人头疼,他就不可能是正常人,一定是患病的,这很好解释,因为正常人不会头疼。 总结: 通过这个例子可以发现,当我们要解答“一个人头疼

朴素贝叶斯

不打扰是莪最后的温柔 提交于 2020-03-01 03:11:33
日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) 1.1 朴素贝叶斯算法简介 1.2 概率基础复习 1.概率定义 概率定义为一件事情发生的可能性 扔出一个硬币,结果头像朝上 P(X) : 取值在[0, 1] 2.案例:判断女神对你的喜欢情况 在讲这两个概率之前我们通过一个例子,来计算一些结果: 问题如下: 女神喜欢的概率? 职业是程序员并且体型匀称的概率? 在女神喜欢的条件下,职业是程序员的概率? 在女神喜欢的条件下,职业是程序员、体重超重的概率? 计算结果为: P(喜欢) = 4/7 P(程序员, 匀称) = 1/7(联合概率) P(程序员|喜欢) = 2/4 = 1/2(条件概率) P(程序员, 超重|喜欢) = 1/4 思考题:在小明是产品经理并且体重超重的情况下,如何计算小明被女神喜欢的概率? 即P(喜欢|产品, 超重) = ? 此时我们需要用到朴素贝叶斯进行求解,在讲解贝叶斯公式之前,首先复习一下联合概率、条件概率和相互独立的概念。 3.联合概率、条件概率与相互独立 联合概率:包含多个条件,且所有条件同时成立的概率 记作:P(A,B) 条件概率:就是事件A在另外一个事件B已经发生条件下的发生概率 记作:P(A|B) 相互独立:如果P(A, B) = P(A)P(B)

超参数调整对比:网格搜索,随机搜索,贝叶斯优化 sklearn hyperopt

故事扮演 提交于 2020-02-28 23:38:58
ML-sklearn参数随机优化:GridSearchCV、RandomizedSearchCV、hyperopt ML模型超参数调节:网格搜索、随机搜索与贝叶斯优化 贝叶斯优化: 一种更好的超参数调优方式 Theroy: 贝叶斯优化/Bayesian Optimization Compare with code in detail: 用贝叶斯优化进行超参数调优 随机搜索RandomizedSearchCV原理 Theroy: 随机搜索 Explain how good bayesian optimization is 来源: CSDN 作者: Yummy_Ou 链接: https://blog.csdn.net/weixin_45366564/article/details/104561996

02-27 朴素贝叶斯

柔情痞子 提交于 2020-02-28 07:06:37
文章目录 朴素贝叶斯 朴素贝叶斯学习目标 朴素贝叶斯引入 朴素贝叶斯详解 朴素贝叶斯构造 朴素贝叶斯基本公式 朴素贝叶斯参数估计 特征值为离散值 特征值为稀疏的离散值 特征值为连续值 三种不同的朴素贝叶斯 多项式朴素贝叶斯 伯努利朴素贝叶斯 高斯朴素贝叶斯 朴素贝叶斯流程 输入 输出 流程 朴素贝叶斯优缺点 优点 缺点 小结 朴素贝叶斯   朴素贝叶斯是基于贝叶斯公式与特征条件独立假设的分类方法(注:贝叶斯公式是数学定义,朴素贝叶斯是机器学习算法)。朴素贝叶斯基于输入和输入的联合概率分布,对于给定的输入,利用贝叶斯公式求出后验概率最大的输出 y y y 。即可以总结为以下三点 已知类条件概率密度函数表达式和先验概率 利用贝叶斯公式转换成后验概率 根据后验概率大小进行决策分类 朴素贝叶斯学习目标 朴素贝叶斯构造 朴素贝叶斯基本公式 朴素贝叶斯参数估计 多项式朴素贝叶斯、伯努利朴素贝叶斯、高斯朴素贝叶斯 朴素贝叶斯流程 朴素贝叶斯优缺点 朴素贝叶斯引入   假设现在有一个有两个类别的鸢尾花数据集,并且已经知晓每个数据的分类情况,并且假设数据的分布如下图所示。 # 朴素贝叶斯引入图例 from matplotlib . font_manager import FontProperties import matplotlib . pyplot as plt from sklearn

[机器学习] 朴素贝叶斯分类

荒凉一梦 提交于 2020-02-27 14:26:22
贝叶斯决策理论 一个数据集,分为两类,其中每个样本的分类我们都已知晓 一个新的点 ( x , y ) (x, y) ( x , y ) ,其分类未知。 按照什么方式来决定将这个点分到一类中呢?我们提出如下规则: 如果 p 1 ( x , y ) > p 2 ( x , y ) p_1(x,y)>p_2(x,y) p 1 ​ ( x , y ) > p 2 ​ ( x , y ) ,则 ( x , y ) (x,y) ( x , y ) 为红色( p 1 p_1 p 1 ​ )一类。 如果 p 2 ( x , y ) > p 1 ( x , y ) p_2(x,y)>p_1(x,y) p 2 ​ ( x , y ) > p 1 ​ ( x , y ) ,则 ( x , y ) (x,y) ( x , y ) 为蓝色( p 2 p_2 p 2 ​ )一类。 贝叶斯决策理论核心思想 :选择具有最高概率的决策。 朴素贝叶斯分类 正式定义 设 x = x= x = { a 1 , a 2 , . . . , a m a_1, a_2,...,a_m a 1 ​ , a 2 ​ , . . . , a m ​ } 为一个待分类项, a i a_i a i ​ 为 x x x 的每一个特征属性 有类别集合 C = C= C = { y 1 , y 2 , . . . , y n y_1, y_2

生成算法和判别算法有什么区别?

时光总嘲笑我的痴心妄想 提交于 2020-02-27 14:10:08
请帮助我理解 生成 算法和 判别 算法之间的 区别 ,记住我只是一个初学者。 #1楼 在实践中,模型使用如下。 在 判别模型中 ,要从训练示例 x 预测标签 y ,您必须评估: 这只是选择考虑 x 的最可能的类 y 。 这就像我们试图 模拟类之间的决策边界 。 这种行为在神经网络中非常清楚,其中计算出的权重可以看作是一个复杂形状的曲线,隔离了空间中一个类的元素。 现在,使用贝叶斯的规则,让我们替换 在等式中 。 由于您只对 arg max 感兴趣,因此您可以消除分母,这对于每个 y 都是相同的。 那么,你就离开了 这是你在 生成模型中 使用的等式。 在第一种情况下,你 有条件概率分布 p(y|x) ,它模拟了类之间的边界,在第二种情况下,你有 联合概率分布 p(x,y),因为p(x,y)= p (x | y)p(y),它 明确地模拟每个类的实际分布 。 使用联合概率分布函数,给定 y ,您可以计算(“生成”)其各自的 x 。 因此,它们被称为“生成”模型。 #2楼 生成算法 模拟数据的生成方式,以便对信号进行分类。 它提出了一个问题:基于我的一代假设,哪个类别最有可能产生这个信号? 判别算法 不关心数据是如何生成的,它只是对给定信号进行分类。 #3楼 一个额外的信息点,与上面的StompChicken的答案很好。 判别模型 和 生成模型 之间的 根本区别 在于: 判别模型