Can someone who uses linalg tell me what options to use to tell
install.rb what options to use ?
What do you mean by “really big”? Does the matrix fit in real memory
on your system, or do you need an “out of core” SVD? Is the matrix dense
or sparse? And are you just doing the SVD, or is there some real-world
processing downstream of the singular values and vectors?
IIRC Lapack has a dense in-core SVD built in, and I know that R can do
an SVD and many of the statistical functions downstream, like linear
regression, principal component analysis, “machine learning”, etc. If
you’re in a hurry, the best course of action might be to “shell out” to
R from your Ruby code and read the singular values and vectors back in.
Sparse SVDs are a whole different ballgame. IIRC the algorithm of choice
is a Lanczos code pioneered in Fortran a couple of decades back by Jane
Cullum and Ralph Willoughby. A search of NetLib using
turned up this:
Thank you very much!
M. Edward (Ed) Borasky