`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.

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