贝叶斯

教你学Python28-朴素贝叶斯简介

假装没事ソ 提交于 2020-01-19 16:56:08
一、引子 最近几天一直没来得及看《机器学习实战》这本书,感觉停滞了很久,因为需要对 AIMI-CN 的规划进行考虑,想了很久做了一些皮毛的东西,决定还是慢慢来按部就班,东西做出来才能说话,当然之后我做这个文章的时候,也尽量再多点自己的东西把,其他人写的多数当参考把,这样才会有更多自己原创的东西,大家才会看,才会认同把~ 二、朴素贝叶斯理论 朴素贝叶斯是贝叶斯决策理论的一部分,所以在讲述朴素贝叶斯之前有必要快速了解一下贝叶斯决策理论。 1、贝叶斯决策理论 假设现在我们有一个数据集,他由两类数据组成,数据分布如下图所示: 我们现在用 p1(x,y) 表示数据点 (x,y) 属于类别 1(图中用圆点表示的类别)的概率,用 p2(x,y) 表示数据点 (x,y) 属于类别 2(图中三角形表示的类别)的概率,那么对于一个新数据点 (x,y),可以用下面的规则来判断它的类别: 如果 p1(x,y) > p2(x,y) ,那么类别为1 如果 p2(x,y) > p1(x,y) ,那么类别为2 也就是说,我们会选择高概率对应的类别。这就是贝叶斯决策理论的核心思想,即选择具有 最高概率 的决策。 2、条件概率 有一个装了 7 块石头的罐子,其中 3 块是白色的,4 块是黑色的。如果从罐子中随机取出一块石头,那么是白色石头的可能性是多少?由于取石头有 7 种可能,其中 3 种为白色

机器学习——贝叶斯和朴素贝叶斯

