-
-
Notifications
You must be signed in to change notification settings - Fork 25.8k
ENH: Faster Eigen Decomposition For Isomap & KernelPCA #31247
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
base: main
Are you sure you want to change the base?
ENH: Faster Eigen Decomposition For Isomap & KernelPCA #31247
Conversation
…ith tests and integration into Isomap and KernelPCA
…into feature/randomized_eigsh_value
Thanks for the PR @yaichm. Please follow the instructions of the automated comment above to resolve the failing linter continuous integration. If you need help (e.g. the instructions are not clear enough), please let us know with a specific description of your attempt at resolving the problems and the problem you faced.
Looking forward to it. Please feel free to ping me once done. |
I’ve followed the automated instructions and fixed the linter issues. The benchmark result graphs have also been added. @ogrisel , feel free to review whenever you are available. |
Thanks to the team for finalizing these results ! So to summarize
|
As requested by @smarie, here is the image showing the reconstruction error for 50 components. |
Fixes #31246
Implemented randomized_eigh(selection='values') and integrated it into KernelPCA and Isomap
Introduced a new eigenvalue decomposition function randomized_eigh(values) for faster computation.
Integrated this solver into both KernelPCA and Isomap as an alternative to dense solvers.
Added comprehensive tests in extmath.py to validate the decomposition accuracy.
Benchmarked against existing solvers, comparing:
The benchmark result graphs comparing execution time and reconstruction error with existing solvers will be added in the comment below.