combine.kernels {mixKernel} | R Documentation |
Combine multiple kernels into a meta-kernel
Description
Compute multiple kernels into a single meta-kernel
Usage
combine.kernels(
...,
scale = TRUE,
method = c("full-UMKL", "STATIS-UMKL", "sparse-UMKL"),
knn = 5,
rho = 20
)
Arguments
... |
list of kernels (called 'blocks') computed on different datasets and measured on the same samples. |
scale |
boleean. If |
method |
character. Which method should be used to compute the
meta-kernel. Default: |
knn |
integer. If |
rho |
integer. Parameters for the augmented Lagrangian method. Default:
|
Details
The arguments method
allows to specify the Unsupervised Multiple
Kernel Learning (UMKL) method to use:
-
"STATIS-UMKL"
: combines input kernels into the best consensus of all kernels; -
"full-UMKL"
: computes a kernel that minimizes the distortion between the meta-kernel and the k-NN graphs obtained from all input kernels; -
"sparse-UMKL"
: a sparse variant of the"full-UMKL"
approach.
Value
combine.kernels
returns an object of classes "kernel"
and "metaKernel"
, a list that contains the following components:
kernel |
: the computed meta-kernel matrix; |
X |
: the dataset from which the kernel has been computed, as given by
the function |
weights |
: a vector containing the weights used to combine the kernels. |
Author(s)
Jerome Mariette <jerome.mariette@inrae.fr> Nathalie Vialaneix <nathalie.vialaneix@inrae.fr>
References
Mariette J. and Villa-Vialaneix N. (2018). Unsupervised multiple kernel learning for heterogeneous data integration . Bioinformatics, 34(6), 1009-1015. DOI: doi:10.1093/bioinformatics/btx682.
See Also
Examples
data(TARAoceans)
# compute one kernel per dataset
phychem.kernel <- compute.kernel(TARAoceans$phychem, kernel.func = "linear")
pro.phylo.kernel <- compute.kernel(TARAoceans$pro.phylo, kernel.func = "abundance")
pro.NOGs.kernel <- compute.kernel(TARAoceans$pro.NOGs, kernel.func = "abundance")
# compute the meta kernel
meta.kernel <- combine.kernels(phychem = phychem.kernel,
pro.phylo = pro.phylo.kernel,
pro.NOGs = pro.NOGs.kernel,
method = "full-UMKL")