China☆狼群 提交于 2020-01-19 11:39:52
贝叶斯判定准则: 最小化总体风险,只需在每个样本上选择能使条件风险R(c|x)最小的类别标记 一、极大似然估计 1.估计类的常用策略 :先假定其具有某种确定的概率分布形式,再基于训练样本对概率分布的参数进行估计。即概率模型的训练过程就是参数估计过程。 2.参数估计两大学派 :频率主义学派和贝叶斯学派。 (1)频率主义 :参数虽然未知,但却是客观存在的固定值,因此,可通过优化似然函数等准则来确定参数值(最大似然)。 (2)贝叶斯学派 :参数是未观察到的随机变量,本身也可以有分布,因此,可假定参数服从一个先验分布,然后基于观察到的数据来计算参数的后验分布。 二、朴素贝叶斯 (1)思想: 对于给定的待分类项x,通过学习到的模型计算后验概率分布,即:在此项出现的条件下各个目标类别出现的概率,将后验概率最大的类作为x所属的类别。后验概率根据贝叶斯定理计算。 (2)关键: 为避免贝叶斯定理求解时面临的组合爆炸、样本稀疏问题,引入了条件独立性假设。 即假设各个特征之间相互独立 (3)工作原理: 贝叶斯公式:    对条件概率做了条件独立假设,公式为: (4)工作流程: 1)准备阶段: 确定特征属性,并对每个特征属性进行适当划分,然后由人工对一部分待分类项进行分类,形成训练样本。 2)训练阶段: 对每个类别计算在样本中的出现频率p(y),并且计算每个特征属性划分对每个类别的条件概率p(yi | x

贝叶斯决策理论(1)

自闭症网瘾萝莉.ら 提交于 2020-01-19 06:13:12
  数据来自于一个不完全清楚的过程。以投掷硬币为例,严格意义上讲,我们无法预测任意一次投硬币的结果是正面还是反面,只能谈论正面或反面出现的概率。在投掷过程中有大量会影响结果的不可观测的变量,比如投掷的姿势、力度、方向,甚至风速和地面的材质都会影响结果。也许这些变量实际上是可以观测的,但我们对这些变量对结果的影响缺乏必要的认知,所以退而求其次,把投掷硬币作为一个随机过程来建模,并用概率理论对其进行分析。      概率有时也被解释为频率或可信度,但是在日常生活中,人们讨论的概率经常包含着主观的因素,并不总是能等同于频率或可信度。比如有人分析中国足球队打进下次世界杯的概率是10%,并不是说出现的频率是10%,因为下次比赛还没有开始。我们实际上是说这个结果出现的可能性,由于是主观的,因此不同的人将给出不同的概率。   在数学上,概率研究的是随机现象背后的客观规律。我们对随机没有兴趣,感兴趣的是通过大量随机试验总结出的数学模型。当某个试验可以在完全相同的条件下不断重复时,对于任意事件E(试验的可能结果的集合,事件是集合,不是动作),结果在出现在E中的次数占比趋近于某个常量,这个常数极限是事件E的概率,用P(E)表示。   我们需要对现实世界建模,将现实世界的动作映射为函数,动作结果映射为数。比如把投硬币看作f(z),z是影响结果的一系列不可观测的变量,x 表示投硬币的结果,x = f(z)

Spark.ml - -朴素贝叶斯Naive Bayes

[亡魂溺海] 提交于 2020-01-19 05:12:47
前言 朴素贝叶斯分类器是低方差高偏差的分类器,假设各个特征之间存在条件独立性假设:对于给定的类别,所有的特征相互独立。显然,这个假设把问题想的太简单了,但朴素贝叶斯在文本分类任务上确实拥有很好的效果。 朴素贝叶斯模型是一组非常简单快速的分类算法,通常适用于维度非常高的数据集。因为运行速度快,而且可调参数少,因此非常适合为分类问题提供快速粗糙的基本方案。之所以称为“朴素”或“朴素贝叶斯”,是因为如果对每种标签的生成模型进行非常简单的假设,就能找到每种类型生成模型的近似解,然后就可以使用贝叶斯分类。朴素贝叶斯的思想基础是:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。 朴素贝叶斯算法包括 高斯NB (假设每个标签的数据都服从简单的高斯分布,适用于特征是 连续变量 )、 多项式NB (假设特征是由一个简单多项式分布生成的,适用于 离散特征 的情况)和 伯努利NB (假设特征服从伯努利分布,适用于 离散特征 的情况。不同于多项式贝叶斯模型的是, 伯努利模型中每个特征的取值只能是1和0 ,以文本分类为例,某个单词在文档中出现过,则其特征值为1,否则为0) 特点 优点 训练和预测的速度非常快。 直接使用概率预测。 通常很容易解释。 可调参数(如果有的话)非常少。 适用于 假设分布函数与数据匹配(实际中很少见)。 各种类型的区分度很高

朴素贝叶斯的三个常用模型:高斯、多项式、伯努利

时光毁灭记忆、已成空白 提交于 2020-01-19 01:43:19
部分内容转自: https://blog.csdn.net/qq_27009517/article/details/80044431 朴素贝叶斯分类(NBC,Naive Bayes Classifier)是以贝叶斯定理为基础并且假设特征条件之间相互独立的方法,先通过已给定的训练集,以特征词之间独立作为前提假设,学习从输入到输出的联合概率分布,再基于学习到的模型,输入X,求出使得后验概率最大的输出Y。 设样本数据集 ,对应样本数据的特征属性集为 ,类别集 ,即D可以分为 m种类别。其中 相互独立同分布且随机,那么Y的先验概率为P(Y),Y的后验概率为P(Y|X)。有贝叶斯定理可以得到,后验概率可以由证据P(X),先验概率P(Y),条件概率P(X|Y)计算得出,公式如下所示: 换成分类的示意表达式: 朴素贝叶斯基于各个特征之间相互独立,在给定,可以将上式进一步写为 因为P(X)的值是固定不变的,因此在比较后验概率时,只需要比较上式的分子即可。因此可以得到一个样本数据属于类别 的朴素贝叶斯计算如下图所示: 1.朴素贝叶斯-多项式 在多项式模型中, 设某文档 , 是该文档中出现过的单词,允许重复。 则先验概率P(c)= 类c下单词总数 / 整个训练样本的单词总数 条件概率P( |c)=(类c下单词tk在各个文档中出现过的次数之和+1) / (类c下单词总数+m)。在这里,m=|V|, p

统计学习方法—朴素贝叶斯法

…衆ロ難τιáo~ 提交于 2020-01-19 01:36:22
统计学习方法—朴素贝叶斯法 朴素贝叶斯法 原理 相关公式 朴素贝叶斯基本方法 朴素贝叶斯法 朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。 朴素贝叶斯法实际上学习到生成数据的机制,所以属于 生成模型 。 原理 对于给定的训练数据集,首先基于 特征条件独立假设 学习输入/输出的 联合概率分布 ;然后基于此模型,对给定的输入x,利用 贝叶斯定理 求出后验概率最大的输出y。 相关公式 1.条件概率公式: P ( X ∣ Y ) = P ( X , Y ) P ( Y ) , P ( Y ∣ X ) = P ( X , Y ) P ( X ) P(X|Y) =\frac{ P(X,Y)}{P(Y)}, P(Y|X) =\frac{ P(X,Y)}{P(X)} P ( X ∣ Y ) = P ( Y ) P ( X , Y ) ​ , P ( Y ∣ X ) = P ( X ) P ( X , Y ) ​ 2.条件独立公式,若X,Y相互独立则: P ( X , Y ) = P ( X ) P ( Y ) P(X,Y) = P(X)P(Y) P ( X , Y ) = P ( X ) P ( Y ) 3.全概率公式: P ( X ) = ∑ k P ( X ∣ Y = Y k ) P ( Y k ) , 其 中 ∑ k P ( Y k ) = 1 ( 完 备 事 件 组 ) P(X

PRML第一章读书小结

风格不统一 提交于 2020-01-18 08:14:13
PRML第一章读书小结     第一章用例子出发,较为简单的引入了概率论、模型、决策、损失、信息论的问题,作为机器学习从业者,读PRML除了巩固已有基础,还受到了很多新的启发,下面将我收到的启发总结如下。 1. 多项式曲线拟合问题 多项式拟合问题作为全书的第一个引例,通过此说明了很多关键的概念。 给定一个训练集,训练集由$x$的N次观测组成,记作$mathbf{x} equivleft(x {1}, cdots, x {N}right)^{T}$,对应了相应的观测值$t$,记作$mathbf{t} equivleft(t {1}, cdots, t {N}right)^{T}$。 它们拥有了一个内在的规律,这个规律是我们想要学习的 ,但是同时独立的观察会被随机噪声所干扰。我们的目标是利用这个训练集预测输入变量的新值,我们需要隐式地发现内在的函数$sin(2pi x)$,由于 有限的观察和噪声 的,发现这一函数($sin(2pi x)$)很难。 概率论提供了一个框架,用精确的数学形式描述这种不确定性。决策论让我们能够根据合适的标准,利用这种概率的表示,进行最优的预测。 我们经常用多项式函数进行曲线拟合,即$y(x, boldsymbol{w})=w {0} w {1} x w {2} x^{2} ldots w {M} x^{M}=sum {j=0}^{M} w {j} x^{j}$

概率、统计、最大似然估计、最大后验估计、贝叶斯定理、朴素贝叶斯、贝叶斯网络

匆匆过客 提交于 2020-01-18 02:17:58
这里写自定义目录标题 概率和统计是一个东西吗? 概率函数与似然函数 最大似然估计(MLE) 最大后验概率估计 最大后验估计的例子 贝叶斯派观点 VS 频率派观点 贝叶斯定理 朴素贝叶斯分类器 朴素贝叶斯分类器实例 贝叶斯网络 贝叶斯网络的结构形式 因子图 从贝叶斯网络来观察朴素贝叶斯 概率和统计是一个东西吗? 概率(probabilty)和统计(statistics)看似两个相近的概念,其实研究的问题刚好相反。 概率研究的问题是,已知一个模型和参数,怎么去预测这个模型产生的结果的特性(例如均值,方差,协方差等等)。 举个例子,我想研究怎么养猪(模型是猪),我选好了想养的品种、喂养方式、猪棚的设计等等(选择参数),我想知道我养出来的猪大概能有多肥,肉质怎么样(预测结果)。 统计是,有一堆数据,要利用这堆数据去预测模型和参数。 仍以猪为例。现在我买到了一堆肉,通过观察和判断,我确定这是猪肉(这就确定了模型。在实际研究中,也是通过观察数据推测模型是/像高斯分布的、指数分布的、拉普拉斯分布的等等),然后,可以进一步研究,判定这猪的品种、这是圈养猪还是跑山猪还是网易猪,等等(推测模型参数)。 一句话总结: 概率是已知模型和参数,推数据。统计是已知数据,推模型和参数。 显然, 本文解释的MLE(最大似然估计)和MAP(最大后验估计)都是统计领域的问题。它们都是用来推测参数的方法(不是推测模型

Hadoop基于朴素贝叶斯分类器的情感判别实践

耗尽温柔 提交于 2020-01-15 04:42:27
1.基础材料说明 1)训练集training.txt文件 该文件是一个大小为75.8MB的文本数据集,并包含了20,000,000条数据记录,每行数据中包含的信息为“评价结论\t 评价内容”。其中,“评价内容”是若干词语组合而成,词语之间是空格隔开,词语包括中文、英文以及其他特殊符号,即其内容为“word1 word2 word3 word4 …… wordn”,其中wordi表示当前文本描述中的第i个词,n为当前文本描述中包含的总词数。 2)测试集test.txt文件 给定“test.data”数据集,该数据集包含了2000条记录,每行记录中包含的信息为“评价内容”,该“评价内容”的具体表现形式与前文描述的“training.txt”数据集相同。 3)文件命名说明 本工程实践为课程作业,故项目名为NB_2017082040,HDFS储存路径为hdfs://master:9000/input_2017082040/training.txt。 4)运行环境说明 编译器:eclipse-jee-2019-12-R-linux-gtk-x86_64.tar.gz Hadoop:Hadoop 2.7.7 2.实现过程 2.1 上传文件至HDFS hadoop fs -put /root/Documents/training.txt hdfs://master:9000/input

