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

[REVIEW] Single-linkage Hierarchical Clustering C++ #3545

Merged
merged 99 commits into from
Mar 18, 2021

Conversation

cjnolet
Copy link
Member

@cjnolet cjnolet commented Feb 22, 2021

Closes #3518

I've closed the original PR (#3308) which included both SLHC & HDBSCAN and opened this PR to only include the SLHC changes.

This PR contains an implementation of SLHC which is currently broken across RAFT & cuML. Once we move the dense pairwise distance primitive over to RAFT the entire SLHC algorithm can live in RAFT so it can be shared w/ cugraph, and will just be exposed through cuml.

If reviewing this PR, please also review the corresponding RAFT PR: rapidsai/raft#140

@cjnolet cjnolet marked this pull request as ready for review March 16, 2021 18:00
@cjnolet cjnolet changed the title [REVIEW] Single-linkage Hierarchical Clustering [REVIEW] Single-linkage Hierarchical Clustering C++ Mar 16, 2021
Copy link
Member

@divyegala divyegala left a comment

Choose a reason for hiding this comment

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

Pre-approving, very minor feedback

cpp/bench/sg/linkage.cu Outdated Show resolved Hide resolved
cpp/src/hierarchy/pw_dist_graph.cuh Show resolved Hide resolved
Copy link
Member

@dantegd dantegd left a comment

Choose a reason for hiding this comment

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

One minor request

cpp/cmake/Dependencies.cmake Outdated Show resolved Hide resolved
@dantegd dantegd added 4 - Waiting on Author Waiting for author to respond to review and removed 3 - Ready for Review Ready for review by team labels Mar 16, 2021
@github-actions github-actions bot added the conda conda issue label Mar 16, 2021
@dantegd dantegd added 4 - Waiting on Reviewer Waiting for reviewer to review or respond and removed 4 - Waiting on Author Waiting for author to respond to review labels Mar 17, 2021
@cjnolet
Copy link
Member Author

cjnolet commented Mar 17, 2021

rerun tests

@cjnolet
Copy link
Member Author

cjnolet commented Mar 17, 2021

@gpucibot merge

@codecov-io
Copy link

Codecov Report

Merging #3545 (e4d6955) into branch-0.19 (14bd6c1) will decrease coverage by 35.45%.
The diff coverage is n/a.

❗ Current head e4d6955 differs from pull request most recent head bc1a1d7. Consider uploading reports for the commit bc1a1d7 to get more accurate results
Impacted file tree graph

@@               Coverage Diff                @@
##           branch-0.19    #3545       +/-   ##
================================================
- Coverage        80.72%   45.27%   -35.46%     
================================================
  Files              228      224        -4     
  Lines            17629    17059      -570     
================================================
- Hits             14231     7723     -6508     
- Misses            3398     9336     +5938     
Flag Coverage Δ
dask 45.27% <ø> (+0.31%) ⬆️
non-dask ?

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

Impacted Files Coverage Δ
python/cuml/neighbors/nearest_neighbors.pyx 41.47% <ø> (-51.18%) ⬇️
python/cuml/pipeline/__init__.py 0.00% <0.00%> (-100.00%) ⬇️
python/cuml/_thirdparty/__init__.py 0.00% <0.00%> (-100.00%) ⬇️
python/cuml/thirdparty_adapters/__init__.py 0.00% <0.00%> (-100.00%) ⬇️
python/cuml/_thirdparty/sklearn/exceptions.py 0.00% <0.00%> (-100.00%) ⬇️
python/cuml/experimental/explainer/__init__.py 0.00% <0.00%> (-100.00%) ⬇️
python/cuml/_thirdparty/sklearn/utils/__init__.py 0.00% <0.00%> (-100.00%) ⬇️
python/cuml/experimental/linear_model/__init__.py 0.00% <0.00%> (-100.00%) ⬇️
python/cuml/experimental/preprocessing/__init__.py 0.00% <0.00%> (-100.00%) ⬇️
...ython/cuml/experimental/hyperopt_utils/__init__.py 0.00% <0.00%> (-100.00%) ⬇️
... and 131 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 14bd6c1...bc1a1d7. Read the comment docs.

@cjnolet
Copy link
Member Author

cjnolet commented Mar 17, 2021

rerun tests

@dantegd
Copy link
Member

dantegd commented Mar 18, 2021

@cjnolet I think the logs are showing an error in the doxygen docstring:

/var/lib/jenkins/workspa/var/lib/jenkins/workspace/rapidsai/gpuci/cuml/prb/cuml-gpu-test/CUDA/10.2/GPU_LABEL/gpu/OS/centos7/PYTHON/3.8/cpp/include/cuml/cluster/linkage.hpp:79: error: unbalanced grouping commands (warning treated as error, aborting now)

@rapids-bot rapids-bot bot merged commit 0d02e76 into rapidsai:branch-0.19 Mar 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4 - Waiting on Reviewer Waiting for reviewer to review or respond CMake conda conda issue CUDA / C++ CUDA issue Cython / Python Cython or Python issue feature request New feature or request non-breaking Non-breaking change RAFT Issue or PR is related to RAFT
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEA] Single-linkage agglomerative clustering
6 participants