贝叶斯估计

贝叶斯、概率分布与机器学习

浪子不回头ぞ 提交于 2020-03-21 06:39:35
本文由LeftNotEasy原创,可以转载,但请保留出处和此行,如果有商业用途,请联系作者 wheeleast@gmail.com 一. 简单的说贝叶斯定理: 贝叶斯定理用数学的方法来解释生活中大家都知道的常识 形式最简单的定理往往是最好的定理,比如说中心极限定理,这样的定理往往会成为某一个领域的理论基础。机器学习的各种算法中使用的方法,最常见的就是贝叶斯定理。 贝叶斯定理的发现过程我没有找到相应的资料,不过我相信托马斯.贝叶斯(1702-1761)是通过生活中的一些小问题去发现这个对后世影响深远的定理的,而且我相信贝叶斯发现这个定理的时候,还不知道它居然有这么大的威力呢。下面我用一个小例子来推出贝叶斯定理: 已知:有N个苹果,和M个梨子,苹果为黄色的概率为20%,梨子为黄色的概率为80%,问,假如我在这堆水果中观察到了一个黄色的水果,问这个水果是梨子的概率是多少。 用数学的语言来表达,就是已知P(apple) = N / (N + M), P(pear) = M / (N + M), P(yellow|apple) = 20%, P(yellow|pear) = 80%, 求P(pear|yellow). 要想得到这个答案,我们需要 1. 要求出全部水果中为黄色的水果数目。 2. 求出黄色的梨子数目 对于1) 我们可以得到 P(yellow) * (N + M), P

5.机器学习之朴素贝叶斯详解

强颜欢笑 提交于 2020-03-18 01:11:41
本篇博客主要详细介绍朴素贝叶斯模型。首先贝叶斯分类器是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类器。而朴素贝叶斯分类器是贝叶斯分类器中最简单,也是最常见的一种分类方法。并且,朴素贝叶斯算法仍然是流行的十大挖掘算法之一,该算法是有监督的学习算法,解决的是分类问题。该算法的优点在于简单易懂、学习效率高、在某些领域的分类问题中能够与决策树、神经网络相媲美。但由于该算法以自变量之间的独立(条件特征独立)性和连续变量的正态性假设为前提(这个假设在实际应用中往往是不成立的),就会导致算法精度在某种程度上受影响。 朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法,是经典的机器学习算法之一。最为广泛的两种分类模型是决策树(Decision Tree Model)和朴素贝叶斯模型(Naive Bayesian Model,NBM)。和决策树模型相比,朴素贝叶斯分类器(Naive Bayes Classifier 或 NBC)发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率。同时,NBC模型所需估计的参数很少,对缺失数据不太敏感,算法也比较简单。理论上,NBC模型与其他分类方法相比具有最小的误差率。 历史背景解读: 18世纪英国数学家托马斯·贝叶斯(Thomas Bayes,1702~1761)提出过一种看似显而易见的观点:

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

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

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-12 22:57:31
原文链接: https://blog.csdn.net/liufei00001/article/details/80973809 beta分布 https://blog.csdn.net/a358463121/article/details/52562940 MLE与bayes https://blog.csdn.net/bitcarmanlee/article/details/52201858 1.1 统计学习方法的三要素是模型、策略、算法。 伯努利模型是定义在取值为0与1的随机变量上的概率分布。 统计学分为两派:经典统计学派和贝叶斯统计学派。两者的不同主要是,经典统计学派认为模型已定,参数未知,参数是固定的,只是还不知道;贝叶斯统计学派是通过观察到的现象对概率分布中的主观认定不断进行修正。 极大似然估计和贝叶斯估计的模型都是伯努利模型也就是条件概率模型;极大似然估计用的是经典统计学派的策略,贝叶斯估计用的是贝叶斯统计学派的策略;为了得到使经验风险最小的参数值,使用的算法都是对经验风险求导,使导数为0. 定义随机变量A为一次伯努利试验的结果,A的取值为 { 0 , 1 } {0,1},概率分布为 P ( A ) P(A):                                下面分布用极大似然估计和贝叶斯估计来估计θ 的值。 极大似然估计: Ai代表第i次随机试验。解得

2.2:监督学习的基本分类模型(KNN、决策树、朴素贝叶斯)

 ̄綄美尐妖づ 提交于 2020-02-12 19:33:28
