View source: R/FindOptMatrix.R
FindOpt_DM_Iterative | R Documentation |
Function that iteratively calculates the optimal low-rank signal matrix given partial column and row space basis.
FindOpt_DM_Iterative( X, M, N, r, maxiter = 10000, tol = .Machine$double.eps^0.5 )
X |
The noisy matrix. The dimension is n by p |
M |
The column space that the signal matrix contains. The dimension is n by r_c |
N |
The row space that the signal matrix contains. The dimension is p by r_r |
r |
The rank of output signal matrix |
maxiter |
The maximum number of iterations allowed in the calculation. Default is 1e4 |
tol |
The tolerance used to monitor the convergence. Default is the square root of machine precision |
This function solves the optimization problem of (2) in Dongbang Yuan & Irina Gaynanova (2022) Double-Matched Matrix Decomposition for Multi-View Data, Journal of Computational and Graphical Statistics, DOI: 10.1080/10618600.2022.2067860, that is:
min_{A}{||X - A||^2_F}
subject to
M is a subset of column space of A, N is a subset of row space of A
A list with the following elements:
result |
A matrix that is the estimated solution to the optimization problem |
R |
The remaining r - r_c column bases |
S |
The remaining r - r_r row bases |
num_iter |
The actual number of iteration run |
opt_function_val |
A vector of objective values calculated at each iteration. It is supposed to be monotonically decreasing |
X = matrix(c(2,1,1,3,2,2),nrow = 3) M = matrix(c(1,1,0), nrow = 3) N = matrix(c(0,1), nrow = 2) r = 2 FindOpt_DM_Iterative(X, M, N, r)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.