8000 add method 'transform' for SpectralEmbedding · Issue #15808 · scikit-learn/scikit-learn · GitHub
[go: up one dir, main page]

Skip to content

add method 'transform' for SpectralEmbedding #15808

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

Open
huidongchen opened this issue Dec 6, 2019 · 6 comments
Open

add method 'transform' for SpectralEmbedding #15808

huidongchen opened this issue Dec 6, 2019 · 6 comments
Labels
module:manifold Needs Decision - Include Feature Requires decision regarding including feature New Feature

Comments

@huidongchen
Copy link

For SpectralEmbedding, is there any plan to add the method transform? This is related to the old post #2887

@TomDLT
Copy link
Member
TomDLT commented Dec 6, 2019

As noted in the old post (#2887 (comment)), there seems to be principled ways to do it [1] that match our criterion for inclusion.

[1] Bengio, Y., Paiement, J. F., Vincent, P., Delalleau, O., Le Roux, N. , & Ouimet, M. (2004). Out-of-sample extensions for lle, isomap, mds, eigenmaps, and spectral clustering. In Advances in neural information processing systems (pp. 177-184). [1134 citations]

@dillongardner
Copy link
Contributor

Is this something anyone is working on? If not, I'd be happy to dig into it. Seems like it might take a bit of time/effort.

@TomDLT
Copy link
Member
TomDLT commented Dec 13, 2019

You are welcome to work on it.

@pehlivanian
Copy link

Is this being worked on? I could take a look for SpectralEmbedding.

@webdrone also mentioned in (#2887 (comment)) adding to MDS, others. I see a potential problem for MDS, if the learner is initiated with dissimilarity="precomputed" we don't have access to an explicit kernel to use out of sample, which seems necessary. I'll see what can be done there.

@dillongardner
Copy link
Contributor

I am actively working on this for spectral embedding. The approach suggested in the Bengio et al paper in #2887 precludes having a affinity='precomputed'

@vedranf
Copy link
vedranf commented Aug 31, 2021

Unfortunately this prevents using SpectralEmbedding within pipelines:

TypeError: All intermediate steps should be transformers and implement fit and transform or be the string 'passthrough' (type <class 'sklearn.manifold._spectral_embedding.SpectralEmbedding'>) doesn't

which is sad because it supports fit_transform. Any workarounds (except for wrapping it in a custom transformer)?

@cmarmo cmarmo added module:manifold Needs Decision - Include Feature Requires decision regarding including feature and removed help wanted labels Mar 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
module:manifold Needs Decision - Include Feature Requires decision regarding including feature New Feature
Projects
None yet
Development

No branches or pull requests

6 participants
0