贝叶斯算法的简单理解

以下是我对贝叶斯算法的简单理解,

由于时间关系,推导不是很严谨,只记录基本训练和推理实现:

算法简单公式

贝叶斯定理: P(C|X) = P(X|C)*P(C) | P(X) (注:这里C和X都是集合)

C是所有类别集合  —  比如一个哥们 帅与不帅的类别,C1和C2

X是所有样本特征集合  —  比如一个哥们的 身高和颜值,X1/X2

我们称 P(C|X) 为样本特征下的一些类别出现的概率,也是我们推理时候要求得的后验概率。

训练:

比如有下面的训练集,其中“帅不帅”是一个二分类标签! ! !身高和外貌是一个人的特征。

身高颜值帅不帅 (标签)
优秀
优秀
一般
一般
不行
不行

(1)公式中右边 P(X|C) 表示某个类中出现某个特征的概率(似然), 训练集全部P(Xi | Ci) 有:

p(身高=优秀|帅=是):2/6,p(身高=一般|帅=是):1/6,p(身高=不行|帅=是):0,

p(身高=优秀|帅=否):0,p(身高=一般|帅=否):1/6,p(身高=不行|帅=否):2/6,

p(颜值=高|帅=是):2/6,p(颜值=中|帅=是):1/6,p(颜值=低|帅=是):0

p(颜值=高|帅=否):0,p(颜值=中|帅=否):1/6,p(颜值=低|帅=否):1/6

(2) 公式中右边 P(C) 表示所有类标签出现的概率先验,由表格中国可以看到:

p(帅=是)  和 p(帅=否)都等于 3/6 = 0.5

(3)公式中右边 P(X) 一般都是特征出现的概率(证据因子)简单计算时候,因为推理时候某一个样本的特征是不变,可忽略计算。所以一般简单实用时候用 P(C|X) = P(X|C)*P(C)

推理:

如果现在有新样品,身高是:没有,外貌是:中等,那怎么判断这家伙帅不帅?

那么开始带入公式,计算每个这些特征下,帅与不帅的概率即可!(这里涉及用到朴素贝叶斯,就是假定各个特征下,条件概率相互独立,独立性简单记为:P(AB)=P(A)P(B))

最后,

P(帅=是 | 身高=不行,颜值=中)= p(身高不行|帅) * p(颜值中|帅) * p(帅) = 0 * 1/6 * 0.5 = 0

P(帅=否 | 身高=不行,颜值=中)= p(身高不行|不帅) * p(颜值中|不帅) * p(不帅)

= 2/6 * 1/6 * 0.5 = 1/36

综合起来,这个计算不帅的概率很大,所以这个人的推理结果是:不帅! ! !

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
心中带点小风骚的头像心中带点小风骚普通用户
上一篇 2022年3月24日 下午3:51
下一篇 2022年3月24日 下午4:07

相关推荐