绘制两个多元高斯分布的判定边界

时间:2013-10-24 21:13:43

标签: matlab machine-learning pattern-recognition normal-distribution

我试图绘制类似下面的内容: enter image description here

我正在使用Matlab。我实现了绘制等高线图。但是我无法得出判别力。任何人都可以显示样本Matlab代码或给出一些想法来绘制判别式吗?

2 个答案:

答案 0 :(得分:5)

如果您知道给定点(x,y)的每个高斯函数的概率密度函数,可以说它是pdf1(x,y)pdf2(x,y),那么您可以简单地绘制{{1}的等高线1}}。因此,您将函数f(x,y) := pdf1(x,y) > pdf2(x,y)定义为f iff 1。这样,唯一的轮廓将沿着曲线放置,其中pdf1(x,y)>pdf2(x,y)是决策边界(判别)。如果你想定义“漂亮”功能,只需设置pdf1(x,y)==pdf2(x,y)即可完成,绘制轮廓图将产生完全相同的判别。

答案 1 :(得分:2)

以下是我将如何解析这个问题:等同于这两个判别函数

g1(x)=x' W1 x + w1' x + w10
g2(x)=x' W2 x + w2' x + w20
g1(x) = g2(x)

==> x' (W2 - W1) x + (w2-w1)'x + w20 - w10

然后,我认为W2 - W1是这个矩阵

W2-W1 = [a b; c d]

然后通过展开向量x = [x1 x2]',我们得到:

a x1^2 + (b+c) x1 x2 + d x2^2 + (w21-w11) x1 + (w22-w12) x2 + w20-w10 = 0

这是椭圆的等式,因此您可以将其简化为以下形式:

(x1 - a0)^2/h + (x2-b0)^2/g = r^2

或者,您可以假设您知道x1的范围,例如x1 = [ - 2:0.1:2],然后求解抛物线

example of a parabolic decision boundary