and you are correct that ScaLAPACK does not support 64-bit integers (and the problem is in the library itself, not Elemental)
I've been working on getting the LP solvers to work on all of the http://www.netlib.org/lp/data/ examples using a symmetric-indefinite solver and hadn't been checking in as much as I should have
Ryan H. Lewis
@rhl-
@poulson ping?
Is there any reason why we can’t further generalize elastic net to penalize l1||Gx||_1 + l2||Gx||_2 for a square matrix G.
or even two matrices G,H (where in my case G=H)
Ryan H. Lewis
@rhl-
to make it simple, i’m thinking of G and H as diagonal matrices.
Looking at the EN code, it looks like I need to just patch up the corresponding bits of the objective function
Ryan H. Lewis
@rhl-
If I change it to: l_1 ||Gx|| + l_2||Hx|| then I need to stick H on the upper two entries of the diagonal of Q in your EN function, and then (assuming G = diag(g)) stick the entries of g in where the first two array of ones are..
and H can be an arbitrary matrix. Not sure how to do the same thing for G here.. but, I don’t need it.
Jack Poulson
@poulson
There's no reason that wouldn't be possible, but it wouldn't be "Elastic Net" anymore
it's still a QP
Ryan H. Lewis
@rhl-
@poulson was thinking of doing elastic net with a regularizer. E.g. in ||Ax-b|| making ||(AP^{-1})Px-b|| then saying z = Px
Aidan Dang
@AidanGG
Hi all, I've got an example of a matrix that's giving me problems, as a .bin file from El::Write. It's about 63MB. What's the easiest way for me to send it?
Jack Poulson
@poulson
is there a website you can post it to and link to?
Aidan Dang
@AidanGG
I'll chuck it on my google drive
Jack Poulson
@poulson
is there any context for this matrix?
Aidan Dang
@AidanGG
It was generated as part of a tensor network calculation
Jack Poulson
@poulson
was it an intermediate step in an alternating algorithm?
Aidan Dang
@AidanGG
I'm using the svd to cut a matrix into two, then using the svd to cut one of those, and so on
Jack Poulson
@poulson
OK
Aidan Dang
@AidanGG
I'm fairly certain the matrix I have doesn't have any undefineds/NaNs
Jack Poulson
@poulson
it would be good to see if Octave can safely compute the SVD of that matrix as well
my guess is that it would take about 10 minutes
Aidan Dang
@AidanGG
I think scalapack does
_
Jack Poulson
@poulson
assuming roughly a 3 thousand by 3 thousand matrix
ScaLAPACK uses the QR algorithm
have you tested Elemental's QR algorithm on it?
Aidan Dang
@AidanGG
is that through bidiagSVDctrl.useQR?
Jack Poulson
@poulson
yes, that is the best way
Aidan Dang
@AidanGG
Ok, it still doesn't work
Jack Poulson
@poulson
what is the error/exception?
Aidan Dang
@AidanGG
Did not converge all singular values
Jack Poulson
@poulson
one can increase the maximum number of iterations to see if it was almost converging
Aidan Dang
@AidanGG
Is that qrCtrl.maxIterPerVal?
Jack Poulson
@poulson
bidiagSVDCtrl.qrCtrl.maxIterPerVal = 20 could be tried
yes
Also, did you verify that ScaLAPACK returned with INFO=0?
Aidan Dang
@AidanGG
Oh, I haven't, but the final results were sensible, so I assumed it was ok