Skip to content
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

Fea/umap refine #4228

Merged
merged 13 commits into from
Sep 30, 2021
Merged

Conversation

AjayThorve
Copy link
Member

@AjayThorve AjayThorve commented Sep 23, 2021

This PR aims to add UMAP refine function, to facilitate iterative fitting without using callbacks, which makes it possible to run UMAP in the node-rapids bindings and show iterative training visualizations. Related node-cuml PR here.

  • adds UMAP refine & get_graph (to only calculate the cgraph computed in UMAP::fit once).

cc @trxcllnt , @exactlyallan

@AjayThorve AjayThorve requested a review from a team as a code owner September 23, 2021 01:41
@caryr35 caryr35 added this to PR-WIP in v21.10 Release via automation Sep 23, 2021
@caryr35 caryr35 moved this from PR-WIP to PR-Needs review in v21.10 Release Sep 23, 2021
@trxcllnt trxcllnt added 3 - Ready for Review Ready for review by team improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Sep 23, 2021
@cjnolet cjnolet self-requested a review September 26, 2021 16:54
Copy link
Member

@cjnolet cjnolet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like this design because it allows us to compute the connectivities graph individually from the embedding. We've been also talking about exposing a function like get_graph through the Python layer because, for example, other libraries such as Scanpy call fuzzy_simplicial_set on the UMAP estimator directly.

Overall, the changes are great and very straightforward. Just a couple very minor things.

cpp/src/umap/runner.cuh Outdated Show resolved Hide resolved
cpp/include/cuml/manifold/umap.hpp Show resolved Hide resolved
cpp/src/umap/runner.cuh Outdated Show resolved Hide resolved
Copy link
Member

@cjnolet cjnolet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, pending CI

v21.10 Release automation moved this from PR-Needs review to PR-Reviewer approved Sep 27, 2021
@trxcllnt
Copy link
Collaborator

rerun tests

2 similar comments
@trxcllnt
Copy link
Collaborator

rerun tests

@AjayThorve
Copy link
Member Author

rerun tests

@dantegd
Copy link
Member

dantegd commented Sep 28, 2021

@AjayThorve @trxcllnt PR #4217 needs to get merged for CI to pass, so I canceled the job, will re-trigger once that's in

@AjayThorve
Copy link
Member Author

@AjayThorve @trxcllnt PR #4217 needs to get merged for CI to pass, so I canceled the job, will re-trigger once that's in

Sounds good, thanks!

@dantegd
Copy link
Member

dantegd commented Sep 29, 2021

rerun tests

@dantegd
Copy link
Member

dantegd commented Sep 29, 2021

@gpucibot merge

@AjayThorve
Copy link
Member Author

rerun tests

@codecov-commenter
Copy link

Codecov Report

❗ No coverage uploaded for pull request base (branch-21.10@9f9e16f). Click here to learn what that means.
The diff coverage is n/a.

Impacted file tree graph

@@               Coverage Diff               @@
##             branch-21.10    #4228   +/-   ##
===============================================
  Coverage                ?   86.19%           
===============================================
  Files                   ?      231           
  Lines                   ?    18837           
  Branches                ?        0           
===============================================
  Hits                    ?    16236           
  Misses                  ?     2601           
  Partials                ?        0           
Flag Coverage Δ
dask 47.06% <0.00%> (?)
non-dask 78.94% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.


Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 9f9e16f...44a9f39. Read the comment docs.

@rapids-bot rapids-bot bot merged commit 079e9e9 into rapidsai:branch-21.10 Sep 30, 2021
v21.10 Release automation moved this from PR-Reviewer approved to Done Sep 30, 2021
vimarsh6739 pushed a commit to vimarsh6739/cuml that referenced this pull request Oct 9, 2023
This PR aims to add UMAP refine function, to facilitate iterative fitting without using `callbacks`, which makes it possible to run UMAP in the node-rapids bindings and show iterative training visualizations. Related node-cuml PR [here](rapidsai/node#293).

- adds UMAP refine & get_graph (to only calculate the cgraph computed in UMAP::fit once).


cc @trxcllnt , @exactlyallan

Authors:
  - Ajay Thorve (https://github.com/AjayThorve)

Approvers:
  - Corey J. Nolet (https://github.com/cjnolet)

URL: rapidsai#4228
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3 - Ready for Review Ready for review by team CUDA/C++ improvement Improvement / enhancement to an existing function non-breaking Non-breaking change
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

5 participants