Skip to content

Added a sparse version of the SNF method - #22

Open
James-Mc1ntyre wants to merge 4 commits into
rmarkello:masterfrom
James-Mc1ntyre:SparseSNF
Open

Added a sparse version of the SNF method#22
James-Mc1ntyre wants to merge 4 commits into
rmarkello:masterfrom
James-Mc1ntyre:SparseSNF

Conversation

@James-Mc1ntyre

Copy link
Copy Markdown

Created an snf_sparse function that allows the use of sparse affinity matrices (CSR matrices) rather than dense matrices. This reduces the memory constraints from O(NxN) to O(NxK), which will make it possible to use with large sample sizes.

The main difference from the dense SNF method is in each iteration, we prune the status matrices (P) to only the top K edges. This may reduce performance, as some of the pruned edges could contain information, but it makes the function applicable to large real-world datasets.
Most semi-supervised learning implementations that may want to test this method will include huge numbers of samples.

Let me know if you see any issues in my logic here and if it aligns well with the dense SNF method

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant