Title: | Alternating Direction Method of Multipliers to Solve Dense Dubmatrix Problem |
---|---|
Description: | Solves the problem of identifying the densest submatrix in a given or sampled binary matrix, Bombina et al. (2019) <arXiv:1904.03272>. |
Authors: | Brendan Ames <[email protected]>, Polina Bombina <[email protected]> |
Maintainer: | Polina Bombina <[email protected]> |
License: | CC0 |
Version: | 0.1.0 |
Built: | 2025-02-19 04:59:17 UTC |
Source: | https://github.com/cran/admmDensestSubmatrix |
Iteratively solves the convex optimization problem using ADMM.
densub(G, m, n, tau = 0.35, gamma = 6/(sqrt(m * n) * (q - p)), opt_tol = 1e-04, maxiter, quiet = TRUE)
densub(G, m, n, tau = 0.35, gamma = 6/(sqrt(m * n) * (q - p)), opt_tol = 1e-04, maxiter, quiet = TRUE)
G |
sampled binary matrix |
m |
number of rows in dense submatrix |
n |
number of columns in dense submatrix |
tau |
penalty parameter for equality constraint violation |
gamma |
|
opt_tol |
stopping tolerance in algorithm |
maxiter |
maximum number of iterations of the algorithm to run |
quiet |
toggles between displaying intermediate statistics |
s.t ,
,
,
where ,
,
are the sets:
is the indicator function of the set
in
such that
if
in
and +infinity otherwise
Rank one matrix with nonzero entries, matrix
that is used to count the number of disagreements between
and
Applies the shrinkage operator for singular value tresholding.
mat_shrink(K, tau)
mat_shrink(K, tau)
K |
matrix |
tau |
regularization parameter |
Matrix
mat_shrink(matrix(c(1,0,0,0,1,1,1,1,1), nrow=3, ncol=3, byrow=TRUE),0.35)
mat_shrink(matrix(c(1,0,0,0,1,1,1,1,1), nrow=3, ncol=3, byrow=TRUE),0.35)
Generates binary - matrix sampled from dense
- submatrix.
plantedsubmatrix(M, N, m, n, p, q)
plantedsubmatrix(M, N, m, n, p, q)
M |
number of rows in sampled matrix |
N |
number of rows in sampled matrix |
m |
number of rows in dense submatrix |
n |
natural number used to calculate number of rows in dense submatrix |
p |
density outside planted submatrix |
q |
density inside planted submatrix |
Let and
be
and
index sets.
For each i in U*, j in V* we let
with probability
and
otherwise.
For each remaining
we set
with probability
and take
otherwise.
Matrix sampled from the planted dense
-submatrix model, dense sumbatrix
, matrix
used to count the number of disagreements between
and
plantedsubmatrix(10,10,1,2,0.25,0.75)
plantedsubmatrix(10,10,1,2,0.25,0.75)