在第一章的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))就分配到第二类上。