Skip to content

Conversation

@bytesnake
Copy link
Member

@bytesnake bytesnake commented Mar 18, 2020

Spectral Clustering consists of two steps. First a dimensionality reduction finds important pattern in a graph between the points (by projecting the graph), then a clustering algorithm runs on the embedding. The technique is non-linear because cluster can be distributed such that they are nested inside each other, for example swiss-rolls or nested rings. A linear projection (like PCA) fails in such cases.
Gaussian and polynomial kernels are implemented and projected with diffusion maps. LOBPCG is used for finding the k largest eigenvalues.

Things todo before merging:

@bytesnake bytesnake changed the title [WIP] Add diffusion map dimensionality reduction [WIP] Add diffusion map dimensionality reduction and principal component analysis Apr 8, 2020
@bytesnake
Copy link
Member Author

haven't looked at this for ages, but should be ready to merge. Perhaps I will find time over the weekend to give it a second glance

@quietlychris
Copy link
Member

@bytesnake If you don't have permissions to merge this, just let me know and I can either add you as a rust-ml owner (if you're interested in that), or otherwise would just be happy to make the merge whenever you're ready.

@bytesnake
Copy link
Member Author

@quietlychris yup you can add me and I will see how I can be of help

@bytesnake bytesnake changed the title [WIP] Add diffusion map dimensionality reduction and principal component analysis Add diffusion map dimensionality reduction and simple Principal Component Analysis Jul 13, 2020
@bytesnake bytesnake merged commit 7b6075e into rust-ml:master Jul 13, 2020
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.

2 participants