zoukankan      html  css  js  c++  java
  • 关于PRML Chap1的一丢丢附加证明

    在第一章的1.2.6节,有公式(1.68)

    [p(t | x, mathbf{x}, mathbf{t})=int p(t | x, oldsymbol{w}) p(oldsymbol{w} | mathbf{x}, mathbf{t}) mathrm{d} oldsymbol{w} ]

    这个公式实际上是在贝叶斯框架下对回归(t=y(x,w))进行推断,即给出了新的(x)(注意粗体的区别,(mathbf{x})是测试集的样本,这部分信息是已知的)下,我们对t的后验概率进行推断。

    从读MLAPP的时候就对这个公式有点疑惑,虽然书中一笔带过,但是小白的我决定自己推导一番:

    [LHS=p(t | x, mathbf{x}, mathbf{t})=int p(t,oldsymbol{w}|x,mathbf{x}, mathbf{t})doldsymbol{w} ]

    [egin{aligned}RHS&=int p(t | x, oldsymbol{w}) p(oldsymbol{w} | mathbf{x}, mathbf{t})mathrm{d} oldsymbol{w}\ &=int p(t|x,oldsymbol{w},mathbf{t}, mathbf{x})p(oldsymbol{w} | mathbf{x}, mathbf{t},x)mathrm{d} oldsymbol{w}\&=int p(t,oldsymbol{w}|x,mathbf{x}, mathbf{t})mathrm{d} oldsymbol{w}end{aligned} ]

    第二个等式成立是因为

    • [p(t | x, oldsymbol{w}) =p(t|x,oldsymbol{w},mathbf{t}, mathbf{x}) ]

    • [p(oldsymbol{w} | mathbf{x}, mathbf{t})=p(oldsymbol{w} | mathbf{x}, mathbf{t},x) ]

    在1.5.1节,给出了错误分类率的公式

    [egin{aligned}p( ext { mistake }) &=pleft(oldsymbol{x} in mathcal{R}_{1}, mathcal{C}_{2} ight)+pleft(oldsymbol{x} in mathcal{R}_{2}, mathcal{C}_{1} ight) \&=int_{mathcal{R}_{1}} pleft(oldsymbol{x}, mathcal{C}_{2} ight) mathrm{d} oldsymbol{x}+int_{mathcal{R}_{2}} pleft(oldsymbol{x}, mathcal{C}_{1} ight) mathrm{d} oldsymbol{x}end{aligned} ]

    书中直接给出结论,要使得错误分类率最小,应该分给后验概率(P(C_k|x))最大的类别中。

    推导过程如下:

    对于最优的(mathcal{R}_{1}, mathcal{R}_{2}),只要满足它的犯错概率小于其他所有的决策区域(mathcal{R}_{1}’, mathcal{R}_{2}’)下的犯错概率即可。

    [egin{aligned}p( ext { mistake }) &=pleft(oldsymbol{x} in mathcal{R}_{1}, mathcal{C}_{2} ight)+pleft(oldsymbol{x} in mathcal{R}_{2}, mathcal{C}_{1} ight) \&=int_{mathcal{R}_{1}} pleft(oldsymbol{x}, mathcal{C}_{2} ight) mathrm{d} oldsymbol{x}+int_{mathcal{R}_{2}} pleft(oldsymbol{x}, mathcal{C}_{1} ight) mathrm{d} oldsymbol{x}end{aligned} ]

    [egin{aligned}p'( ext { mistake }) &=pleft(oldsymbol{x} in mathcal{R}_{1}’, mathcal{C}_{2} ight)+pleft(oldsymbol{x} in mathcal{R}_{2}’, mathcal{C}_{1} ight) \&=int_{mathcal{R}_{1}’} pleft(oldsymbol{x}, mathcal{C}_{2} ight) mathrm{d} oldsymbol{x}+int_{mathcal{R}_{2}’} pleft(oldsymbol{x}, mathcal{C}_{1} ight) mathrm{d} oldsymbol{x}end{aligned} ]

    对两个做差,得到

    [p(mistake)-p'(mistake) \=int_{mathcal{R}_{1}cap mathcal{R}_{2}’ } (pleft(oldsymbol{x}, mathcal{C}_{2} ight) -pleft(oldsymbol{x}, mathcal{C}_{1} ight) )mathrm{d} oldsymbol{x}+int_{mathcal{R}_{2}cap mathcal{R}_{1}’ } (pleft(oldsymbol{x}, mathcal{C}_{1} ight) -pleft(oldsymbol{x}, mathcal{C}_{2} ight) )mathrm{d} oldsymbol{x} ]

    那么我们只需要

    • (pleft(oldsymbol{x}, mathcal{C}_{2} ight) -pleft(oldsymbol{x}, mathcal{C}_{1} ight) le0)在任意(mathcal{R}_{1}cap mathcal{R}_{2}’)上成立。

    • (pleft(oldsymbol{x}, mathcal{C}_{1} ight) -pleft(oldsymbol{x}, mathcal{C}_{2} ight) le0)在任意(mathcal{R}_{2}cap mathcal{R}_{1}’)上成立。

    由于$pleft(oldsymbol{x} ight) $是相同的,上述两个公式等价于:

    • (pleft(oldsymbol{x}| mathcal{C}_{2} ight) -pleft(oldsymbol{x}|mathcal{C}_{1} ight) le0)在任意(mathcal{R}_{1}cap mathcal{R}_{2}’)上成立。

    • (pleft(oldsymbol{x}| mathcal{C}_{1} ight) -pleft(oldsymbol{x}|mathcal{C}_{2} ight) le0)在任意(mathcal{R}_{2}cap mathcal{R}_{1}’)上成立。

    而任意(mathcal{R}_{1}cap mathcal{R}_{2}’)其实就是(mathcal{R}_{1}),任意(mathcal{R}_{2}cap mathcal{R}_{1}’)其实就是(mathcal{R}_{2})

    所以最优的分配规则就是,如果(pleft(oldsymbol{x}| mathcal{C}_{2} ight) le pleft(oldsymbol{x}|mathcal{C}_{1} ight))就分配到第一类上,如果(pleft(oldsymbol{x}| mathcal{C}_{1} ight) le pleft(oldsymbol{x}|mathcal{C}_{2} ight))就分配到第二类上。

    本文为跑得飞快的凤凰花原创,如需转载,请标明出处~
  • 相关阅读:
    手机抓包
    基础数据-wiki
    Laravel异常日志
    用户设备、UA检测 相关
    yum安装的nginx新增模块http_image_filter_module笔记
    nginx 配置图片自动裁剪
    PHP中使用ffmpeg截取视频图片笔记
    采集乱七八糟记录下
    Laravel学习笔记之session使用
    html5 新增表单类型
  • 原文地址:https://www.cnblogs.com/zzqingwenn/p/12668225.html
Copyright © 2011-2022 走看看