美文网首页
机器学习笔记(12):贝叶斯学习(2)

机器学习笔记(12):贝叶斯学习(2)

作者: 链原力 | 来源:发表于2020-03-05 00:18 被阅读0次

    本文来自之前在Udacity上自学机器学习的系列笔记。这是第12篇,介绍了监督学习中的贝叶斯学习模型(2)。

    在贝叶斯学习模型(1)中,介绍了贝叶斯规则(定理)。这里进一步地对贝叶斯学习模型进行总结。

    贝叶斯学习模型
    之前的的机器学习模型是根据给定的数据和一些领域知识,学习最佳的假设。贝叶斯学习模型也是一样,但它是学习最有可能或概率大的假设。

    写成数学式子是:
    argmax_{h \in H} P(h | D)
    其中D={(x_i, d_i)}是数据集,而H是假设空间。

    贝叶斯规则(定理)表示为:
    P(h|D)=\frac{P(D|h)P(h)}{P(D)}

    P(h|D)是给定数据下假设h的概率;
    P(D)是根据数据D得到的先验概率;
    P(D|h)是指给定假设时观测到数据的概率;
    P(h)是假设空间中特定假设的先验概率。

    算法
    对每个假设空间H的假设h,计算
    P(h|D)=\frac {P(D|h)P(h)}{P(D)}
    输出
    h_{MAP}=argmax_{h}P(h|D)

    其中MAP表示Maximum a Posterior Probability Hypothesis(最大后验概率)。
    也就是说,我们要求得给定数据下,某一个假设的概率,可以按照几个先验概率的乘积来计算。

    因为P(h)往往不可知,而P(D)对所有假设h都是一样的,我们可以划去P(D)一项,同时设定所有的假设P(h)都是一样的。

    那么可以得到下面简化后的公式:

    h_{ML}=argmax_{h} P(D|h)

    其中ML表示Maximum Likelihood(最大似然假设)。上式表明计算MAP,我们只需要计算给定假设下出现数据概率的最大假设。

    假设给定数据集D={(x_i, d_i)}d_i=f(x_i)+\epsilon_i,其中\epsilon_i表示误差,而且符合高斯正态分布,即\epsilon_i ~ N(0, \sigma^2)。我们需要求解的是h_{ML}=argmax_{h} P(h|D)=argmax_{h} P(D|h)

    进一步地推导:

    h_{ML}=argmax \prod_i P(d_i | h)

    =argmax \prod_i\frac{1}{\sqrt{2\pi}\sigma}e^\frac{(d_i-h(x_i))^2}{2\sigma^2}

    =argmax \sum_i - \frac{(d_i-h(x_i))^2}{2\sigma^2}

    =argmin \sum_i (d_i-h(x_i))^2

    从最后这个式子可以看出,我们将求解P_{ML}的问题转换为最小化误差平方和的问题。

    最小描述长度
    h_{MAP}=argmax P(D|h)P(h) = argmax[lgP(D|h)+lgP(h)]
    根据信息论中的结论,即一个概率为P的事件具备长度为-lgP。那么上式转换为
    h_{MAP}=argmin[(-lgP(D|h))+(-lgP(h))]

    h_{MAP}=argmin[length(D|h)+length(h)]

    右边这个式子表达了,要得到最大后验概率,我们需要最小化假设h的长度,隐含了选择最短决策树的意思。也就是说对于一个数据的分类,我们希望经过最少的决策完成判断,如果可以的话。这就是“奥卡姆剃刀原则”,即“切勿浪费较多的东西去做,用较少的东西,同样可以做好事情”。

    左边这个式子表达了,要得到最大后验概率,还需要最小化误差。

    这个式子解释的就是信息论中的最小描述长度。

    贝叶斯分类
    在得到最大后验概率后,我们还需要根据最优假设结果进行投票,最终得到我们想要的最优的分类标签。即
    v_{MAP}=argmax_v \sum P(v|h)P(h|D)

    相关文章

      网友评论

          本文标题:机器学习笔记(12):贝叶斯学习(2)

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