| uinmf | R Documentation |
Performs mosaic integrative non-negative matrix factorization (UINMF) (A.R.
Kriebel, 2022) to return factorized H, W, V and U
matrices. The objective function is stated as
\arg\min_{H\ge0,W\ge0,V\ge0,U\ge0}\sum_{i}^{d}
||\begin{bmatrix}E_i \\ P_i \end{bmatrix} -
(\begin{bmatrix}W \\ 0 \end{bmatrix}+
\begin{bmatrix}V_i \\ U_i \end{bmatrix})Hi||^2_F+
\lambda_i\sum_{i}^{d}||\begin{bmatrix}V_i \\ U_i \end{bmatrix}H_i||_F^2
where E_i is the input non-negative matrix of the i'th dataset,
P_i is the input non-negative matrix for the unshared features,
d is the total number of datasets. E_i is of size
m \times n_i for m shared features and n_i sample points,
P_i is of size u_i \times n_i for u_i unshared feaetures,
H_i is of size k \times n_i, V_i is of size
m \times k, W is of size m \times k and U_i is of
size u_i \times k.
Similar to inmf, uinmf also optimizes the objective with
ANLS algorithm.
uinmf(
objectList,
unsharedList,
k = 20,
lambda = 5,
niter = 30,
nCores = 2,
verbose = FALSE
)
objectList |
list of input datasets. List elements should all be of the same class. Viable classes include: matrix, dgCMatrix, H5Mat, H5SpMat. |
unsharedList |
List of input unshared feature matrices, with the same
requirement as |
k |
Integer. Inner dimensionality to factorize the datasets into.
Default |
lambda |
Regularization parameter. Use one number for all datasets or a
vector to specify for each dataset. Larger values penalize dataset-specific
effects more strongly (i.e. alignment should increase as |
niter |
Integer. Total number of block coordinate descent iterations to
perform. Default |
nCores |
The number of parallel tasks that will be spawned.
Default |
verbose |
Logical scalar. Whether to show information and progress.
Default |
A list of the following elements:
H - a list of result H_i matrices of size
n_i \times k
V - a list of result V_i matrices
W - the result W matrix
U - a list of result A_i matrices
objErr - the final objective error value.
Yichen Wang
April R. Kriebel and Joshua D. Welch, UINMF performs mosaic integration of single-cell multi-omic datasets using nonnegative matrix factorization, Nat. Comm., 2022
# Fake matrices representing unshared features of the given datasets
# Real-life use should have features that are not presented in the
# intersection of features of all datasets involved.
ctrl.unshared <- ctrl.sparse[1:10,]
stim.unshared <- stim.sparse[11:30,]
set.seed(1)
result <- uinmf(list(ctrl.sparse, stim.sparse),
list(ctrl.unshared, stim.unshared), verbose = FALSE)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.