-
-
Notifications
You must be signed in to change notification settings - Fork 248
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
Add GaussianMixtureModel in linfa-clustering #56
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the work, I added some small comments.
- we should move away from implicit error handling with panics, I know that we do panic in a lot of places at the moment, but returning an error is much more flexible
GmmHyperParams::fit
should implicitly build the parameter set- can you add at least a second test for the algorithm?
otherwise the code is really clean and easy to read 👍 you have to rebase the PR to the latest commit with #55 merged
84220f7
to
1f4a1d7
Compare
1f4a1d7
to
0e4cd84
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looking good to me, do you want to add anything before merging?
Nope, it is ok for me as well. |
* Add GaussianMixtureModel clustering algorithm (rebase) * Add ndarray-linalg dependency * Add test-openblas-system feature * Fix from review * Return errors instead of panicking * Fix error management * Revert unwanted change * Add covariance, precisions getters and add another test * Add with_rng(), remove params_with_rng() * Use Lapack + Scalar bounds to get cholesky working * Remove GmmHyperParamsBuilder, add hyperparams invalid value tests
This is a port of the Gaussian Mixture Model.
Some limitations wrt to the original:
I am fairly new to Rust programming, so feedback is welcome.