二项分布 , 多项分布, 以及与之对应的beta分布和狄利克雷分布

折月煮酒 提交于 2020-01-14 08:56:39
1. 二项分布与beta分布对应   2. 多项分布与狄利克雷分布对应 3. 二项分布是什么?n次bernuli试验服从 二项分布 二项分布是N次重复bernuli试验结果的分布。 bernuli实验是什么?做一次抛硬币实验,该试验结果只有2种情况,x= 1, 表示正面。 x=0,表示反面。 bernuli(x|p) = p^x*(1-p)^(1-x)。如果了n次, 我们只要数一下 正面的次数n_x ,即可得到反面的次数n-n_x。 n次重复的nernuli试验: n-bernuli(n_x|N,p) = p^n_x*(1-p)^(n-n_x), (忽略前边的组合系数) 2.13. 多项分布是什么?是k维的贝努力试验。n次抛骰子试验服从多项试验。 multi(n_x|p,N) =pi(p^n_k), 每个骰子上的编号都是一个贝努力试验结果。 n_x, p都是一个向量。 表示,比如我们 想知道编号1出现2ci, 标号2出现5次, 3出现2次,4出现4次, 5出现3次,6出现2次的概率 : n_x = [2,5,2,4,3,3, 对应的概率分别是p=[0,1, 0,3 0.1, 0..2, 0.15, 0.15] 4. 贝叶斯学派: 贝叶斯全概率公式: P(u|x) = P(X|u)*P(u). 贝叶斯公式右边的P(X|u)也称为似然分布, 先验分布是P(u) 先验和后验是同一分布时