mirror of
https://github.com/SheffieldML/GPy.git
synced 2026-07-14 16:32:15 +02:00
maint: Wrap very long lines (> 400 chars)
This commit is contained in:
parent
d754bc12de
commit
44f4739efb
4 changed files with 73 additions and 17 deletions
|
|
@ -3,9 +3,20 @@
|
|||
Introduction
|
||||
^^^^^^^^^^^^
|
||||
|
||||
In terms of Gaussian Processes, a kernel is a function that specifies the degree of similarity between variables given their relative positions in parameter space. If known variables *x* and *x'* are close together then observed variables *y* and *y'* may also be similar, depending on the kernel function and its parameters. *Note: this may be too simple a definition for the broad range of kernels available in :py:class:`GPy`.*
|
||||
In terms of Gaussian Processes, a kernel is a function that specifies
|
||||
the degree of similarity between variables given their relative
|
||||
positions in parameter space. If known variables *x* and *x'* are
|
||||
close together then observed variables *y* and *y'* may also be
|
||||
similar, depending on the kernel function and its parameters. *Note:
|
||||
this may be too simple a definition for the broad range of kernels
|
||||
available in :py:class:`GPy`.*
|
||||
|
||||
:py:class:`GPy.kern.src.kern.Kern` is a generic kernel object inherited by more specific, end-user kernels used in models. It provides methods that specific kernels should generally have such as :py:class:`GPy.kern.src.kern.Kern.K` to compute the value of the kernel, :py:class:`GPy.kern.src.kern.Kern.add` to combine kernels and numerous functions providing information on kernel gradients.
|
||||
:py:class:`GPy.kern.src.kern.Kern` is a generic kernel object
|
||||
inherited by more specific, end-user kernels used in models. It
|
||||
provides methods that specific kernels should generally have such as
|
||||
:py:class:`GPy.kern.src.kern.Kern.K` to compute the value of the
|
||||
kernel, :py:class:`GPy.kern.src.kern.Kern.add` to combine kernels and
|
||||
numerous functions providing information on kernel gradients.
|
||||
|
||||
There are several inherited types of kernel that provide a basis for specific end user kernels:
|
||||
|
||||
|
|
@ -20,7 +31,6 @@ e.g. the archetype :py:class:`GPy.kern.RBF` does not inherit directly from :py:c
|
|||
"""
|
||||
|
||||
|
||||
|
||||
from .src.kern import Kern
|
||||
from .src.add import Add
|
||||
from .src.prod import Prod
|
||||
|
|
@ -61,4 +71,4 @@ from .src.sde_stationary import sde_RBF,sde_Exponential,sde_RatQuad
|
|||
from .src.sde_brownian import sde_Brownian
|
||||
from .src.multioutput_kern import MultioutputKern
|
||||
from .src.multioutput_derivative_kern import MultioutputDerivativeKern
|
||||
from .src.diff_kern import DiffKern
|
||||
from .src.diff_kern import DiffKern
|
||||
|
|
|
|||
|
|
@ -448,12 +448,34 @@ class PSICOMP_SSRBF_GPU(PSICOMP_RBF):
|
|||
dL_dpsi0_sum = dL_dpsi0.sum()
|
||||
|
||||
self.reset_derivative()
|
||||
# t=self.g_psi1compDer(dvar_gpu,dl_gpu,dZ_gpu,dmu_gpu,dS_gpu,dL_dpsi1_gpu,psi1_gpu, np.float64(variance),l_gpu,Z_gpu,mu_gpu,S_gpu, np.int32(N), np.int32(M), np.int32(Q), block=(self.threadnum,1,1), grid=(self.blocknum,1),time_kernel=True)
|
||||
# t=self.g_psi1compDer(dvar_gpu,dl_gpu,dZ_gpu,dmu_gpu,dS_gpu,dL_dpsi1_gpu,psi1_gpu,
|
||||
# np.float64(variance),l_gpu,Z_gpu,mu_gpu,S_gpu, np.int32(N),
|
||||
# np.int32(M), np.int32(Q), block=(self.threadnum,1,1),
|
||||
# grid=(self.blocknum,1),time_kernel=True)
|
||||
# print 'g_psi1compDer '+str(t)
|
||||
# t=self.g_psi2compDer(dvar_gpu,dl_gpu,dZ_gpu,dmu_gpu,dS_gpu,dL_dpsi2_gpu,psi2n_gpu, np.float64(variance),l_gpu,Z_gpu,mu_gpu,S_gpu, np.int32(N), np.int32(M), np.int32(Q), block=(self.threadnum,1,1), grid=(self.blocknum,1),time_kernel=True)
|
||||
# t=self.g_psi2compDer(dvar_gpu,dl_gpu,dZ_gpu,dmu_gpu,dS_gpu,dL_dpsi2_gpu,psi2n_gpu,
|
||||
# np.float64(variance),l_gpu,Z_gpu,mu_gpu,S_gpu, np.int32(N),
|
||||
# np.int32(M), np.int32(Q), block=(self.threadnum,1,1),
|
||||
# grid=(self.blocknum,1),time_kernel=True)
|
||||
# print 'g_psi2compDer '+str(t)
|
||||
self.g_psi1compDer.prepared_call((self.blocknum,1),(self.threadnum,1,1),dvar_gpu.gpudata,dl_gpu.gpudata,dZ_gpu.gpudata,dmu_gpu.gpudata,dS_gpu.gpudata,dgamma_gpu.gpudata,dL_dpsi1_gpu.gpudata,psi1_gpu.gpudata, log_denom1_gpu.gpudata, log_gamma_gpu.gpudata, log_gamma1_gpu.gpudata, np.float64(variance),l_gpu.gpudata,Z_gpu.gpudata,mu_gpu.gpudata,S_gpu.gpudata,gamma_gpu.gpudata,np.int32(N), np.int32(M), np.int32(Q))
|
||||
self.g_psi2compDer.prepared_call((self.blocknum,1),(self.threadnum,1,1),dvar_gpu.gpudata,dl_gpu.gpudata,dZ_gpu.gpudata,dmu_gpu.gpudata,dS_gpu.gpudata,dgamma_gpu.gpudata,dL_dpsi2_gpu.gpudata,psi2n_gpu.gpudata, log_denom2_gpu.gpudata, log_gamma_gpu.gpudata, log_gamma1_gpu.gpudata, np.float64(variance),l_gpu.gpudata,Z_gpu.gpudata,mu_gpu.gpudata,S_gpu.gpudata,gamma_gpu.gpudata,np.int32(N), np.int32(M), np.int32(Q))
|
||||
self.g_psi1compDer.prepared_call((self.blocknum,1), (self.threadnum,1,1),
|
||||
dvar_gpu.gpudata, dl_gpu.gpudata, dZ_gpu.gpudata,
|
||||
dmu_gpu.gpudata, dS_gpu.gpudata, dgamma_gpu.gpudata,
|
||||
dL_dpsi1_gpu.gpudata, psi1_gpu.gpudata,
|
||||
log_denom1_gpu.gpudata, log_gamma_gpu.gpudata,
|
||||
log_gamma1_gpu.gpudata, np.float64(variance),
|
||||
l_gpu.gpudata, Z_gpu.gpudata, mu_gpu.gpudata,
|
||||
S_gpu.gpudata, gamma_gpu.gpudata, np.int32(N),
|
||||
np.int32(M), np.int32(Q))
|
||||
self.g_psi2compDer.prepared_call((self.blocknum,1), (self.threadnum,1,1),
|
||||
dvar_gpu.gpudata, dl_gpu.gpudata, dZ_gpu.gpudata,
|
||||
dmu_gpu.gpudata, dS_gpu.gpudata, dgamma_gpu.gpudata,
|
||||
dL_dpsi2_gpu.gpudata, psi2n_gpu.gpudata,
|
||||
log_denom2_gpu.gpudata, log_gamma_gpu.gpudata,
|
||||
log_gamma1_gpu.gpudata, np.float64(variance),
|
||||
l_gpu.gpudata, Z_gpu.gpudata, mu_gpu.gpudata,
|
||||
S_gpu.gpudata, gamma_gpu.gpudata, np.int32(N),
|
||||
np.int32(M), np.int32(Q))
|
||||
|
||||
dL_dvar = dL_dpsi0_sum + gpuarray.sum(dvar_gpu).get()
|
||||
sum_axis(grad_mu_gpu,dmu_gpu,N*Q,self.blocknum)
|
||||
|
|
@ -468,7 +490,6 @@ class PSICOMP_SSRBF_GPU(PSICOMP_RBF):
|
|||
dL_dlengscale = grad_l_gpu.get()
|
||||
else:
|
||||
dL_dlengscale = gpuarray.sum(dl_gpu).get()
|
||||
|
||||
return dL_dvar, dL_dlengscale, dL_dZ, dL_dmu, dL_dS, dL_dgamma
|
||||
|
||||
|
||||
return dL_dvar, dL_dlengscale, dL_dZ, dL_dmu, dL_dS, dL_dgamma
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue