美文网首页
第一课:贝叶斯—定位

第一课:贝叶斯—定位

作者: Allen的光影天地 | 来源:发表于2019-02-28 11:59 被阅读5次
// 最初的概率分布,不知道这个世界什么样子,所以我也不知道我自己的位置,总共5个格子的世界,我在任意一个格子里的概率是0.2
p=[0.2, 0.2, 0.2, 0.2, 0.2] 
// 真实世界的分布是确定的
world=['green', 'red', 'red', 'green', 'green']
// 我们身上有一个警报器,走过红色门口的时候,发出警报说,我现在在红色门口
Z = ‘red’
// 但是这个警报器不一定保证准确率,我们按照如下假设设置:就是在红色门口, 有0.6的概率响起, 绿色为0.2
pHit = 0.6
pMiss = 0.2

def sense(p, Z):
    q=[]
// 循环计算5个格子的可能性
    for i in range(len(p)):
        hit = (Z == world[i])
  // 在每一个格子中,求得在这里的概率 = 原始概率P(i)×警报器准确率
        q.append(p[i] * (hit * pHit + (1-hit) * pMiss))
    s = sum(q)
    for i in range(len(q)):
  // 对每一项做正则化处理
        q[i] = q[i] / s
    return q

print (sense(p, 'green'))
贝叶斯估计

通过上边演示,我们已经明白贝叶斯核心原理,就是用已知概率推导未知概率。
本例子中,已知概率代表警报器概率,未知概率是我当前的位置的概率!!

相关文章

网友评论

      本文标题:第一课:贝叶斯—定位

      本文链接:https://www.haomeiwen.com/subject/ycrhuqtx.html