palash1992/GEM

LaplacianEigenmap for a large number of connected components

adityat opened this issue · 3 comments

When there are k connected components in the graph, the multiplicity of the 0 eigenvector is k, whereas only the first one is being disregarded right now.
In addition, np.linalg.eigs does not return the eigenvalues/vectors in a sorted fashion, so you might be disregarding the wrong one

The framework assumes the graph is connected. Thus, disregarding the first is enough. And as we are putting k=d, we don't care if it's sorted or not

in many cases you don't know if you're disregarding the first eigenvector or not if you don't know whether it's sorted or not.

Got it! I merged your changes.