问题如下:
考虑三个相互独立的分类器A、B、C,它们具有相同的错误概率:
Pr(errA) = Pr(errB) = Pr(errC) = t
设D为另一个分类器,它采用A、B和C的多数投票结果。
• D的错误概率Pr(errD)是多少?
• 将Pr(errD)作为t的函数绘制出来。
• 在哪些t值下,D的表现优于其他三个分类器中的任何一个?
我的问题是:
(1) 我无法计算出D的错误概率。我以为它会是1减去α(1 – α),但我并不确定。
(2) 如何绘制t(Pr(errD))?我假设如果没有找到Pr(errD),我就可以绘制它了。
(3) 同样,我无法解决这个问题。相对而言,我应该如何确定D的表现?
回答:
如果我理解正确的话,你的问题可以用简单的术语来表述,而不需要任何集成学习。
考虑到D
是三个分类器投票的结果,D
是错误的当且仅当最多有一个估计器是正确的。
A,B,C
是独立的,因此:
-
所有都错误的概率是t^3
-
一个正确而另外两个错误的概率是3(1-t)t^2(因子3是因为有三种方式达到这种情况)
因此P(errD) = t^3 + 3(1-t)t^2 = -2t^3 + 3t^2
你应该能够在区间[0:1]内将这个函数绘制出来,不会有太大困难。
至于你的第三个问题,只需求解P(errA) – P(errD) > 0(这意味着D的错误概率小于A,因此其表现更好)。如果你解出这个,你应该会发现条件是t<0.5。
回到集成学习,注意你的估计器之间的独立性假设在实践中通常是不成立的。