贝叶斯概率

贝叶斯概率

贝斯公式和全概率公式的意思差不多相反。

全概率公式是说;某件事情的发生可以由很多情况导致,那么这件事情发生的概率,就是每件事情导致他发生的概率,乘以每件事情发生的概率。

贝斯公式的意思是:某件事情还是由刚才所说的那些事件引起的,你已经知道某件事情发生了,那么他是由哪件事情引起的呢?就可以又贝斯公式A事件引起他发生的概率。

基本概念

条件概率

条件概率,事件B发生的情况下,事件A发生的概率,用P(A|B)来表示。

公式导出

观察下图
这里写图片描述
易知
P(A|B) = P(A∩B) / P(B)
同理又有
P(B|A) = P(A∩B) / P(A)
所以
P(A|B) * P(B) = P(B|A) * P(A)
P(A|B) = P(B|A) * P(A) / P(B)

经典题型

假设有两个各装了100个球的箱子,甲箱子中有70个红球,30个绿球,乙箱子中有30个红球,70个绿球。假设随机选择其中一个箱子,从中拿出一个球记下球色再放回原箱子,如此重复12次,记录得到8次红球,4次绿球。问题来了,你认为被选择的箱子是甲箱子的概率有多大?

以下,A代表甲盒,R表示红球
当取出第一个红球的时候
P(A|R)=P(R|A)*P(A)/P(R)
分别展开:
在甲盒子中取出红球的概率
P(R|A)=70/100=0.7
选择甲盒子的概率
P(A)=0.5
取出红球的概率(从两个盒子中),等于从甲盒子中取出红球的概率+从乙盒子中取出红球的概率
P(R)= 0.7*0.5+0.3*0.5=0.5
所以
P(A|R)=0.7*0.5/0.5=0.7

请注意,第一个红球的出现导致了我们对两个盒子的概率猜测发生了修正
现在甲盒子被选取的概率是0.7,当然乙盒子被选取的概率自然就是0.3

当第二个红球出现的时候
P(A)=0.7
P(R) = 0.7 * 0.7 +0.3*0.3 = 0.58
P(A|R) = 0.7 * 0.7 / 0.58 = 0.845
于是第二次迭代之后,甲盒子的概率称为了0.845

备注下,如果出现了绿球,则公式转变为
P(A|G)=P(G|A)*P(A)/P(G)

js代码

// 甲盒子和乙盒子的概率
var pa = .5;
var pb = .5;
// 其中的红绿球概率
var par=.7;
var pag =.3;

var pbr=.3;
var pbg=.7;

/*
    calp = pa_ball * pa / pball
    pa_ball -> 甲盒子中某球的概率
    pa -> 甲盒子的概率
    pball -> 某球的全概率 
*/
function calp(pa_ball,pa,pball){
    return pa_ball * pa / pball;
}

function calBall(color){
    var pball;
    var pa_ball;
    if(color == 'red'){
        pball = pa*par +pb*pbr;
        pa_ball = par;
    }else{
        pball = pa*pag +pb*pbg;
        pa_ball = pag;

    }
    pa = calp(pa_ball,pa,pball);
    pb = 1-pa;
    console.log('after '+color+' ball: ',pa);
}

for(var i=0;i<8;i++){
    calBall('red');
}

for(var i=0;i<4;i++){
    calBall('green');
}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Python中有多种贝叶斯分类算法库可供使用,如scikit-learn和nltk等。贝叶斯分类算法的实现主要包括先验概率的计算和后验概率的计算。 贝叶斯分类算法中的先验概率是指在没有任何特征信息的情况下,每个类别发生的概率。可以使用训练数据集中每个类别的样本数量除以总样本数量来估计先验概率。 后验概率是指在已知特征的情况下,某个样本属于某个类别的概率。对于朴素贝叶斯分类算法,可以使用贝叶斯公式来计算后验概率贝叶斯公式通过先验概率和条件概率的乘积来计算后验概率。 在伯努利朴素贝叶斯算法中,特征的先验概率被假设为二元独立分布。条件概率通过特征在每个类别中出现的频率来计算。 所以,Python中的贝叶斯概率计算可以通过使用相应的库和函数来实现。例如,使用scikit-learn库中的MultinomialNB类可以实现朴素贝叶斯分类算法,其中包括先验概率和后验概率的计算。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [机器学习之朴素贝叶斯算法原理+Python实现](https://blog.csdn.net/zcz0101/article/details/109577494)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值