K近邻分类器(KNN) KNN:通过计算待分类数据点,与已有数据集中的所有数据点的距离。取距离最小的前K个点,根据“少数服从多数“的原则,将这个数据点划分为出现次数最多的那个类别。 sklearn中的K近邻分类器 在sklearn库中,可以使用sklearn.neighbors.KNeighborsClassifier创建一个K近邻分类器,主要参数有: • n_neighbors:用于指定分类器中K的大小( 默认值为5,注意与kmeans的区别 ) • weights:设置选中的K个点对分类结果影响的权重( 默认值为平均权重“uniform”,可以选择“distance”代表越近的点权重越高,或者传入自己编写的以距离为参数的权重计算函数 ) • algorithm:设置用于计算临近点的方法,因为当数据量很大的情况下计算当前点和所有点的距离再选出最近的k各点,这个计算量是很费时的,所以( 选项中有ball_tree、kd_tree和brute,分别代表不同的寻找邻居的优化算法,默认值为auto,根据训练数据自动选择 ) K近邻分类器的使用 创建一组数据 X 和它对应的标签 y: >>> X = [[0], [1], [2], [3]] >>> y = [0, 0, 1, 1] 使用 import 语句导入 K 近邻分类器: >>> from sklearn.neighbors

贝叶斯机器学习路线图

无人久伴 提交于 2020-02-12 00:25:16
这是一份贝叶斯机器学习路线图, 正在不断更新中. 路线图由简短的介绍配以相应的学习资源组成, 读者不一定要按顺序学习, 可以直接定位到自己需要的地方. 很多时候, 我们希望自学某个领域的知识, 学习能力是不差的, 但苦于不知该学哪些, 从何学起, 看什么书/视频好? 各个概念/知识点之间是怎样的联系? 这份路线图是为解决以上问题而生的, 对于学习贝叶斯机器学习应该十分有帮助. 若您发现错漏, 欢迎评论指正! 也希望有更多的人愿意分享自己所在领域的"学习路线图"! (注意: 文中部分资源链接需要科学上网方可打开) 本文目录结构如下: 核心主题 中心问题 参数估计 模型比较 非贝叶斯方法 最大似然 正则化 EM算法 基本推断算法 MAP估计 Gibbs采样 马尔科夫链蒙特卡洛(MCMC) 变分推断(Variational inference) 模型 混合高斯 因子分析 隐马尔科夫模型(HMM) 贝叶斯模型比较 贝叶斯信息准则(Bayesian information criterion) 拉普拉斯近似(Laplace approximation) 进阶主题 模型 逻辑回归(Logistic regression) 贝叶斯网络(Bayesian networks) Latent Dirichlet allocation(LDA) 线性动态系统(Linear dynamical

机器学习——朴素贝叶斯

家住魔仙堡 提交于 2020-01-30 21:59:43
参考 : https://cuijiahua.com/blog/2017/11/ml_4_bayes_1.html https://cuijiahua.com/blog/2017/11/ml_5_bayes_2.html https://www.jianshu.com/p/5953923f43f0 一、朴素贝叶斯简介 1.1、朴素贝叶斯算法简介 朴素贝叶斯算法(Naive Bayesian algorithm) ,朴素贝叶斯方法是在贝叶斯算法的基础上进行了相应的简化, 即假定给定目标值时属性之间相互条件独立 。 1.2 贝叶斯定理 贝叶斯决策理论:选择具有高概率的发生情况为最终判断。 根据已知的基础条件概率和部分概率,推断出在某种条件下下的概率。 1.3、条件概率推断 全部事件的概率是 S A 事件的概率是 A B 事件的概率是 B A 的对立事件概率是 A’ A 与 B 共同事件概率是 A∩B 说明:A 与 A‘ 对立且共同构成 S。 我们可以推断出在 B 条件下发生 A 事件的概率,然后一步步把 A∩B 改变成另一个表示 这就是条件概率的计算公式。 如果考虑到下面的全概率公式和上面图片只考虑 A 和 A‘ 条件概率公式可改为: 1.4、全概率推断 若事件 A 1 、 A 2 、……A n 构成一个完备事件组即 且都有正概率,那么对于任意一个事件A,有如下全概率公式: 1.5

task5 贝叶斯

爱⌒轻易说出口 提交于 2020-01-26 08:33:15
知识点梳理¶ 相关概念(生成模型、判别模型) 先验概率、条件概率 贝叶斯决策理论 贝叶斯定理公式 极值问题情况下的每个类的分类概率 下溢问题如何解决 零概率问题如何解决? 优缺点 sklearn 自带代码块 from sklearn . naive_bayes import GaussianNB from sklearn . datasets import load_iris import pandas as pd from sklearn . model_selection import train_test_split iris = load_iris ( ) X_train , X_test , y_train , y_test = train_test_split ( iris . data , iris . target , test_size = 0.2 ) clf = GaussianNB ( ) . fit ( X_train , y_train ) print ( "Classifier Score:" , clf . score ( X_test , y_test ) ) 相关概念 生成模型:在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。它给观测值和标注数据序列指定一个联合概率分布。在机器学习中