Giter Club home page Giter Club logo

Comments (8)

lmcinnes avatar lmcinnes commented on April 28, 2024

The computation of eigenvectors of the Laplacian has failed -- now why that happens is a bit of a mystery. Potentially it means that some eigenvalues are very close to each other and hard to extract. This can happen if the whole thing gets distorted by an outlier too badly. I would recommend tweaking the parameter values (increasing n_neighbors incrementally) to see if that remedies the problem. If so then there is something in the data that the code isn't quite handling well in a corner case. Let me know how that goes and we can work from there.

from umap.

asstergi avatar asstergi commented on April 28, 2024

Hi @lmcinnes,

Same issue happens for me as well.
I increased the 'n_neighbors' up to 1000 but the same issue still remains. Do you have any idea on that?

Then, I set 'n_neighbors' to 2000 and got this error message:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\asterioss\AppData\Local\Continuum\anaconda3\lib\site-packages\umap\umap_.py", line 792, in fit_transform
    self.fit(X)
  File "C:\Users\asterioss\AppData\Local\Continuum\anaconda3\lib\site-packages\umap\umap_.py", line 759, in fit
    self._metric, self.metric_kwds)
  File "C:\Users\asterioss\AppData\Local\Continuum\anaconda3\lib\site-packages\scipy\sparse\coo.py", line 184, in __init__
    self._check()
  File "C:\Users\asterioss\AppData\Local\Continuum\anaconda3\lib\site-packages\scipy\sparse\coo.py", line 236, in _check
    raise ValueError('negative column index found')
ValueError: negative column index found

from umap.

lmcinnes avatar lmcinnes commented on April 28, 2024

This is a little mysterious to me. You should definitely not need an n_neighbors value that large, so something is going wrong somewhere along the line. Can you share the data you are using? I think, unfortunately, this will take a bit of digging for me to figure out exactly what is going wrong here, so I can't really promise a quick fix. Thanks for the report though, it is very helpful to know about these edge cases that can cause problems like this (and I know it is frustrating for users).

from umap.

lmcinnes avatar lmcinnes commented on April 28, 2024

As an interim solution you can use init='random' to avoid this issue. I'm not sure exactly what will happen with the data.

from umap.

lmcinnes avatar lmcinnes commented on April 28, 2024

I've just pushed code that will at least work around the issue. The result will be slower performance (because we need to trey spectral initialisation, have it fail, and fall back) but it should work. If @asstergi or @hedgefair have time or opportunity to pull from master and reinstall to verify if this resolves the issue for them I would appreciate it. Thanks again for the feedback.

from umap.

asstergi avatar asstergi commented on April 28, 2024

Regarding the data, I'm using the digits = load_digits() example.
Thanks for your help. When I find some time I'll reinstall and let you know.

from umap.

lmcinnes avatar lmcinnes commented on April 28, 2024

That's odd because I have definitely run successfully on that exact dataset. I'll continue looking into this.

from umap.

sleighsoft avatar sleighsoft commented on April 28, 2024

Did this get resolved? Can the issue be closed?

from umap.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.