L2SoftThr - Iterative Soft Thresholding Algorithm based on l2,1 norm
L2SoftThr - Iterative Soft Thresholding Algorithm based on l2,1 norm
The function aims to solve l2,1 regularized least squares.
L2SoftThr(A, B, X, s, maxIter =200)
Arguments
A: Gene expression data of transcriptome factors (i.e. feature matrix in machine learning). The dimension of A is m * n.
B: Gene expression data of target genes (i.e. observation matrix in machine learning). The dimension of B is m * t.
X: Gene expression data of Chromatin immunoprecipitation or other matrix (i.e. initial iterative point in machine learning). The dimension of X is n * t.
s: joint sparsity level
maxIter: maximum iteration
Returns
The solution of proximal gradient method with l2,1 regularizer.
Details
The L2SoftThr function aims to solve the problem:
min∥AX−B∥F2+λ∥X∥2,1
to obtain s-joint sparse solution.
Examples
m <-256; n <-1024; t <-5; maxIter0 <-50A0 <- matrix(rnorm(m * n), nrow = m, ncol = n)B0 <- matrix(rnorm(m * t), nrow = m, ncol = t)X0 <- matrix(0, nrow = n, ncol = t)NoA <- norm(A0,'2'); A0 <- A0/NoA; B0 <- B0/NoA
res_L21 <- L2SoftThr(A0, B0, X0, s =10, maxIter = maxIter0)