2010-10-28 114 views
1

您能否告诉我如何在2维空间中建模高斯基函数以获得标量输出?高斯基函数

我知道如何将这个应用于标量输入,但我不明白我该如何将它应用于2维向量输入。我看到很多变化,我很困惑。

回答

0

要从多元正态分布中采样,请使用统计工具箱中的MVNRND函数。例如:

MU = [2 3];     %# mean 
COV = [1 1.5; 1.5 3];   %# covariance (can be isotropic/diagonal/full) 
p = mvnrnd(MU, COV, 1000);  %# sample 1000 2D points 
plot(p(:,1), p(:,2), '.')  %# plot them 

alt text

2

由于每个高斯基与一个与输入相同维的中心相关联,我们称之为c。如果x是你的输入,你可以计算出输出

y = exp(- 0.5 * (x-c)'*(x-c)) 

这将X和C的任何尺寸的工作,只要它们是相同的。更一般的形式是

y = sqrt(det(S)) * exp(- 0.5 * (x-c)'* S * (x-c)) 

其中S是一些正定矩阵,以及逆协方差矩阵。一个简单的例子是把S作为一个对角线矩阵,在对角线上有正数条目。

+0

但在2 - 维的情况下我不应该也算DET(S),其中S是X的协方差,或者我可以跳过它? – Simon 2010-10-28 12:25:49

+0

@Jack对于二维情况,我认为S是简单的身份。你当然可以在那里有一个S矩阵。请注意,我将S用于协方差矩阵的逆矩阵,而不是协方差矩阵。如果你想基函数的输出积分为1,那么你需要另一个1 /(2 * pi)乘法项。但是对于基础函数,你通常不需要这样的约束。 – srean 2010-10-28 12:42:31

+0

@srean具有2D输入和1D输出的多项式和S形基函数如何?我发现很少有书籍谈论这些,但只有一维实例(例如PRML p139),因为我刚刚进入线性基函数模型。 – Edityouprofile 2016-02-05 07:29:00