`combine.kernels.Rd`

Compute multiple kernels into a single meta-kernel

```
combine.kernels(
...,
scale = TRUE,
method = c("full-UMKL", "STATIS-UMKL", "sparse-UMKL"),
knn = 5,
rho = 20
)
```

- ...
list of kernels (called 'blocks') computed on different datasets and measured on the same samples.

- scale
boleean. If

`scale = TRUE`

, each block is standardized to zero mean and unit variance and cosine normalization is performed on the kernel. Default:`TRUE`

.- method
character. Which method should be used to compute the meta-kernel. Default:

`"full-UMKL"`

.- knn
integer. If

`method = "sparse-UMKL"`

or`method = "full-UMKL"`

, number of neighbors used to get a proxy of the local topology of the datasets from each kernel. Default:`5`

.- rho
integer. Parameters for the augmented Lagrangian method. Default:

`20`

.

`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

`compute.kernel`

. Can be`NULL`

if a kernel matrix was passed to this function;- weights
: a vector containing the weights used to combine the kernels.

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.

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
.

```
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")
```