朴素贝叶斯分类算法python,数据分析的分类模型
朴素贝叶斯分类算法python,数据分析的分类模型在贝叶斯推断中,每一种概率都有一个特定的名字:通过前面的概率树及P(A|B)的概率可知,P(B|A)的概率是在事件A发生的前提下事件B发生的概率,因此P(B|A)可以表示为事件B与事件A的交集与事件A的比率。在统计资料的基础上,依据某些特征,计算各个类别的概率,从而实现分类。贝叶斯算法通过已知的P(A|B),P(A) 和P(B)三个概率计算P(B|A)发生的概率。假设我们现在已知P(A|B),P(A)和P(B)三个概率,如何计算P(B|A)呢?
今日分享:
朴素贝叶斯算法NaïveBayes算法,又叫朴素贝叶斯算法。朴素指特征条件独立;贝叶斯指基于贝叶斯定理。
属于监督学习的生成模型,实现简单,没有迭代,并有坚实的数学理论(即贝叶斯定理)作为支撑。
在大量样本下会有较好的表现,不适用于输入向量的特征条件有关联的场景。
贝叶斯分类器的基本方法:在统计资料的基础上,依据某些特征,计算各个类别的概率,从而实现分类。
贝叶斯算法通过已知的P(A|B),P(A) 和P(B)三个概率计算P(B|A)发生的概率。
假设我们现在已知P(A|B),P(A)和P(B)三个概率,如何计算P(B|A)呢?
通过前面的概率树及P(A|B)的概率可知,P(B|A)的概率是在事件A发生的前提下事件B发生的概率,因此P(B|A)可以表示为事件B与事件A的交集与事件A的比率。
在贝叶斯推断中,每一种概率都有一个特定的名字:
P(B)是“先验概率”(Prior probability);
P(A)是“先验概率”(Prior probability),也作标准化常量(normalized constant);
P(A|B)是已知B发生后A的条件概率,叫做似然函数(likelihood);
P(B|A)是已知A发生后B的条件概率,是我们要求的值,叫做后验概率;
P(A|B)/P(A)是调整因子,也被称作标准似然度(standardised likelihood)。
朴素贝叶斯分类案例一天,老师问了个问题,只根据头发和声音怎么判断一位同学的性别。
为了解决这个问题,同学们马上简单的统计了7位同学的相关特征,数据如下:
头发 |
声音 |
性别 |
长 |
粗 |
男 |
短 |
粗 |
男 |
短 |
粗 |
男 |
长 |
细 |
女 |
短 |
细 |
女 |
短 |
粗 |
女 |
长 |
粗 |
女 |
长 |
粗 |
女 |
要是知道男生和女生头发长短的概率以及声音粗细的概率,我们就可以计算出各种情况的概率,然后比较概率大小,来判断性别。
假设抽样样本足够大,我们可以近似认为可以代表所有数据(假设上位7位同学能代表所有数据,这里方便计算)。由这7位同学,我们马上得出下面表格概率分布。
性别 |
头发长 |
声音粗 |
男 |
1/3 |
1 |
女 |
3/5 |
3/5 |
假设头发和声音都是独立特征,于是:
男生头发长声音粗的概率=3/8*1/3*1=1/8
女生头发长声音粗的概率=5/8*3/5*3/5=9/40
因为1/8<9/40,所以根据以上计算结果,如果一个人,头发长,声音粗,那么这个人更可能是女生,于是出现这些特征大概率是女生。