-
Notifications
You must be signed in to change notification settings - Fork 17
V0.2 dev #55
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: master
Are you sure you want to change the base?
V0.2 dev #55
Conversation
… cover previous API.
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.
Pull Request Overview
This PR restructures the UMAP package for v0.2 by splitting out utilities and neighbor logic, introducing explicit modules for configuration, and greatly expanding the test suite to cover multi-view and simplicial-set operations.
- Refactor and rename fuzzy-set combination functions (
merge_local_simplicial_sets
,general_simplicial_set_union
,general_simplicial_set_intersection
) and add column-normalization utilities insrc/utils.jl
. - Reorganize
src/UMAP.jl
to include new modules (config.jl
,neighbors.jl
,simplicial_sets.jl
, etc.) and adjust exports. - Add comprehensive tests for neighbors, simplicial sets, and utils, and scaffold tests for configuration and membership-function modules.
Reviewed Changes
Copilot reviewed 25 out of 27 changed files in this pull request and generated no comments.
Show a summary per file
File | Description |
---|---|
src/utils.jl | Added merge/intersect of fuzzy sets, normalization, reset tools |
src/UMAP.jl | Updated includes/exports to reflect new module split |
test/utils_tests.jl | Updated tests for new merge/local-connectivity utilities |
test/neighbors_tests.jl | New tests covering knn_search across multiple view scenarios |
test/simplicial_sets_tests.jl | New tests for fuzzy_simplicial_set and coalesce_views |
Comments suppressed due to low confidence (4)
src/UMAP.jl:21
- The public API no longer exports
transform
or theUMAP_
constructor, which breaks backwards compatibility. Consider re-addingexport transform, UMAP_
if those remain intended public entry points.
export umap
test/membership_fn_tests.jl:2
- The
membership_fn_tests.jl
file is empty. Add tests forfit_ab
(and any other membership-function utilities) to ensure coverage of the new membership_fn module.
@testset "membership_fn tests" begin
test/config_tests.jl:1
- The
config_tests.jl
file has no assertions. Add tests for the new parameter structs (SourceViewParams
,SourceGlobalParams
, etc.) to validate construction and argument checks.
@testset "Configuration Tests" begin
src/utils.jl:102
- [nitpick]
_norm_sparse
lacks a docstring. Please add a brief docstring explaining its purpose, inputs, and the effect on the input sparse matrix.
function _norm_sparse(simplicial_set::AbstractSparseMatrix)
Update TagBot.yml to use SSH key for documentation deployment
To Do
Functionality
Tests
Docs
UMAPConfig
component structs and how to useUMAPResult
/UMAPTransformResult