贝叶斯概率公式应用一——狼来了问题 问题描述:
狼来了问题:
合理假设:
(1)村民初始对小孩的信任度为0.8;
(2)可信的小孩说谎的可能性为0.1;
(3)不可信的小孩说谎的可能性为0.5;
小孩说两次谎后,他的可信度变为0.138,求如果这个孩子要改邪归正,他需要多少次才能把信任度提高到80%?
二、实验数据说明
1. 实验数据
a.事件A表示“小孩说谎”,用事件A*表示“小孩不说谎”;
b.事件B表示“小孩可信”,用事件A*表示“小孩不可信”;
事件
P(B)
P(A/B)
P(A/B*)
概率
0.138
0.1
0.5
事件
P(B*)
P(A*/B)
P(A*/B*)
概率
1-0.138
1-0.1
1-0.5
三、解决方案:
使用语言:python
原理:贝叶斯概率
思路:小孩不说谎后,使用贝叶斯概率公式,计算小孩每次真话后的可信度,记录小孩可信度首次超过0.8时的计算次数,即为结果。
步骤:
$1.设小孩当前的可信度P(B)为0.138,次数为0;
$2.使用贝叶斯概率公式
P(B/A*)=P(A*/B)*P(B)/(P(A*/B)*P(B)+P(A*/B*)*P(B*))
求小孩不说谎后的可信度;次数加一,小孩当前的可信度为P(B)=P(B/A*);
$3.如果P(B)>=0.8,记录次数,结束;否则,执行$2.
四、结果如下:
(1) 表1.1列出了小孩初始可信度为0.8时,小孩说谎5次,每次说谎后的可信度;
说谎次数
1
2
3
4
5
可信度P(B)
0.4444
0.1379
0.0310
0.0064
0.0013
表1.1
(2) 表1.2表示小孩连续说谎2次后,可信度为0.138时,小孩连续不说谎十次,每次不说谎后的可信度;
说谎次数
1
2
3
4
5
可信度P(B)
0.2237
0.3415
0.4828
0.6294
0.7516
说谎次数
6
7
8
9
10
可信度P(B)
0.8448
0.9074
0.9464
0.9695
0.9828
表1.2
(3) 图1.1左图显示了小孩说谎后的可信度的变化情况,右图显示了连续不说谎10次的可信度的变化情况;x轴表示不说谎次数,y轴表示可信度。
贝叶斯概率公式应用一——狼来了问题X
图1.1
结论:从表1.2可以看出,小孩改邪归正后,连续不说谎6次后的可信度可以达到0.8448,首次超过0.8。