Python 如何在Sklearn中为Matren内核指定nu=infinity?

Python 如何在Sklearn中为Matren内核指定nu=infinity?,python,scikit-learn,gaussian,Python,Scikit Learn,Gaussian,我试图在Sklearn中创建一个Matern内核,参数nu设置为无穷大 from sklearn.gaussian_process.kernels import Matern import numpy as np kernel = Matern(nu=float('inf')) a = np.random.randn(5)[:,np.newaxis] b = a kernel(a,b) 运行此代码时,会收到一条错误消息: “运行时警告:乘法中遇到无效值 K*=tmp**self.nu“ 否则,

我试图在Sklearn中创建一个Matern内核,参数nu设置为无穷大

from sklearn.gaussian_process.kernels import Matern
import numpy as np
kernel = Matern(nu=float('inf'))
a = np.random.randn(5)[:,np.newaxis]
b = a
kernel(a,b)
运行此代码时,会收到一条错误消息:

“运行时警告:乘法中遇到无效值
K*=tmp**self.nu“

否则,我如何在Matern内核中将参数nu指定为无穷大?谢谢

虽然似乎表明
inf
nu的有效值,但似乎并不能解释该值,这就是您看到该错误的原因。然而,当
nu
接近无穷大时,matren内核就等价于平方指数函数,或者是sklearn中的函数,因此您可以使用以下函数

from sklearn.gaussian_process.kernels import RBF
import numpy as np
kernel = RBF()
a = np.random.randn(5)[:,np.newaxis]
b = a
kernel(a,b)

很好,这很有道理。我已将此标记为答案,并投了赞成票:)谢谢。