在rbf.py中,k(r)在数学上定义为:
k(r) = \sigma^2 \exp \\bigg(- \\frac{1}{2} r^2 \\bigg)
然而,rbf.py中的K_of_r方法会跳过sigma ^ 2而是使用sigma(self.variance)。我在这里遗漏了什么,或者是K_of_r方法的实施中的错误。
def K_of_r(self, r):
return self.variance * np.exp(-0.5 * r**2)
我认为实施应该是:
def K_of_r(self, r):
return (self.variance ** 2) * np.exp(-0.5 * r**2)
https://github.com/SheffieldML/GPy/blob/devel/GPy/kern/src/rbf.py#L34
答案 0 :(得分:0)