-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Linear algebra library #138
Comments
The netlib-java home page says that Breeze is built on top of it. Basically Breeze is a higher-level Scala wrapper. So I would vote against netlib-java. Then we have on the one hand Breeze, which is used in MLlib for Spark, and on the other hand Spire, which is somewhat similar to Twitter's Algebird, which they say can be used on top of Scalding or Storm. What we need to ask ourselves is if we want to completely translate the linear algebra API to |
Yes, netlib-java is very low-level and used by breeze. I think numerics cover a big part of all usecases and I would vote for speed in their case. Ideally even for local execution (through breeze). Nonetheless I like the approach by scalding/algebird very much. Allowing linear algebra operations on for example vectors of bloom filters sounds really cool. |
Oh God, I just realized that Breeze doesn't have the outer vector product 🤦 |
But you use this in ALS, don't you? |
No, I use Breeze only to invert the matrix. There's a ticket for the outer product on GitHub. |
I'm leaving @akunft in charge of this. |
I think we can close this, as the discussion has moved to #187. @stratosphere/emma-committers Does anybody object? |
👍 |
New meta-issue in #188. |
The examples folder has several algorithms that mix the
DataBag
abstraction with linear algebra. Currently, we use Breeze, but we might switch to something else if we agree that it is better.Let's try to make a summary of the different pros and cons of the various options here:
Breeze
Spire
netlib-java(used by Breeze)The text was updated successfully, but these errors were encountered: