mirror of
https://github.com/SheffieldML/GPy.git
synced 2026-05-11 21:12:38 +02:00
build_cor_kernel is now called build_lcm
This commit is contained in:
parent
79aef1707f
commit
cf2cf67ed2
1 changed files with 10 additions and 10 deletions
|
|
@ -2,33 +2,33 @@ import numpy as np
|
||||||
import warnings
|
import warnings
|
||||||
from .. import kern
|
from .. import kern
|
||||||
|
|
||||||
def build_cor_kernel(input_dim, Nout, CK = [], NC = [], W=1):
|
def build_lcm(input_dim, num_outputs, CK = [], NC = [], W_columns=1,W=None,kappa=None):
|
||||||
|
#TODO build_icm or build_lcm
|
||||||
"""
|
"""
|
||||||
Builds an appropiate coregionalized kernel
|
Builds a kernel for a linear coregionalization model
|
||||||
|
|
||||||
:input_dim: Input dimensionality
|
:input_dim: Input dimensionality
|
||||||
:Nout: Number of outputs
|
:num_outputs: Number of outputs
|
||||||
:param CK: List of coregionalized kernels (i.e., this will be multiplied by a coregionalise kernel).
|
:param CK: List of coregionalized kernels (i.e., this will be multiplied by a coregionalise kernel).
|
||||||
:param K: List of kernels that won't be multiplied by a coregionalise kernel
|
:param K: List of kernels that will be added up together with CK, but won't be multiplied by a coregionalise kernel
|
||||||
:W:
|
:param W_columns: number tuples of the corregionalization parameters 'coregion_W'
|
||||||
|
:type W_columns: integer
|
||||||
"""
|
"""
|
||||||
|
|
||||||
for k in CK:
|
for k in CK:
|
||||||
if k.input_dim <> input_dim:
|
if k.input_dim <> input_dim:
|
||||||
k.input_dim = input_dim
|
k.input_dim = input_dim
|
||||||
#raise Warning("kernel's input dimension overwritten to fit input_dim parameter.")
|
|
||||||
warnings.warn("kernel's input dimension overwritten to fit input_dim parameter.")
|
warnings.warn("kernel's input dimension overwritten to fit input_dim parameter.")
|
||||||
|
|
||||||
for k in NC:
|
for k in NC:
|
||||||
if k.input_dim <> input_dim + 1:
|
if k.input_dim <> input_dim + 1:
|
||||||
k.input_dim = input_dim + 1
|
k.input_dim = input_dim + 1
|
||||||
#raise Warning("kernel's input dimension overwritten to fit input_dim parameter.")
|
|
||||||
warnings.warn("kernel's input dimension overwritten to fit input_dim parameter.")
|
warnings.warn("kernel's input dimension overwritten to fit input_dim parameter.")
|
||||||
|
|
||||||
kernel = CK[0].prod(kern.coregionalise(Nout,W),tensor=True)
|
kernel = CK[0].prod(kern.coregionalise(num_outputs,W_columns,W,kappa),tensor=True)
|
||||||
for k in CK[1:]:
|
for k in CK[1:]:
|
||||||
kernel += k.prod(kern.coregionalise(Nout,W),tensor=True)
|
k_coreg = kern.coregionalise(num_outputs,W_columns,W,kappa)
|
||||||
|
kernel += k.prod(k_coreg,tensor=True)
|
||||||
for k in NC:
|
for k in NC:
|
||||||
kernel += k
|
kernel += k
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue