https://docs.scipy.org/doc/scipy/reference/generated/scipy.sparse.linalg.svd... states "This is a naive implementation using ARPACK as an eigensolver on A.H * A or A * A.H, depending on which one is more efficient." One of my co-workers is struggling to find an implementation for SVD for a sparse matrix. I was thinking of suggesting that he look at SciPy. The phrase "naive implementation" has made me think twice about making the suggestion. I just don't want the first intro of Python/SciPy into the organization to be a negative one. I poked around and found the following 2 articles http://fa.bianp.net/blog/2012/singular-value-decomposition-in-scipy/ https://simplyml.com/benchmarking-the-singular-value-decomposition/ I realize that I should be suspicious of bench marks and that you have to run your own. I would like to provide my co-worker the link to SciPy and then to 2 articles which can help guide him in creating his own bench mark. Any suggestions would be appreciated. Please note that I am not an expert in SVD.
Jake Vanderplas also followed up on Fabian's post around those times. For reference, https://jakevdp.github.io/blog/2012/12/19/sparse-svds-in-python/ My guess is that PROPACK's license was ambiguous for a long time while sparse library was being implemented and getting mature. There are more experienced devs that can comment on that. But maybe during the numpy.matrix revamp ( https://github.com/scipy/scipy/issues/8162) we can consider involving PROPACK alternatives. On Fri, Jun 15, 2018 at 1:55 AM, Robert Lucente <rlucente@pipeline.com> wrote:
https://docs.scipy.org/doc/scipy/reference/generated/ scipy.sparse.linalg.svds.html
states "This is a naive implementation using ARPACK as an eigensolver on A.H * A or A * A.H, depending on which one is more efficient."
One of my co-workers is struggling to find an implementation for SVD for a sparse matrix. I was thinking of suggesting that he look at SciPy. The phrase "naive implementation" has made me think twice about making the suggestion. I just don't want the first intro of Python/SciPy into the organization to be a negative one.
I poked around and found the following 2 articles
http://fa.bianp.net/blog/2012/singular-value-decomposition-in-scipy/
https://simplyml.com/benchmarking-the-singular-value-decomposition/
I realize that I should be suspicious of bench marks and that you have to run your own.
I would like to provide my co-worker the link to SciPy and then to 2 articles which can help guide him in creating his own bench mark. Any suggestions would be appreciated.
Please note that I am not an expert in SVD. _______________________________________________ SciPy-Dev mailing list SciPy-Dev@python.org https://mail.python.org/mailman/listinfo/scipy-dev
IIRC, I wrote that implementation at that time. Indeed, PROPACk was at that time not usable because of licensing. Instead, I implemented sparse SVD by solving the eigenvalues of the (implicit) A^H * A. It is naive because of the loss of precision (because of the squaring). On Sat, Jun 16, 2018 at 6:50 PM, Ilhan Polat <ilhanpolat@gmail.com> wrote:
Jake Vanderplas also followed up on Fabian's post around those times. For reference, https://jakevdp.github.io/blog/2012/12/19/sparse-svds- in-python/
My guess is that PROPACK's license was ambiguous for a long time while sparse library was being implemented and getting mature. There are more experienced devs that can comment on that.
But maybe during the numpy.matrix revamp (https://github.com/scipy/ scipy/issues/8162) we can consider involving PROPACK alternatives.
On Fri, Jun 15, 2018 at 1:55 AM, Robert Lucente <rlucente@pipeline.com> wrote:
https://docs.scipy.org/doc/scipy/reference/generated/scipy. sparse.linalg.svds.html
states "This is a naive implementation using ARPACK as an eigensolver on A.H * A or A * A.H, depending on which one is more efficient."
One of my co-workers is struggling to find an implementation for SVD for a sparse matrix. I was thinking of suggesting that he look at SciPy. The phrase "naive implementation" has made me think twice about making the suggestion. I just don't want the first intro of Python/SciPy into the organization to be a negative one.
I poked around and found the following 2 articles
http://fa.bianp.net/blog/2012/singular-value-decomposition-in-scipy/
https://simplyml.com/benchmarking-the-singular-value-decomposition/
I realize that I should be suspicious of bench marks and that you have to run your own.
I would like to provide my co-worker the link to SciPy and then to 2 articles which can help guide him in creating his own bench mark. Any suggestions would be appreciated.
Please note that I am not an expert in SVD. _______________________________________________ SciPy-Dev mailing list SciPy-Dev@python.org https://mail.python.org/mailman/listinfo/scipy-dev
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@python.org https://mail.python.org/mailman/listinfo/scipy-dev
participants (3)
-
David Cournapeau -
Ilhan Polat -
Robert Lucente