机器学习-贝叶斯分类器

  • 在学习贝叶斯分类器之前,让我们先弄清楚下面的概念
    • 先验概率:一般是指不同类别的概率,比如说我们用 ω 表示C分类问题的类别,则 ω{1,2,3,...C} ,那么先验概率就可以表示为 P(ω) ,代表每个类别出现的概率。
    • likelihood: P(x|ω) 表示给定特征下,某个特征出现的概率
    • 到目前位置,其实我们可以通过先验概率和likelihood来进行判断,比如说 ifP(ω1)>P(ω2)thenwedecidedω1
    • 我们也可以利用不同label对应的likelihood来判断,我们通过下图还可以判断某个特征是否是好特征(好特征,对应曲线的重叠面积应该尽可能的小)。
      image
  • 那么接下来我们就看一下所谓的后验概率 P(ωi|x) ,利用Bayesian公式我们可以得到 P(ωi|x)=P(x|ωi)P)(ωi)P(x) , 我们通过现有数据(训练集合)可以统计得到prior 以及 likelihood,所以我们就可以算的后验概率posterior了。
  • 至此,我们也可以完整的介绍出Bayesian分类器的规则了,假设我们面对的是一个C分类问题, ω{1,2...C} ,针对每一个测试数据 x ,我们可以利用训练数据,挑选出maxi{1,2,...C}P(ωi|x) 所对应的 ωi 作为测试数据 x 的预测label。
  • 上面介绍了Bayesian分类器的规则,我们再从另一个角度来验证我们规则的正确性。

    • 我们先介绍Risk:R(αi|x)=cj=1λ(αi|ωj)P(ωj|x),在这里我们称 αi 称之为 action 对于一个二分类来说,我们的action就有两个,一个是 decidedω1 还有一个便是 decidedω2
    • 当我们想要采取某种action的时候,我们总想让action最小,所以我们可以得到下面的规则 ifR(α1|x)<R(α2|x)thenwedecidedα1
    • 我们令 λ(αi|ωj)={0ifi=j1ifij , 则 Risk(αi|x)=cj=1λ(αi|ωj)P(ωj|x)=jiP(ωj|x)=1P(ωi|x) ,因为我们知道我们需要minimize Risk 所以就等价于我们需要maximize P(ωi|x) 也就是我们之前的Bayesian 规则。
    • 上面我们说过可以通过统计的方式来计算prior以及likelihood,但是这只是对离散的情况有效,但是当我们的特征分布在连续空间的话,我们应该怎么计算 maxP(ωi|x) 所对应的 ωi 呢?

    • 通过Bayesian 公式我们可知 P(ωi|x)=P(x|ωi)P(ωi)P(x) 。在这个等式中, P(x) 我们不用考虑,因为对于不同的 ωi 该值都是一样的。而对于 P(ωi) ,我们也可以通过统计training data统计得到。所以现在我们就关注于怎么计算 P(x|ωi) 。我们可以先假设 P(x|ωi) 服从某一个分布,然后我们计算出该分布,不就可以算概率了嘛。一般来说我们都假设这个分布是高斯分布Gaussian Distribution。那么现在我们知道了分布的形式,那么我们怎么利用现有数据(training data)去计算具体的分布形式呢(也就是计算分布的parameters。在这里我们就需要去利用MLE(maximize likelohood estimated)算法去估计最大化likelihood( P(x|ωi) )所对应的参数。

      • Gaussian Distribution: P(x)N(μ,σ2)=12πσe12(xμσ)2
      • MLE algorithm:
        • First, we define l(θ)=ln(P(D|θ))P(D|θ)=ni=1P(xi|θ)
        • then, we can calculate the θ where θ=argmaxθP(D|θ)
    • 到目前为止,我们已经把Bayesian classifier里面的大部分东西都复习完了,接下来我们复习一些通用的知识。

    • 我们怎么表示我们的classifier呢?一种行之有效的方式是用判别函数。具体定义如下:
      • For multi-class problem, there are c classes. gi(x),i{1,2...c} is the discriminative function. the classifier will assign a feature x to wi if gi(x)>gj(x)
    • 那么对于我们的Bayesian Classifier,我们的判别函数是什么呢?根据Bayesian Classifier的性质和判别函数的性质,我们可以定义判别函数如下所示:

      • gi(x)=lnP(ωi|x)=lnP(x|ωi)+lnP(ωi)
    • 练习习题:习题

    • 本文内容来自浙江大学蔡登老师的机器学习课程
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值