fast SVD algorithm

2019-05-31 11:28发布

问题:

I'm looking for a fast library to compute SVD (Singular Value Decomposition) in Java. I have already tried some libs I've found and I've done some benchmark (the values show the average time of my benchmark run...) It's not really a valid benchmark, but it was tested on the data I need to process, so enough for me..

  1. Jama - 152 102ms
  2. ujmp - 156 603ms
  3. Commons Math - 183 877ms
  4. colt - 203 866ms
  5. jblas - way slower...

I don't really expect to find something faster than Jama, but I can give it a try... Can you recommend me some other library? Thanks!

edit: I have found a nice page with benchmark of linear algebra libs, so I guess that concludes this question... EJML looks promising...

回答1:

Have you tried LAPACK? See here for more: http://en.wikipedia.org/wiki/LAPACK

Since you want native java library try netlib: http://code.google.com/p/netlib-java/ .



回答2:

I have found this page with benchmark of linear algebra libs, so I guess that concludes this question... EJML looks promising...I have found a nice page with benchmark of linear algebra libs, so I guess that concludes this question... EJML looks really good, it works almost 2x faster than jama on my data...