svdbip2 {BMconcor} | R Documentation |
SVD for bipartitioned matrix x
Description
SVD for bipartitioned matrix x. r successive Solutions. As SVDBIP, but with another algorithm and another initialisation
Usage
svdbip2(x, K, H, r)
Arguments
x |
a |
K |
is a row vector which contains the numbers pk, k=1,...,kx, of the partition of x with kx row blocks : |
H |
is a row vector which contains the numbers qh, h=1,...,ky, of the partition of x with ky column blocks : sum(qh)=q |
r |
The number of wanted successive solutions |
Details
The first solution calculates kx+ky normed vectors: kx vectors
uk[:,1]
of Rpk associated to ky vectors vh[,1]
's of Rqh, by maximizing
\sum_k \sum_h (u_k[,1]'*x_{kh}*v_h[,1])^2
, with kx+ky norm
constraints. A value (u_k[,1]'*x_{kh}*v_h[,1])^2
measures the
relative link between R^{p_k}
and R^{q_h}
associated to the
block xkh.
The second solution is obtained from the same criterion, but after
replacing each xhk by xkh-xkhvhvh'-ukuk'xkh+ukuk'xkhvhvh'. And
so on for the successive solutions 1,2,...,r . The biggest number of
solutions may be r=inf(pk,qh), when the xkh's are supposed with full
rank; then rmax=min([min(K),min(H)])
.
When K=p (or H=q, with t(x)), svdcp function is better. When H=q and
K=p, it is the usual svd (with squared singular values).
Convergence of algorithm may be not global. So the below proposed
initialisation of the algorithm may be not very suitable for some data
sets. Several different random initialisations with normed vectors
might be considered and the best result then choosen
Value
A list
with following components:
u |
a |
v |
a |
s |
a |
Author(s)
Lafosse, R.
References
Kissita G., Analyse canonique generalisee avec tableau de reference generalisee. Thesis, Ceremade Paris 9 Dauphine (2003)
Examples
x <- matrix(runif(200),10,20)
s2 <- svdbip2(x,c(3,4,3),c(5,5,10),3);s2$s2
s1 <- svdbip(x,c(3,4,3),c(5,5,10),3);s1$s2